42 lines
1.7 KiB
Diff
42 lines
1.7 KiB
Diff
|
|
From e9b0d476172e872bf695780a9ffa8072faeb3cd0 Mon Sep 17 00:00:00 2001
|
||
|
|
From: Jean-Philippe Brucker <jean-philippe@linaro.org>
|
||
|
|
Date: Mon, 25 Apr 2022 17:40:57 +0100
|
||
|
|
Subject: [PATCH] hw/acpi: Make _MAT method optional
|
||
|
|
|
||
|
|
The GICC interface on arm64 vCPUs is statically defined in the MADT, and
|
||
|
|
doesn't require a _MAT entry. Although the GICC is indicated as present
|
||
|
|
by the MADT entry, it can only be used from vCPU sysregs, which aren't
|
||
|
|
accessible until hot-add.
|
||
|
|
|
||
|
|
Co-developed-by: Jean-Philippe Brucker <jean-philippe@linaro.org>
|
||
|
|
Signed-off-by: Jean-Philippe Brucker <jean-philippe@linaro.org>
|
||
|
|
Co-developed-by: Jonathan Cameron <jonathan.cameron@huawei.com>
|
||
|
|
Signed-off-by: Jonathan Cameron <jonathan.cameron@huawei.com>
|
||
|
|
Signed-off-by: Salil Mehta <salil.mehta@huawei.com>
|
||
|
|
---
|
||
|
|
hw/acpi/cpu.c | 8 +++++---
|
||
|
|
1 file changed, 5 insertions(+), 3 deletions(-)
|
||
|
|
|
||
|
|
diff --git a/hw/acpi/cpu.c b/hw/acpi/cpu.c
|
||
|
|
index 991f1d4181..c922c380aa 100644
|
||
|
|
--- a/hw/acpi/cpu.c
|
||
|
|
+++ b/hw/acpi/cpu.c
|
||
|
|
@@ -720,9 +720,11 @@ void build_cpus_aml(Aml *table, MachineState *machine, CPUHotplugFeatures opts,
|
||
|
|
aml_append(dev, method);
|
||
|
|
|
||
|
|
/* build _MAT object */
|
||
|
|
- build_madt_cpu(i, arch_ids, madt_buf, true); /* set enabled flag */
|
||
|
|
- aml_append(dev, aml_name_decl("_MAT",
|
||
|
|
- aml_buffer(madt_buf->len, (uint8_t *)madt_buf->data)));
|
||
|
|
+ if (build_madt_cpu) {
|
||
|
|
+ build_madt_cpu(i, arch_ids, madt_buf, true); /* set enabled flag */
|
||
|
|
+ aml_append(dev, aml_name_decl("_MAT",
|
||
|
|
+ aml_buffer(madt_buf->len, (uint8_t *)madt_buf->data)));
|
||
|
|
+ }
|
||
|
|
g_array_free(madt_buf, true);
|
||
|
|
|
||
|
|
if (CPU(arch_ids->cpus[i].cpu) != first_cpu) {
|
||
|
|
--
|
||
|
|
2.27.0
|
||
|
|
|