[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [RFC PATCH-for-9.1 13/29] hw/i386/pc: Remove non-PCI code from pc_system_firmware_init()
- To: Philippe Mathieu-Daudé <philmd@xxxxxxxxxx>
- From: BALATON Zoltan <balaton@xxxxxxxxxx>
- Date: Thu, 28 Mar 2024 19:50:01 +0100 (CET)
- Cc: qemu-devel@xxxxxxxxxx, Richard Henderson <richard.henderson@xxxxxxxxxx>, Eduardo Habkost <eduardo@xxxxxxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>, xen-devel@xxxxxxxxxxxxxxxxxxxx, Bernhard Beschow <shentey@xxxxxxxxx>, Thomas Huth <thuth@xxxxxxxxxx>, Marcel Apfelbaum <marcel.apfelbaum@xxxxxxxxx>, "Michael S. Tsirkin" <mst@xxxxxxxxxx>, Paolo Bonzini <pbonzini@xxxxxxxxxx>, Igor Mammedov <imammedo@xxxxxxxxxx>, Anthony Perard <anthony.perard@xxxxxxxxxx>, Ani Sinha <anisinha@xxxxxxxxxx>
- Delivery-date: Thu, 28 Mar 2024 18:50:08 +0000
- List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
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é <philmd@xxxxxxxxxx>
---
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++) {
|