diff options
author | Patrick Rudolph <patrick.rudolph@9elements.com> | 2024-10-23 15:20:06 +0200 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2024-10-27 17:24:13 -0600 |
commit | 142f92bf0465b0fc9fb59a055c1f25f18d3acaf3 (patch) | |
tree | cf8704120c1eb17093b591c33dfbe16f23b3cbf5 /drivers/cpu/armv8_cpu.h | |
parent | f116feadea7be9afe412c25779dfcf241c121715 (diff) |
drivers/arm: Implement acpi_fill_madt
Fill the MADT table in the GIC driver and armv8 CPU driver to
drop SoC specific code. While the GIC only needs devicetree
data, the CPU driver needs additional information stored in
the cpu_plat struct.
While on it update the only board making use of the existing
drivers and writing ACPI MADT in mainboard code.
TEST: Booted on QEMU sbsa-ref using GICV3 driver model generated MADT.
Booted on QEMU raspb4 using GICV2 driver model generated MADT.
Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Cc: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'drivers/cpu/armv8_cpu.h')
-rw-r--r-- | drivers/cpu/armv8_cpu.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/cpu/armv8_cpu.h b/drivers/cpu/armv8_cpu.h index 2c4b0252cf8..48c705e98de 100644 --- a/drivers/cpu/armv8_cpu.h +++ b/drivers/cpu/armv8_cpu.h @@ -18,4 +18,14 @@ */ int armv8_cpu_fill_ssdt(const struct udevice *dev, struct acpi_ctx *ctx); +/** + * armv8_cpu_fill_madt() - Fill the MADT + * Parses the FDT and writes the MADT subtables. + * + * @dev: cpu device to generate ACPI tables for + * @ctx: ACPI context pointer + * @return: 0 if OK, or a negative error code. + */ +int armv8_cpu_fill_madt(const struct udevice *dev, struct acpi_ctx *ctx); + #endif
\ No newline at end of file |