QEMU now loads its own copy of DSDT, so let's not build in PIIX. This leaves building in the DSDT an option, default to off. If no one complains for a while, we'll be able to remove this altogether.
Signed-off-by: Michael S. Tsirkin mst@redhat.com ---
Changes from v1: - default the new option to y to reduce disruption to existing users
src/Kconfig | 6 ++++++ src/acpi.c | 7 ++++++- 2 files changed, 12 insertions(+), 1 deletion(-)
diff --git a/src/Kconfig b/src/Kconfig index 3141069..655ab1c 100644 --- a/src/Kconfig +++ b/src/Kconfig @@ -387,6 +387,12 @@ menu "BIOS Tables" default y help Support generation of ACPI tables. + config ACPI_DSDT + bool "Include default ACPI DSDT" + default y + depends on ACPI + help + Include default DSDT ACPI table in BIOS. endmenu
source vgasrc/Kconfig diff --git a/src/acpi.c b/src/acpi.c index 119d1c1..69dd3aa 100644 --- a/src/acpi.c +++ b/src/acpi.c @@ -202,7 +202,11 @@ struct srat_memory_affinity u32 reserved3[2]; } PACKED;
+#ifdef CONFIG_ACPI_DSDT #include "acpi-dsdt.hex" +#else +static u8 AmlCode[1]; +#endif
static void build_header(struct acpi_table_header *h, u32 sig, int len, u8 rev) @@ -826,7 +830,8 @@ acpi_setup(void) break; } } - if (fadt && !fadt->dsdt) { + + if (fadt && !fadt->dsdt && CONFIG_ACPI_DSDT) { /* default DSDT */ void *dsdt = malloc_high(sizeof(AmlCode)); if (!dsdt) {