qemu/hw/acpi
Ard Biesheuvel cb51ac2ffe hw/arm/virt: generate 64-bit addressable ACPI objects
Our current ACPI table generation code limits the placement of ACPI
tables to 32-bit addressable memory, in order to be able to emit the
root pointer (RSDP) and root table (RSDT) using table types from the
ACPI 1.0 days.

Since ARM was not supported by ACPI before version 5.0, it makes sense
to lift this restriction. This is not crucial for mach-virt, which is
guaranteed to have some memory available below the 4 GB mark, but it
is a nice to have for QEMU machines that do not have any 32-bit
addressable memory, which is not uncommon for real world 64-bit ARM
systems.

Since we already emit a version of the RSDP root pointer that has a
secondary 64-bit wide address field for the 64-bit root table (XSDT),
all we need to do is replace the RSDT generation with the generation
of an XSDT table, and use a different slot in the FADT table to refer
to the DSDT.

Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Reviewed-by: Andrew Jones <drjones@redhat.com>
Acked-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Acked-by: Peter Maydell <peter.maydell@linaro.org>
2017-05-10 22:04:23 +03:00
..
acpi_interface.c acpi: extend ACPI interface to provide send_event hook 2016-06-07 15:36:54 +03:00
acpi-stub.c acpi: filter based on CONFIG_ACPI_X86 rather than TARGET 2017-01-16 17:52:35 +01:00
aml-build.c hw/arm/virt: generate 64-bit addressable ACPI objects 2017-05-10 22:04:23 +03:00
bios-linker-loader.c linker-loader: Add new 'write pointer' command 2017-03-02 07:14:26 +02:00
core.c opts-visitor: Favor new visit_free() function 2016-07-06 10:52:04 +02:00
cpu_hotplug.c machine: Make possible_cpu_arch_ids() return const pointer 2017-01-23 21:25:37 -02:00
cpu.c change CPUArchId.cpu type to Object* 2017-02-22 11:28:28 +11:00
ich9.c memhp: don't generate memory hotplug AML if it's not enabled/supported 2017-01-10 07:03:24 +02:00
ipmi-stub.c stubs: move acpi stubs to hw/acpi 2017-01-16 17:52:35 +01:00
ipmi.c acpi/ipmi: Initialize the fwinfo before fetching it 2016-11-01 19:21:09 +02:00
Makefile.objs ACPI: Add Virtual Machine Generation ID support 2017-03-02 07:14:27 +02:00
memory_hotplug.c memhp: move DIMM devices into dedicated scope with related common methods 2017-01-10 07:03:24 +02:00
nvdimm.c nvdimm acpi: introduce NVDIMM_DSM_MEMORY_SIZE 2016-11-15 17:20:37 +02:00
pcihp.c pc: pcihp: avoid adding ACPI_PCIHP_PROP_BSEL twice 2017-03-01 11:51:05 +04:00
piix4.c bus: do not unref hotplug handler 2017-03-01 11:51:28 +04:00
tco.c tco: do not generate an NMI 2017-04-05 17:23:52 +02:00
trace-events trace-events: fix first line comment in trace-events 2016-08-12 10:36:01 +01:00
vmgenid.c hw/acpi/vmgenid: prevent more than one vmgenid device 2017-03-22 18:29:27 +02:00