From c97294ec1b9e36887e119589d456557d72ab37b5 Mon Sep 17 00:00:00 2001 From: "Gabriel L. Somlo" Date: Wed, 23 Apr 2014 09:42:42 -0400 Subject: SMBIOS: Build aggregate smbios tables and entry point Build an aggregate set of smbios tables and an entry point structure. Insert tables and entry point into fw_cfg respectively under "etc/smbios/smbios-tables" and "etc/smbios/smbios-anchor". Machine types <= 2.0 will for now continue using field-by-field overrides to SeaBIOS defaults, but for machine types 2.1 and up we expect the BIOS to look for and use the aggregate tables generated by this patch. Signed-off-by: Gabriel Somlo [ kraxel: fix 32bit build ] Signed-off-by: Gerd Hoffmann --- hw/i386/pc_q35.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'hw/i386/pc_q35.c') diff --git a/hw/i386/pc_q35.c b/hw/i386/pc_q35.c index 312e1ae2e6..3306f89b9e 100644 --- a/hw/i386/pc_q35.c +++ b/hw/i386/pc_q35.c @@ -51,6 +51,7 @@ static bool has_pci_info; static bool has_acpi_build = true; static bool smbios_defaults = true; +static bool smbios_legacy_mode; /* Make sure that guest addresses aligned at 1Gbyte boundaries get mapped to * host addresses aligned at 1Gbyte boundaries. This way we can use 1GByte * pages in the host. @@ -133,7 +134,7 @@ static void pc_q35_init(QEMUMachineInitArgs *args) if (smbios_defaults) { /* These values are guest ABI, do not change */ smbios_set_defaults("QEMU", "Standard PC (Q35 + ICH9, 2009)", - args->machine->name); + args->machine->name, smbios_legacy_mode); } /* allocate ram and load rom/bios */ @@ -242,6 +243,7 @@ static void pc_q35_init(QEMUMachineInitArgs *args) static void pc_compat_2_0(QEMUMachineInitArgs *args) { + smbios_legacy_mode = true; } static void pc_compat_1_7(QEMUMachineInitArgs *args) -- cgit v1.2.3