On Thu, 28 Mar 2024, Philippe Mathieu-Daudé wrote:
x86_bios_rom_init() is the single non-PCI-machine call
from pc_system_firmware_init(). Extract it to the caller.
Signed-off-by: Philippe Mathieu-Daudé <phi...@linaro.org>
---
hw/i386/pc.c | 6 +++++-
hw/i386/pc_sysfw.c | 5 +----
2 files changed, 6 insertions(+), 5 deletions(-)
diff --git a/hw/i386/pc.c b/hw/i386/pc.c
index f184808e3e..5b96daa414 100644
--- a/hw/i386/pc.c
+++ b/hw/i386/pc.c
@@ -956,7 +956,11 @@ void pc_memory_init(PCMachineState *pcms,
}
/* Initialize PC system firmware */
- pc_system_firmware_init(pcms, rom_memory);
+ if (pci_enabled) {
+ pc_system_firmware_init(pcms, rom_memory);
+ } else {
+ x86_bios_rom_init(machine, "bios.bin", rom_memory, true);
+ }
option_rom_mr = g_malloc(sizeof(*option_rom_mr));
memory_region_init_ram(option_rom_mr, NULL, "pc.rom", PC_ROM_SIZE,
diff --git a/hw/i386/pc_sysfw.c b/hw/i386/pc_sysfw.c
index 862a082b0a..541dcaef71 100644
--- a/hw/i386/pc_sysfw.c
+++ b/hw/i386/pc_sysfw.c
@@ -202,10 +202,7 @@ void pc_system_firmware_init(PCMachineState *pcms,
Maybe also rename to pc_pci_firmware_init() to make it clear this is only
for PCI PC machine now?
Regards,
BALATON Zoltan
int i;
BlockBackend *pflash_blk[ARRAY_SIZE(pcms->flash)];
- if (!pc_machine_is_pci_enabled(pcms)) {
- x86_bios_rom_init(MACHINE(pcms), "bios.bin", rom_memory, true);
- return;
- }
+ assert(pc_machine_is_pci_enabled(pcms));
/* Map legacy -drive if=pflash to machine properties */
for (i = 0; i < ARRAY_SIZE(pcms->flash); i++) {