diff options
| author | Yu Chien Peter Lin <[email protected]> | 2022-10-14 08:32:51 +0800 |
|---|---|---|
| committer | Anup Patel <[email protected]> | 2022-10-23 10:35:00 +0530 |
| commit | c8683c57f62c00e84ea66a5354a29ffcfec2a9eb (patch) | |
| tree | 8de6afb8568b472de0af5073161a75faff63b329 | |
| parent | ce7c490719ed4e268979c8b6b54a5252396fbb3b (diff) | |
platform: andes/ae350: Add AE350 domain support
Add domains_init platform hook for Andes AE350, users can add domain
description in device tree and select FDT domain support in Kconfig
to achieve system-level partitioning.
Signed-off-by: Yu Chien Peter Lin <[email protected]>
Reviewed-by: Leo Yu-Chi Liang <[email protected]>
Reviewed-by: Anup Patel <[email protected]>
| -rw-r--r-- | platform/andes/ae350/platform.c | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/platform/andes/ae350/platform.c b/platform/andes/ae350/platform.c index 30e46062..d36d11ee 100644 --- a/platform/andes/ae350/platform.c +++ b/platform/andes/ae350/platform.c @@ -19,13 +19,14 @@ #include <sbi/sbi_platform.h> #include <sbi/sbi_string.h> #include <sbi/sbi_trap.h> -#include <sbi_utils/fdt/fdt_helper.h> +#include <sbi_utils/fdt/fdt_domain.h> #include <sbi_utils/fdt/fdt_fixup.h> +#include <sbi_utils/fdt/fdt_helper.h> +#include <sbi_utils/ipi/fdt_ipi.h> #include <sbi_utils/irqchip/fdt_irqchip.h> #include <sbi_utils/reset/fdt_reset.h> #include <sbi_utils/serial/fdt_serial.h> #include <sbi_utils/timer/fdt_timer.h> -#include <sbi_utils/ipi/fdt_ipi.h> #include "platform.h" #include "cache.h" @@ -84,6 +85,7 @@ static int ae350_final_init(bool cold_boot) fdt = fdt_get_address(); fdt_fixups(fdt); + fdt_domain_fixup(fdt); return 0; } @@ -132,10 +134,17 @@ static int ae350_vendor_ext_provider(long extid, long funcid, return ret; } +static int ae350_domains_init(void) +{ + return fdt_domains_populate(fdt_get_address()); +} + /* Platform descriptor. */ const struct sbi_platform_operations platform_ops = { .final_init = ae350_final_init, + .domains_init = ae350_domains_init, + .console_init = fdt_serial_init, .irqchip_init = fdt_irqchip_init, |
