diff options
author | Alexander Graf <agraf@suse.de> | 2009-06-29 15:37:37 +0200 |
---|---|---|
committer | Anthony Liguori <aliguori@us.ibm.com> | 2009-06-29 13:52:12 -0500 |
commit | 1d108d9734f0734e2c6638c873fcd54ff8aa3ddf (patch) | |
tree | b7501b3254a2f7333fd2c9836c2540a441c79586 | |
parent | 6c0d7ee8951a330c0885b0ebcd4c9596661900a9 (diff) |
Change bochs bios init order
For multiboot support, we need bochs_bios_init to happen before
load_linux, so we get the fw_cfg device.
Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
-rw-r--r-- | hw/pc.c | 12 |
1 files changed, 6 insertions, 6 deletions
@@ -967,6 +967,12 @@ static void pc_init1(ram_addr_t ram_size, if (oprom_area_size < 0x8000) oprom_area_size = 0x8000; + /* map all the bios at the top of memory */ + cpu_register_physical_memory((uint32_t)(-bios_size), + bios_size, bios_offset | IO_MEM_ROM); + + bochs_bios_init(); + if (linux_boot) { load_linux(0xc0000 + oprom_area_size, kernel_filename, initrd_filename, kernel_cmdline, below_4g_mem_size); @@ -993,12 +999,6 @@ static void pc_init1(ram_addr_t ram_size, 0xe0000); } - /* map all the bios at the top of memory */ - cpu_register_physical_memory((uint32_t)(-bios_size), - bios_size, bios_offset | IO_MEM_ROM); - - bochs_bios_init(); - cpu_irq = qemu_allocate_irqs(pic_irq_request, NULL, 1); i8259 = i8259_init(cpu_irq[0]); ferr_irq = i8259[13]; |