[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL v2 24/82] acpi: arm/virt: madt: bump to revision 4 accordingly to
From: |
Michael S. Tsirkin |
Subject: |
[PULL v2 24/82] acpi: arm/virt: madt: bump to revision 4 accordingly to ACPI 6.0 Errata A |
Date: |
Wed, 2 Nov 2022 12:09:26 -0400 |
From: Miguel Luis <miguel.luis@oracle.com>
MADT has been updated with the GIC Structures from ACPI 6.0 Errata A
and so MADT revision and GICC Structure must be updated also.
Fixes: 37f33084ed2e ("acpi: arm/virt: madt: use build_append_int_noprefix() API
to compose MADT table")
Signed-off-by: Miguel Luis <miguel.luis@oracle.com>
Reviewed-by: Ani Sinha <ani@anisinha.ca>
Message-Id: <20221011181730.10885-4-miguel.luis@oracle.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
---
hw/arm/virt-acpi-build.c | 16 +++++++---------
1 file changed, 7 insertions(+), 9 deletions(-)
diff --git a/hw/arm/virt-acpi-build.c b/hw/arm/virt-acpi-build.c
index e5377744f3..da9e41e72b 100644
--- a/hw/arm/virt-acpi-build.c
+++ b/hw/arm/virt-acpi-build.c
@@ -685,7 +685,7 @@ build_dbg2(GArray *table_data, BIOSLinker *linker,
VirtMachineState *vms)
};
/*
- * ACPI spec, Revision 5.1 Errata A
+ * ACPI spec, Revision 6.0 Errata A
* 5.2.12 Multiple APIC Description Table (MADT)
*/
static void build_append_gicr(GArray *table_data, uint64_t base, uint32_t size)
@@ -704,7 +704,7 @@ build_madt(GArray *table_data, BIOSLinker *linker,
VirtMachineState *vms)
int i;
VirtMachineClass *vmc = VIRT_MACHINE_GET_CLASS(vms);
const MemMapEntry *memmap = vms->memmap;
- AcpiTable table = { .sig = "APIC", .rev = 3, .oem_id = vms->oem_id,
+ AcpiTable table = { .sig = "APIC", .rev = 4, .oem_id = vms->oem_id,
.oem_table_id = vms->oem_table_id };
acpi_table_begin(&table, table_data);
@@ -739,7 +739,7 @@ build_madt(GArray *table_data, BIOSLinker *linker,
VirtMachineState *vms)
/* 5.2.12.14 GIC Structure */
build_append_int_noprefix(table_data, 0xB, 1); /* Type */
- build_append_int_noprefix(table_data, 76, 1); /* Length */
+ build_append_int_noprefix(table_data, 80, 1); /* Length */
build_append_int_noprefix(table_data, 0, 2); /* Reserved */
build_append_int_noprefix(table_data, i, 4); /* GIC ID */
build_append_int_noprefix(table_data, i, 4); /* ACPI Processor UID
*/
@@ -759,6 +759,10 @@ build_madt(GArray *table_data, BIOSLinker *linker,
VirtMachineState *vms)
build_append_int_noprefix(table_data, 0, 8); /* GICR Base Address*/
/* MPIDR */
build_append_int_noprefix(table_data, armcpu->mp_affinity, 8);
+ /* Processor Power Efficiency Class */
+ build_append_int_noprefix(table_data, 0, 1);
+ /* Reserved */
+ build_append_int_noprefix(table_data, 0, 3);
}
if (vms->gic_version != VIRT_GIC_VERSION_2) {
@@ -770,12 +774,6 @@ build_madt(GArray *table_data, BIOSLinker *linker,
VirtMachineState *vms)
}
if (its_class_name() && !vmc->no_its) {
- /*
- * FIXME: Structure is from Revision 6.0 where 'GIC Structure'
- * has additional fields on top of implemented 5.1 Errata A,
- * to make it consistent with v6.0 we need to bump everything
- * to v6.0
- */
/*
* ACPI spec, Revision 6.0 Errata A
* (original 6.0 definition has invalid Length)
--
MST
- [PULL v2 13/82] acpi/tests/avocado/bits: add biosbits config file for running bios tests, (continued)
- [PULL v2 13/82] acpi/tests/avocado/bits: add biosbits config file for running bios tests, Michael S. Tsirkin, 2022/11/02
- [PULL v2 14/82] acpi/tests/avocado/bits: add acpi and smbios avocado tests that uses biosbits, Michael S. Tsirkin, 2022/11/02
- [PULL v2 15/82] acpi/tests/avocado/bits/doc: add a doc file to describe the acpi bits test, Michael S. Tsirkin, 2022/11/02
- [PULL v2 16/82] MAINTAINERS: add myself as the maintainer for acpi biosbits avocado tests, Michael S. Tsirkin, 2022/11/02
- [PULL v2 17/82] hw/smbios: add core_count2 to smbios table type 4, Michael S. Tsirkin, 2022/11/02
- [PULL v2 18/82] bios-tables-test: teach test to use smbios 3.0 tables, Michael S. Tsirkin, 2022/11/02
- [PULL v2 19/82] tests/acpi: allow changes for core_count2 test, Michael S. Tsirkin, 2022/11/02
- [PULL v2 20/82] bios-tables-test: add test for number of cores > 255, Michael S. Tsirkin, 2022/11/02
- [PULL v2 22/82] tests/acpi: virt: allow acpi MADT and FADT changes, Michael S. Tsirkin, 2022/11/02
- [PULL v2 23/82] acpi: fadt: support revision 6.0 of the ACPI specification, Michael S. Tsirkin, 2022/11/02
- [PULL v2 24/82] acpi: arm/virt: madt: bump to revision 4 accordingly to ACPI 6.0 Errata A,
Michael S. Tsirkin <=
- [PULL v2 25/82] tests/acpi: virt: update ACPI MADT and FADT binaries, Michael S. Tsirkin, 2022/11/02
- [PULL v2 21/82] tests/acpi: update tables for new core count test, Michael S. Tsirkin, 2022/11/02
- [PULL v2 27/82] hw/mem/cxl-type3: Add MSIX support, Michael S. Tsirkin, 2022/11/02
- [PULL v2 28/82] hw/cxl/cdat: CXL CDAT Data Object Exchange implementation, Michael S. Tsirkin, 2022/11/02
- [PULL v2 29/82] hw/mem/cxl-type3: Add CXL CDAT Data Object Exchange, Michael S. Tsirkin, 2022/11/02
- [PULL v2 30/82] hw/pci-bridge/cxl-upstream: Add a CDAT table access DOE, Michael S. Tsirkin, 2022/11/02
- [PULL v2 26/82] hw/pci: PCIe Data Object Exchange emulation, Michael S. Tsirkin, 2022/11/02
- [PULL v2 32/82] vhost-user: Support vhost_dev_start, Michael S. Tsirkin, 2022/11/02
- [PULL v2 31/82] vhost: Change the sequence of device start, Michael S. Tsirkin, 2022/11/02