qemu-irix/include/hw
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 hw/arm/virt: generate 64-bit addressable ACPI objects 2017-05-10 22:04:23 +03:00
adc
arm aspeed: add a FTGMAC100 nic 2017-04-25 19:17:25 +08:00
audio
block hw/block: Introduce share-rw qdev property 2017-02-28 20:40:36 +01:00
char
core
cpu
cris
display
dma
gpio bcm2835_gpio: add bcm2835 gpio controller 2017-02-28 17:10:00 +00:00
i2c
i386 hw/i386: Build-time assertion on pc/q35 reset register being identical. 2017-05-03 12:29:40 +02:00
ide ide: core: add cleanup function 2017-03-15 20:50:14 -04:00
input
intc hw/intc/arm_gicv3_kvm: Add ICC_SRE_EL1 register to vmstate 2017-02-28 17:10:00 +00:00
ipack
ipmi ipmi: introduce an ipmi_bmc_gen_event() API 2017-04-26 12:41:55 +10:00
isa
kvm
lm32
m68k
mem
mips
misc target-arm: Implement BCM2835 hardware RNG 2017-02-28 12:08:13 +00:00
net net/ftgmac100: add a 'aspeed' property 2017-04-25 19:17:25 +08:00
nvram
pci pci: Reduce scope of error injection 2017-05-08 20:32:14 +02:00
pci-host pseries: Don't expose PCIe extended config space on older machine types 2017-03-14 11:54:17 +11:00
ppc ppc/pnv: generate an OEM SEL event on shutdown 2017-04-26 12:41:56 +10:00
s390x Basic support for using channel-attached 3270 'green-screen' 2017-05-05 16:56:38 +01:00
scsi
sd hw/sd: add card-reparenting function 2017-02-28 17:10:00 +00:00
sh4
smbios
sparc
ssi
timer armv7m: Split systick out from NVIC 2017-02-28 16:18:49 +00:00
tricore
unicore32
usb
vfio
virtio vhost-scsi: create a vhost-scsi-common abstraction 2017-05-05 12:10:00 +02:00
watchdog
xen xen/9pfs: build and register Xen 9pfs backend 2017-04-25 11:04:33 -07:00
boards.h numa,spapr: align default numa node memory size to 256MB 2017-03-22 11:32:42 +11:00
bt.h
compat.h s390x: introduce 2.10 compat machine 2017-04-21 09:32:09 +02:00
devices.h sm501: QOMify 2017-04-24 12:32:12 +01:00
elf_ops.h elf-loader: Allow late loading of elf 2017-02-28 12:04:48 +01:00
empty_slot.h
fw-path-provider.h
hotplug.h
hw.h
ide.h
irq.h
loader-fit.h
loader.h elf-loader: Allow late loading of elf 2017-02-28 12:04:48 +01:00
nmi.h
or-irq.h
pcmcia.h
platform-bus.h
ptimer.h tests: fix ptimer leaks 2017-03-01 00:09:28 +04:00
qdev-core.h migration/next for 20170421 2017-04-21 15:59:27 +01:00
qdev-dma.h
qdev-properties.h qdev: Constify value passed to qdev_prop_set_macaddr 2017-04-20 15:22:41 -03:00
qdev.h
register.h
registerfields.h
stream.h
sysbus.h
usb.h