Go to file
Glauber Costa 406c8df3a9 Make nic option rom loading less painful.
The code how it is today, is totally painful to read and keep.
To begin with, the code is duplicated with the option rom loading
code that linux_boot and vga are already using.

This patch introduces a "bootable" state in NICInfo structure,
that we can use to keep track of whether or not a given nic should
be bootable, avoiding the introduction of yet another global state.

With that in hands, we move the code in vl.c to hw/pc.c, and use
the already existing infra structure to load those option roms.

Error checking code suggested by Mark McLoughlin

Signed-off-by: Glauber Costa <glommer@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2009-06-22 10:10:50 -05:00
audio fix qemu_alloc/qemu_free for audio subsystem 2009-06-19 02:46:14 +04:00
block Fix opening of read only raw images 2009-06-17 18:27:44 +03:00
bsd-user Avoid collision with system NGROUPS definition 2009-06-13 15:10:28 +00:00
darwin-user Replace gcc variadic macro extension with C99 version 2009-05-13 17:53:17 +00:00
fpu Fix OpenSolaris gcc4 warnings: iovec type mismatches, missing 'static' 2009-04-13 16:31:01 +00:00
gdb-xml Work around QEMU GDB stub suboptimality 2009-03-07 22:00:56 +00:00
hw Make nic option rom loading less painful. 2009-06-22 10:10:50 -05:00
linux-user linux-user: strace now handles guest stringscorrectly [v2] 2009-06-19 02:51:47 +04:00
pc-bios microblaze: Fix loading of petalogix s3adsp1800 dtb. 2009-06-03 21:54:31 +02:00
slirp Fix mingw32 build warnings 2009-06-13 08:44:31 +00:00
target-alpha qemu: introduce qemu_init_vcpu (Marcelo Tosatti) 2009-04-24 18:03:41 +00:00
target-arm Convert machine registration to use module init functions 2009-05-21 08:47:55 -05:00
target-cris CRIS: Prettify sizes for the internal disasm. 2009-06-12 15:55:36 +02:00
target-i386 QEMU KVM: i386: Fix the cpu reset state 2009-06-16 15:36:47 -05:00
target-m68k Convert machine registration to use module init functions 2009-05-21 08:47:55 -05:00
target-microblaze microblaze: Make writes to MMU_ZPR flush the TLB. 2009-05-27 01:19:58 +02:00
target-mips Fix a warning: uint_fast8_t is not 8 bits on OpenBSD/Sparc64 2009-06-13 15:09:38 +00:00
target-ppc Apply TCGV_UNUSED on variables that GCC mistakenly thinks can be used 2009-06-20 05:51:47 +04:00
target-sh4 Convert machine registration to use module init functions 2009-05-21 08:47:55 -05:00
target-sparc Use correct type for SPARC cpu_cc_op 2009-06-06 02:54:03 +01:00
tcg Include assert.h from qemu-common.h 2009-05-13 20:54:26 +01:00
tests Replace gcc variadic macro extension with C99 version 2009-05-13 17:53:17 +00:00
.gitignore Use hxtool for qemu-img command list 2009-06-07 09:59:47 +03:00
a.out.h Remove unnecessary trailing newlines 2008-12-13 09:32:43 +00:00
acl.c Remove tabs introduced from VNC ACL series 2009-03-06 20:27:40 +00:00
acl.h Support ACLs for controlling VNC access ("Daniel P. Berrange") 2009-03-06 20:27:37 +00:00
aes.c Include assert.h from qemu-common.h 2009-05-13 20:54:26 +01:00
aes.h AES crypto support 2004-08-01 21:54:53 +00:00
aio.c fix qemu_aio_flush 2009-06-15 13:52:27 +02:00
alpha-dis.c Update FSF address in GPL/LGPL boilerplate 2009-01-04 22:05:52 +00:00
alpha.ld alpha support 2003-04-29 20:53:42 +00:00
arm-dis.c clean build: Fix arm build warnings 2009-03-07 21:48:00 +00:00
arm-semi.c Fix more FSF addresses 2009-01-05 18:11:53 +00:00
arm.ld Link ARM prologue closer to code segment to avoid a build failure 2008-07-10 17:21:31 +00:00
balloon.h Add missing file from previous commit. 2008-12-04 20:35:16 +00:00
block_int.h block: add bdrv_probe_device method 2009-06-15 14:04:22 +02:00
block.c Prevent CD-ROM media eject while device is locked 2009-06-16 15:52:37 -05:00
block.h Prevent CD-ROM media eject while device is locked 2009-06-16 15:52:37 -05:00
bswap.h Sparse fixes: truncation by cast 2009-03-07 15:46:23 +00:00
bt-host.c Fix OpenSolaris gcc4 warnings: iovec type mismatches, missing 'static' 2009-04-13 16:31:01 +00:00
bt-host.h Clean build: Add bt-host.h 2009-03-10 21:43:35 +00:00
bt-vhci.c Sparse fixes: NULL use, header order, ANSI prototypes, static 2009-03-07 15:32:56 +00:00
buffered_file.c introduce set_rate_limit function for QEMUFile 2009-05-22 10:50:30 -05:00
buffered_file.h Introduce a buffered file wrapper for QEMUFile 2008-10-13 03:10:22 +00:00
cache-utils.c Properly initialize len argument of sysctl and include stdio.h (perror) 2009-02-04 20:39:09 +00:00
cache-utils.h Remove all traces of __powerpc__ 2009-01-14 18:39:49 +00:00
Changelog Update Changelog to reflect 0.10.2 release 2009-04-07 02:19:41 +00:00
cmd.c Fix a few Sparse warnings 2009-04-07 17:57:09 +00:00
cmd.h Fix a few Sparse warnings 2009-04-07 17:57:09 +00:00
cocoa.m Update cocoa.m to match new DisplayState code (Samuel Benson) 2009-03-04 19:25:22 +00:00
CODING_STYLE Remove potentially offensive humor. 2009-04-07 02:10:16 +00:00
configure Fix help message for new configure option --enable-debug. 2009-06-16 15:36:47 -05:00
console.c Delete some unused macros detected with -Wp,-Wunused-macros use 2009-03-16 16:33:01 +00:00
console.h Eliminate --disable-gfx-check and make VNC default when SDL not available 2009-05-21 08:47:48 -05:00
COPYING COPYING: update from FSF 2008-10-12 17:54:42 +00:00
COPYING.LIB Update FSF address in GPL/LGPL boilerplate 2009-01-04 22:05:52 +00:00
cpu-all.h provide cpu_index to env mapping 2009-06-16 15:36:47 -05:00
cpu-common.h Remove io_index argument from cpu_register_io_memory() 2009-06-16 15:18:37 -05:00
cpu-defs.h fix gdbstub support for multiple threads in usermode, v3 2009-06-04 10:04:49 +01:00
cpu-exec.c microblaze: linux-user support. 2009-05-26 21:10:28 +02:00
cris-dis.c toplevel: remove error handling from qemu_malloc() callers (Avi Kivity) 2009-02-05 22:06:18 +00:00
curses_keys.h Sparse fixes: remove duplicate entry 2009-03-07 15:53:15 +00:00
curses.c DisplayAllocator interface (Stefano Stabellini) 2009-03-13 15:02:13 +00:00
cutils.c Include assert.h from qemu-common.h 2009-05-13 20:54:26 +01:00
d3des.c Ansify to please sparse 2008-10-27 19:49:12 +00:00
d3des.h Actually add d3des implementation files. 2007-08-25 02:09:50 +00:00
def-helper.h Remove unnecessary trailing newlines 2008-12-13 09:32:43 +00:00
device_tree.c Remove unused variable 2009-05-24 21:24:33 +01:00
device_tree.h Wean device tree code off phys_ram_base. 2009-04-10 16:23:59 +00:00
dis-asm.h microblaze: Add disassembler. 2009-05-26 21:10:28 +02:00
disas.c microblaze: Add disassembler. 2009-05-26 21:10:28 +02:00
disas.h monitor: Rework API (Jan Kiszka) 2009-03-05 23:01:23 +00:00
dma-helpers.c fully split aio_pool from BlockDriver 2009-05-27 09:46:03 -05:00
dma.h fully split aio_pool from BlockDriver 2009-05-27 09:46:03 -05:00
dyngen-exec.h Use stdint.h for integral data types and definitions 2009-04-08 22:56:19 +00:00
elf_ops.h Fix elf loader range checking 2009-06-05 15:16:41 +01:00
elf.h linux-user: implemented ELF coredump support for ARM target 2009-06-16 16:56:28 +03:00
exec-all.h kqemu: merge CONFIG_KQEMU and USE_KQEMU 2009-04-19 10:18:01 +00:00
exec.c exec.c: remove unnecessary #if NB_MMU_MODES 2009-06-16 15:52:38 -05:00
feature_to_c.sh Fix undeclared symbol warnings from sparse 2008-10-26 13:43:07 +00:00
gdbstub.c fix gdbstub support for multiple threads in usermode, v3 2009-06-04 10:04:49 +01:00
gdbstub.h Guest debugging support for KVM (Jan Kiszka) 2009-03-12 20:12:48 +00:00
gen-icount.h Remove unnecessary trailing newlines 2008-12-13 09:32:43 +00:00
host-utils.c Code used by the linux-user targets should not use vl.h. 2007-11-05 13:01:41 +00:00
host-utils.h Include <strings.h> for ffs(). 2008-11-12 17:18:41 +00:00
hostregs_helper.h Prune unused AREGs 2009-03-08 12:41:36 +00:00
hpet.h Add a local copy of hpet.h. 2007-09-16 20:03:23 +00:00
hppa-dis.c HPPA (PA-RISC) host support 2008-04-12 20:14:54 +00:00
hppa.ld HPPA (PA-RISC) host support 2008-04-12 20:14:54 +00:00
hxtool Fix hxtool eating backslash sequences for sh != bash 2009-03-29 10:50:43 +00:00
i386-dis.c Update i386-dis.c from commits before GPLv3 switch 2009-03-07 16:57:53 +00:00
i386.ld Add TLS sections. 2008-05-31 16:21:33 +00:00
ia64.ld ia64 host support (David Mosberger) 2005-04-07 22:20:31 +00:00
keymaps.c Use relative path for bios 2009-05-30 01:59:37 +01:00
keymaps.h Add missing file from previous commit 2009-03-06 22:47:54 +00:00
kqemu.c Remove io_index argument from cpu_register_io_memory() 2009-06-16 15:18:37 -05:00
kqemu.h kqemu API change - allow use of kqemu with 32 bit QEMU on a 64 bit host 2008-05-30 20:48:25 +00:00
kvm-all.c kvm: Fix IRQ injection into full queue 2009-06-16 15:36:47 -05:00
kvm.h kvm: x86: Save/restore KVM-specific CPU states 2009-05-22 10:50:34 -05:00
libfdt_env.h Implement device tree support needed for Bamboo emulation 2008-12-16 10:43:48 +00:00
LICENSE Add missing newline at the end of file 2008-12-14 08:50:18 +00:00
loader.c Fix prototype of function zfree. 2009-06-13 19:19:25 -05:00
m68k-dis.c Spelling and grammar fixes 2008-11-30 16:25:37 +00:00
m68k-semi.c Fix more FSF addresses 2009-01-05 18:11:53 +00:00
m68k.ld m68k host port (Richard Zidlicky) 2003-08-10 22:14:22 +00:00
MAINTAINERS Update maintainer list. 2009-05-28 14:00:49 +02:00
Makefile Disable _FORTIFY_SOURCE to fix Ubuntu build with -Werror 2009-06-22 10:10:50 -05:00
Makefile.hw Add dummy command to submakefiles 2009-05-25 18:56:13 +01:00
Makefile.target Disable _FORTIFY_SOURCE to fix Ubuntu build with -Werror 2009-06-22 10:10:50 -05:00
microblaze-dis.c microblaze-dis.c does not need to be executable 2009-06-09 18:27:02 +00:00
migration-exec.c Allow monitor interaction when using migrate -exec 2009-05-27 09:46:07 -05:00
migration-tcp.c Cast pointer arguments of get/setsockopt, send to void * to keep GCC 2009-05-21 05:30:51 +04:00
migration.c set migration max downtime 2009-06-16 15:52:32 -05:00
migration.h set migration max downtime 2009-06-16 15:52:32 -05:00
mips-dis.c Update FSF address in GPL/LGPL boilerplate 2009-01-04 22:05:52 +00:00
mips.ld Linker scripts for MIPS hosts. 2007-05-05 19:24:38 +00:00
mipsel.ld Linker scripts for MIPS hosts. 2007-05-05 19:24:38 +00:00
module.c Fix module initialization when more than 1 class is in use 2009-05-14 18:06:49 -05:00
module.h Convert machine registration to use module init functions 2009-05-21 08:47:55 -05:00
monitor.c monitor: Introduce get_command_name() 2009-06-10 19:46:49 +03:00
monitor.h monitor: Introduce MONITOR_USE_READLINE flag (Jan Kiszka) 2009-03-05 23:01:51 +00:00
nbd.c Cast pointer arguments of get/setsockopt, send to void * to keep GCC 2009-05-21 05:30:51 +04:00
nbd.h Update FSF address in GPL/LGPL boilerplate 2009-01-04 22:05:52 +00:00
net-checksum.c Update FSF address in GPL/LGPL boilerplate 2009-01-04 22:05:52 +00:00
net.c Make nic option rom loading less painful. 2009-06-22 10:10:50 -05:00
net.h Make nic option rom loading less painful. 2009-06-22 10:10:50 -05:00
osdep.c Add tool_osdep.c 2009-05-13 22:21:47 +01:00
osdep.h snapshot subcommand for qemu-img (Kevin Wolf) 2009-01-07 17:40:15 +00:00
pci-ids.txt List virtio console device in pci-ids.txt 2009-01-24 16:37:31 +00:00
posix-aio-compat.c fix asynchronous ioctls 2009-05-08 15:51:19 -05:00
posix-aio-compat.h push down vector linearization to posix-aio-compat.c (Christoph Hellwig) 2009-04-07 18:43:24 +00:00
ppc64.ld Correct version of Heikki Lindholms ppc64.ld script 2008-08-20 22:39:24 +00:00
ppc-dis.c Update ppc-dis.c from binutils from 4th July, 2007, just before GPLv3 switch 2009-02-09 19:59:57 +00:00
ppc.ld Update ppc.ld to work with newer binutils. 2007-04-28 19:00:30 +00:00
qemu_socket.h Fix windows build and clean up use of <windows.h> 2009-03-08 16:26:59 +00:00
qemu-aio.h fix qemu_aio_flush 2009-06-15 13:52:27 +02:00
qemu-binfmt-conf.sh Code provision for n32/n64 mips userland emulation. Not functional yet. 2007-09-30 01:58:33 +00:00
qemu-char.c mux-term: Fix timestamp association 2009-06-16 15:18:37 -05:00
qemu-char.h monitor: Improve mux'ed console experience (Jan Kiszka) 2009-03-05 23:01:47 +00:00
qemu-common.h SSP bus framework 2009-05-14 22:35:09 +01:00
qemu-doc.texi doc: Update information on supported network adapters. 2009-06-06 19:22:44 +03:00
qemu-img-cmds.hx Use hxtool for qemu-img command list 2009-06-07 09:59:47 +03:00
qemu-img.c Use hxtool for qemu-img command list 2009-06-07 09:59:47 +03:00
qemu-img.texi Use hxtool for qemu-img command list 2009-06-07 09:59:47 +03:00
qemu-io.c Workaround compiler warnings at -O1 2009-05-09 23:22:35 +01:00
qemu-lock.h Remove all traces of __powerpc__ 2009-01-14 18:39:49 +00:00
qemu-log.h Define macros that will become the new logging API (Eduardo Habkost) 2009-01-15 21:52:11 +00:00
qemu-malloc.c Format per CODING_STYLE 2009-05-19 22:29:20 +04:00
qemu-monitor.hx set migration max downtime 2009-06-16 15:52:32 -05:00
qemu-nbd.c Fix warning in qemu-nbd.c 2009-06-15 12:51:37 -05:00
qemu-nbd.texi Fix formatting of documentation (Stefan Weil) 2008-09-22 20:41:57 +00:00
qemu-option.c qemu-img: Print available options with -o ? 2009-06-06 18:38:57 +03:00
qemu-option.h qemu-img: Print available options with -o ? 2009-06-06 18:38:57 +03:00
qemu-options.hx Add -no-virtio-balloon command-line option 2009-06-13 19:17:28 -05:00
qemu-sockets.c Fix in file qemu-sockets.c 2009-05-08 16:11:49 -05:00
qemu-tech.texi Update docs on dynamic condition code calculation 2009-05-10 18:23:46 +00:00
qemu-thread.c qemu: mutex/thread/cond wrappers and configure tweaks (Marcelo Tosatti) 2009-04-24 18:03:15 +00:00
qemu-thread.h qemu: mutex/thread/cond wrappers and configure tweaks (Marcelo Tosatti) 2009-04-24 18:03:15 +00:00
qemu-timer.h Break up vl.h. 2007-11-17 17:14:51 +00:00
qemu-tool.c monitor: Rework API (Jan Kiszka) 2009-03-05 23:01:23 +00:00
qemu.sasl Add SASL authentication support ("Daniel P. Berrange") 2009-03-06 20:27:28 +00:00
readline.c readline: Remove unneeded qemu_mallocz() check 2009-06-16 15:18:37 -05:00
readline.h monitor: Improve mux'ed console experience (Jan Kiszka) 2009-03-05 23:01:47 +00:00
README Add missing newline at the end of file 2008-12-14 08:50:18 +00:00
rules.mak Fix build on Solaris and WIN32 2009-05-14 17:03:49 -05:00
s390-dis.c Remove unnecessary trailing newlines 2008-12-13 09:32:43 +00:00
s390.ld Remove unnecessary trailing newlines 2008-12-13 09:32:43 +00:00
savevm.c exec-migration: handle EINTR in popen_get_buffer() 2009-06-13 19:19:25 -05:00
sdl_keysym.h Refactor keymap code to avoid duplication ("Daniel P. Berrange") 2009-03-06 20:27:10 +00:00
sdl.c Only shutdown video subsytem in sdl_cleanup 2009-05-17 18:26:52 +04:00
sh4-dis.c Update FSF address in GPL/LGPL boilerplate 2009-01-04 22:05:52 +00:00
softmmu_defs.h Fix some warnings that would be generated by gcc -Wredundant-decls 2008-08-30 09:51:20 +00:00
softmmu_exec.h Allow 5 mmu indexes. 2009-04-07 21:47:27 +00:00
softmmu_header.h Update FSF address in GPL/LGPL boilerplate 2009-01-04 22:05:52 +00:00
softmmu_template.h kqemu: merge CONFIG_KQEMU and USE_KQEMU 2009-04-19 10:18:01 +00:00
softmmu-semi.h Suppress gcc 4.x -Wpointer-sign (included in -Wall) warnings 2008-09-20 08:07:15 +00:00
sparc64.ld Map code buffers below 2G on Sparc64 2008-07-26 15:05:57 +00:00
sparc-dis.c Make OpenBSD sparc-softmmu compile warning free 2009-01-14 18:08:08 +00:00
sparc.ld More detabification 2007-10-06 11:28:21 +00:00
sys-queue.h Remove CRs 2008-12-14 08:53:17 +00:00
sysemu.h Add -no-virtio-balloon command-line option 2009-06-13 19:17:28 -05:00
tap-win32.c net: add return value to packet receive handler 2009-06-09 11:38:49 +01:00
targphys.h kvm: Mark full address range dirty on live migration start 2009-05-28 02:14:56 -05:00
texi2pod.pl Update texi2pod.pl. 2008-02-04 14:47:49 +00:00
thunk.c Update FSF address in GPL/LGPL boilerplate 2009-01-04 22:05:52 +00:00
thunk.h Update FSF address in GPL/LGPL boilerplate 2009-01-04 22:05:52 +00:00
TODO Update 2008-12-04 11:29:42 +00:00
tool-osdep.c Add tool_osdep.c 2009-05-13 22:21:47 +01:00
translate-all.c global s/loglevel & X/qemu_loglevel_mask(X)/ (Eduardo Habkost) 2009-01-15 22:36:53 +00:00
uboot_image.h Update FSF address in GPL/LGPL boilerplate 2009-01-04 22:05:52 +00:00
usb-bsd.c Support for DragonFly BSD (Hasso Tepper) 2009-03-07 20:06:23 +00:00
usb-linux.c USB serial device support 2009-05-22 10:50:35 -05:00
usb-stub.c monitor: Rework API (Jan Kiszka) 2009-03-05 23:01:23 +00:00
VERSION Update the version information to 0.10.50 to signify development branch 2009-04-08 13:14:12 +00:00
vgafont.h Some little fixes on QEMU 2008-09-06 16:31:30 +00:00
vl.c Make nic option rom loading less painful. 2009-06-22 10:10:50 -05:00
vnc_keysym.h Refactor keymap code to avoid duplication ("Daniel P. Berrange") 2009-03-06 20:27:10 +00:00
vnc-auth-sasl.c Remove tabs introduced from VNC ACL series 2009-03-06 20:27:40 +00:00
vnc-auth-sasl.h Support ACLs for controlling VNC access ("Daniel P. Berrange") 2009-03-06 20:27:37 +00:00
vnc-auth-vencrypt.c Add more missing files 2009-03-06 23:44:29 +00:00
vnc-auth-vencrypt.h Add more missing files 2009-03-06 23:44:29 +00:00
vnc-tls.c Add more missing files 2009-03-06 23:44:29 +00:00
vnc-tls.h Add more missing files 2009-03-06 23:44:29 +00:00
vnc.c vnc: improve numpad support for qemu console. 2009-06-16 15:18:39 -05:00
vnc.h vnc: throttle screen updates. (Gerd Hoffmann) 2009-03-20 15:59:24 +00:00
vnchextile.h vnc: cleanup surface handling, fix screen corruption bug. (Gerd Hoffmann) 2009-03-20 15:59:14 +00:00
x86_64.ld update 2005-01-06 20:50:00 +00:00
x_keymap.c Fix SDL on evdev hosts (Anthony Liguori) 2009-03-03 17:37:21 +00:00
x_keymap.h Fix SDL on evdev hosts (Anthony Liguori) 2009-03-03 17:37:21 +00:00

Read the documentation in qemu-doc.html.

Fabrice Bellard.