diff options
author | Paolo Bonzini | 2020-10-26 15:30:18 +0100 |
---|---|---|
committer | Paolo Bonzini | 2020-12-10 18:15:05 +0100 |
commit | 7d435078afa08eb136bdcdc4f199fd26ddbc353b (patch) | |
tree | 24dd70d2157eec541c35b342a807d96ce4baca90 /hw/i386 | |
parent | hppa: remove bios_name (diff) | |
download | qemu-7d435078afa08eb136bdcdc4f199fd26ddbc353b.tar.gz qemu-7d435078afa08eb136bdcdc4f199fd26ddbc353b.tar.xz qemu-7d435078afa08eb136bdcdc4f199fd26ddbc353b.zip |
i386: remove bios_name
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20201026143028.3034018-6-pbonzini@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'hw/i386')
-rw-r--r-- | hw/i386/microvm.c | 7 | ||||
-rw-r--r-- | hw/i386/pc_sysfw.c | 4 | ||||
-rw-r--r-- | hw/i386/x86.c | 10 |
3 files changed, 9 insertions, 12 deletions
diff --git a/hw/i386/microvm.c b/hw/i386/microvm.c index 5688608613..f111ef87d8 100644 --- a/hw/i386/microvm.c +++ b/hw/i386/microvm.c @@ -158,6 +158,7 @@ static int microvm_ioapics(MicrovmMachineState *mms) static void microvm_devices_init(MicrovmMachineState *mms) { + const char *default_firmware; X86MachineState *x86ms = X86_MACHINE(mms); ISABus *isa_bus; ISADevice *rtc_state; @@ -274,12 +275,10 @@ static void microvm_devices_init(MicrovmMachineState *mms) serial_hds_isa_init(isa_bus, 0, 1); } - if (bios_name == NULL) { - bios_name = x86_machine_is_acpi_enabled(x86ms) + default_firmware = x86_machine_is_acpi_enabled(x86ms) ? MICROVM_BIOS_FILENAME : MICROVM_QBOOT_FILENAME; - } - x86_bios_rom_init(get_system_memory(), true); + x86_bios_rom_init(MACHINE(mms), default_firmware, get_system_memory(), true); } static void microvm_memory_init(MicrovmMachineState *mms) diff --git a/hw/i386/pc_sysfw.c b/hw/i386/pc_sysfw.c index f8bd3a8b85..92e90ff013 100644 --- a/hw/i386/pc_sysfw.c +++ b/hw/i386/pc_sysfw.c @@ -213,7 +213,7 @@ void pc_system_firmware_init(PCMachineState *pcms, BlockBackend *pflash_blk[ARRAY_SIZE(pcms->flash)]; if (!pcmc->pci_enabled) { - x86_bios_rom_init(rom_memory, true); + x86_bios_rom_init(MACHINE(pcms), "bios.bin", rom_memory, true); return; } @@ -234,7 +234,7 @@ void pc_system_firmware_init(PCMachineState *pcms, if (!pflash_blk[0]) { /* Machine property pflash0 not set, use ROM mode */ - x86_bios_rom_init(rom_memory, false); + x86_bios_rom_init(MACHINE(pcms), "bios.bin", rom_memory, false); } else { if (kvm_enabled() && !kvm_readonly_mem_enabled()) { /* diff --git a/hw/i386/x86.c b/hw/i386/x86.c index 7c1f64a1fc..f86f6dbbec 100644 --- a/hw/i386/x86.c +++ b/hw/i386/x86.c @@ -55,8 +55,6 @@ #include CONFIG_DEVICES #include "kvm_i386.h" -#define BIOS_FILENAME "bios.bin" - /* Physical Address of PVH entry point read from kernel ELF NOTE */ static size_t pvh_start_addr; @@ -1080,17 +1078,17 @@ void x86_load_linux(X86MachineState *x86ms, nb_option_roms++; } -void x86_bios_rom_init(MemoryRegion *rom_memory, bool isapc_ram_fw) +void x86_bios_rom_init(MachineState *ms, const char *default_firmware, + MemoryRegion *rom_memory, bool isapc_ram_fw) { + const char *bios_name; char *filename; MemoryRegion *bios, *isa_bios; int bios_size, isa_bios_size; int ret; /* BIOS load */ - if (bios_name == NULL) { - bios_name = BIOS_FILENAME; - } + bios_name = ms->firmware ?: default_firmware; filename = qemu_find_file(QEMU_FILE_TYPE_BIOS, bios_name); if (filename) { bios_size = get_image_size(filename); |