All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v2] hw/arm/virt-acpi - reserve ECAM space as PNP0C02 device
@ 2017-01-13 17:32 Ard Biesheuvel
  2017-01-16 17:25 ` Peter Maydell
  0 siblings, 1 reply; 21+ messages in thread
From: Ard Biesheuvel @ 2017-01-13 17:32 UTC (permalink / raw)
  To: qemu-devel
  Cc: peter.maydell, graeme.gregory, al.stone, leif.lindholm, Ard Biesheuvel

Linux for arm64 v4.10 and later will complain if the ECAM config space is
not reserved in the ACPI namespace:

  acpi PNP0A08:00: [Firmware Bug]: ECAM area [mem 0x3f000000-0x3fffffff] not reserved in ACPI namespace

The rationale is that OSes that don't consume the MCFG table should still
be able to infer that the PCI config space MMIO region is occupied.

So update the ACPI table generation routine to add this reservation.

Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
---
 hw/arm/virt-acpi-build.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/hw/arm/virt-acpi-build.c b/hw/arm/virt-acpi-build.c
index 085a61117378..50d52f685f68 100644
--- a/hw/arm/virt-acpi-build.c
+++ b/hw/arm/virt-acpi-build.c
@@ -310,6 +310,13 @@ static void acpi_dsdt_add_pci(Aml *scope, const MemMapEntry *memmap,
     Aml *dev_rp0 = aml_device("%s", "RP0");
     aml_append(dev_rp0, aml_name_decl("_ADR", aml_int(0)));
     aml_append(dev, dev_rp0);
+
+    Aml *dev_res0 = aml_device("%s", "RES0");
+    aml_append(dev_res0, aml_name_decl("_HID", aml_string("PNP0C02")));
+    crs = aml_resource_template();
+    aml_append(crs, aml_memory32_fixed(base_ecam, size_ecam, AML_READ_WRITE));
+    aml_append(dev_res0, aml_name_decl("_CRS", crs));
+    aml_append(dev, dev_res0);
     aml_append(scope, dev);
 }
 
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 21+ messages in thread

end of thread, other threads:[~2017-01-19 13:16 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-01-13 17:32 [Qemu-devel] [PATCH v2] hw/arm/virt-acpi - reserve ECAM space as PNP0C02 device Ard Biesheuvel
2017-01-16 17:25 ` Peter Maydell
2017-01-16 17:30   ` Ard Biesheuvel
2017-01-16 18:20     ` Peter Maydell
2017-01-16 19:31       ` Ard Biesheuvel
2017-01-16 21:13         ` Laszlo Ersek
2017-01-16 21:23           ` Ard Biesheuvel
2017-01-16 22:35             ` Laszlo Ersek
2017-01-17  7:47               ` Ard Biesheuvel
2017-01-17  8:50                 ` Laszlo Ersek
2017-01-17  9:06                   ` Ard Biesheuvel
2017-01-17  9:28                     ` Laszlo Ersek
2017-01-17 14:46               ` Michael S. Tsirkin
2017-01-17  9:49         ` Andrew Jones
2017-01-17 10:56           ` Peter Maydell
2017-01-18 15:18             ` Igor Mammedov
2017-01-18 15:55               ` Laszlo Ersek
2017-01-18 17:02                 ` Ard Biesheuvel
2017-01-18 17:26                   ` Laszlo Ersek
2017-01-19 13:16                     ` Peter Maydell
2017-01-18 14:49           ` Ard Biesheuvel

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.