@@ -86,7 +86,6 @@ typedef struct PCMachineClass {
int default_cpu_version;
/* SMBIOS compat: */
- bool smbios_defaults;
bool smbios_legacy_mode;
SmbiosEntryPointType default_smbios_ep_type;
@@ -49,6 +49,11 @@ const char *fw_cfg_arch_key_name(uint16_t key)
}
#ifdef CONFIG_SMBIOS
+static bool smbios_defaults(PCMachineState *pcms)
+{
+ return pc_machine_is_pci_enabled(pcms);
+}
+
void fw_cfg_build_smbios(PCMachineState *pcms, FWCfgState *fw_cfg,
SmbiosEntryPointType ep_type)
{
@@ -61,7 +66,7 @@ void fw_cfg_build_smbios(PCMachineState *pcms, FWCfgState *fw_cfg,
MachineClass *mc = MACHINE_GET_CLASS(pcms);
X86CPU *cpu = X86_CPU(ms->possible_cpus->cpus[0].cpu);
- if (pcmc->smbios_defaults) {
+ if (smbios_defaults(pcms)) {
/* These values are guest ABI, do not change */
smbios_set_defaults("QEMU", mc->desc, mc->name);
}
@@ -1754,7 +1754,6 @@ static void pc_machine_class_init(ObjectClass *oc, void *data)
PCMachineClass *pcmc = PC_MACHINE_CLASS(oc);
HotplugHandlerClass *hc = HOTPLUG_HANDLER_CLASS(oc);
- pcmc->smbios_defaults = true;
pcmc->enforce_amd_1tb_hole = true;
pcmc->pvh_enabled = true;
pcmc->kvmclock_create_always = true;
@@ -828,7 +828,6 @@ static void isapc_machine_options(MachineClass *m)
m->max_cpus = 1;
m->option_rom_has_mr = true;
m->rom_file_has_mr = false;
- pcmc->smbios_defaults = false;
pcmc->smbios_legacy_mode = true;
m->default_nic = "ne2k_isa";
m->default_cpu_type = X86_CPU_TYPE_NAME("486");
All PCI-based machines have the smbios_defaults field set to %true. Simplify by using an inlined helper checking whether the machine is PCI-based or not. Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> --- include/hw/i386/pc.h | 1 - hw/i386/fw_cfg.c | 7 ++++++- hw/i386/pc.c | 1 - hw/i386/pc_piix.c | 1 - 4 files changed, 6 insertions(+), 4 deletions(-)