From 19622b6c93ed5c595ef5eee3d9502fdbdf809cf4 Mon Sep 17 00:00:00 2001 From: "xiaoguang.xing" Date: Tue, 23 May 2023 16:44:43 +0800 Subject: [PATCH] platform: generic: sophgo: add cold_boot_allowed callback --- platform/generic/sophgo/mango.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/platform/generic/sophgo/mango.c b/platform/generic/sophgo/mango.c index a558bbad..e1c64b22 100644 --- a/platform/generic/sophgo/mango.c +++ b/platform/generic/sophgo/mango.c @@ -24,6 +24,17 @@ #define SOPHGO_MANGO_TIMER_BASE 0x70ac000000UL #define SOPHGO_MANGO_TIMER_OFFSET 0x10000UL +static u32 selected_hartid = -1; + +static bool mango_cold_boot_allowed(u32 hartid, + const struct fdt_match *match) +{ + if (selected_hartid != -1) + return (selected_hartid == hartid); + + return true; +} + int mango_early_init(bool cold_boot, const struct fdt_match *match) { const struct sbi_platform * plat = sbi_platform_thishart_ptr(); @@ -62,6 +73,7 @@ static const struct fdt_match sophgo_mango_match[] = { const struct platform_override sophgo_mango = { .match_table = sophgo_mango_match, + .cold_boot_allowed = mango_cold_boot_allowed, .early_init = mango_early_init, .extensions_init = mango_extensions_init, };