The _ADR entry in SPCR is optional and redundant. The same information is already provided in _CRS (which is mandatory).
Signed-off-by: Leif Lindholm <leif.lindh...@linaro.org> --- So, this _ADR entry is only consumed by a set of not-widely-circulated patches for the Linux kernel. And while the ARM Server Base Boot Requirements specification mandates SPCR, it does not mandate this _ADR entry. In the interest of not propagating non-standard extensions, I would be really happy if we could consider dropping this from 2.4. I do realize that this is a completely unreasonable request this late in the release process, but I only spotted this yesterday, and it is a very isolated change with very quantifiable effects. The patch at https://git.linaro.org/leg/acpi/leg-kernel.git/commitdiff/46eeec7b7332bdd104941703696d3812afd934c8 converts the non-upstream kernel SPCR handling code to use the _CRS information instead. hw/arm/virt-acpi-build.c | 6 ------ 1 file changed, 6 deletions(-) diff --git a/hw/arm/virt-acpi-build.c b/hw/arm/virt-acpi-build.c index f365140..85eb48c 100644 --- a/hw/arm/virt-acpi-build.c +++ b/hw/arm/virt-acpi-build.c @@ -84,12 +84,6 @@ static void acpi_dsdt_add_uart(Aml *scope, const MemMapEntry *uart_memmap, aml_interrupt(AML_CONSUMER, AML_LEVEL, AML_ACTIVE_HIGH, AML_EXCLUSIVE, uart_irq)); aml_append(dev, aml_name_decl("_CRS", crs)); - - /* The _ADR entry is used to link this device to the UART described - * in the SPCR table, i.e. SPCR.base_address.address == _ADR. - */ - aml_append(dev, aml_name_decl("_ADR", aml_int(uart_memmap->base))); - aml_append(scope, dev); } -- 2.1.4