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>
This commit is contained in:
parent
6c0d7ee895
commit
1d108d9734
12
hw/pc.c
12
hw/pc.c
@ -967,6 +967,12 @@ static void pc_init1(ram_addr_t ram_size,
|
|||||||
if (oprom_area_size < 0x8000)
|
if (oprom_area_size < 0x8000)
|
||||||
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) {
|
if (linux_boot) {
|
||||||
load_linux(0xc0000 + oprom_area_size,
|
load_linux(0xc0000 + oprom_area_size,
|
||||||
kernel_filename, initrd_filename, kernel_cmdline, below_4g_mem_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);
|
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);
|
cpu_irq = qemu_allocate_irqs(pic_irq_request, NULL, 1);
|
||||||
i8259 = i8259_init(cpu_irq[0]);
|
i8259 = i8259_init(cpu_irq[0]);
|
||||||
ferr_irq = i8259[13];
|
ferr_irq = i8259[13];
|
||||||
|
Loading…
Reference in New Issue
Block a user