[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v2] hw/arm/virt-acpi - reserve ECAM space as PNP
From: |
Ard Biesheuvel |
Subject: |
Re: [Qemu-devel] [PATCH v2] hw/arm/virt-acpi - reserve ECAM space as PNP0C02 device |
Date: |
Mon, 16 Jan 2017 17:30:51 +0000 |
On 16 January 2017 at 17:25, Peter Maydell <address@hidden> wrote:
> On 13 January 2017 at 17:32, Ard Biesheuvel <address@hidden> wrote:
>> 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 <address@hidden>
>> ---
>> 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);
>> }
>
> This needs to be controlled via the machine class back-compat
> machinery in hw/arm/virt.c so that it only happens for virt-2.9
> and later.
>
Why exactly?
- [Qemu-devel] [PATCH v2] hw/arm/virt-acpi - reserve ECAM space as PNP0C02 device, Ard Biesheuvel, 2017/01/13
- Re: [Qemu-devel] [PATCH v2] hw/arm/virt-acpi - reserve ECAM space as PNP0C02 device, Peter Maydell, 2017/01/16
- Re: [Qemu-devel] [PATCH v2] hw/arm/virt-acpi - reserve ECAM space as PNP0C02 device,
Ard Biesheuvel <=
- Re: [Qemu-devel] [PATCH v2] hw/arm/virt-acpi - reserve ECAM space as PNP0C02 device, Peter Maydell, 2017/01/16
- Re: [Qemu-devel] [PATCH v2] hw/arm/virt-acpi - reserve ECAM space as PNP0C02 device, Ard Biesheuvel, 2017/01/16
- Re: [Qemu-devel] [PATCH v2] hw/arm/virt-acpi - reserve ECAM space as PNP0C02 device, Laszlo Ersek, 2017/01/16
- Re: [Qemu-devel] [PATCH v2] hw/arm/virt-acpi - reserve ECAM space as PNP0C02 device, Ard Biesheuvel, 2017/01/16
- Re: [Qemu-devel] [PATCH v2] hw/arm/virt-acpi - reserve ECAM space as PNP0C02 device, Laszlo Ersek, 2017/01/16
- Re: [Qemu-devel] [PATCH v2] hw/arm/virt-acpi - reserve ECAM space as PNP0C02 device, Ard Biesheuvel, 2017/01/17
- Re: [Qemu-devel] [PATCH v2] hw/arm/virt-acpi - reserve ECAM space as PNP0C02 device, Laszlo Ersek, 2017/01/17
- Re: [Qemu-devel] [PATCH v2] hw/arm/virt-acpi - reserve ECAM space as PNP0C02 device, Ard Biesheuvel, 2017/01/17
- Re: [Qemu-devel] [PATCH v2] hw/arm/virt-acpi - reserve ECAM space as PNP0C02 device, Laszlo Ersek, 2017/01/17
- Re: [Qemu-devel] [PATCH v2] hw/arm/virt-acpi - reserve ECAM space as PNP0C02 device, Michael S. Tsirkin, 2017/01/17