summaryrefslogtreecommitdiff
path: root/arch/arm/lib/acpi_table.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/lib/acpi_table.c')
-rw-r--r--arch/arm/lib/acpi_table.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/arch/arm/lib/acpi_table.c b/arch/arm/lib/acpi_table.c
index 286ed7cecaa..e0add049261 100644
--- a/arch/arm/lib/acpi_table.c
+++ b/arch/arm/lib/acpi_table.c
@@ -11,6 +11,8 @@
#include <acpi/acpigen.h>
#include <acpi/acpi_device.h>
#include <acpi/acpi_table.h>
+#include <dm/acpi.h>
+#include <dm/uclass.h>
void acpi_write_madt_gicc(struct acpi_madt_gicc *gicc, uint cpu_num,
uint perf_gsiv, ulong phys_base, ulong gicv,
@@ -112,3 +114,14 @@ int acpi_pptt_add_cache(struct acpi_ctx *ctx, const u32 flags,
return offset;
}
+
+void *acpi_fill_madt(struct acpi_madt *madt, struct acpi_ctx *ctx)
+{
+ uclass_probe_all(UCLASS_CPU);
+ uclass_probe_all(UCLASS_IRQ);
+
+ /* All SoCs must use the driver model */
+ acpi_fill_madt_subtbl(ctx);
+
+ return ctx->current;
+}