From 6888dbf4bb1b8834e23e9cbffb845ad438382c38 Mon Sep 17 00:00:00 2001 From: Keerthy Date: Tue, 26 Nov 2024 11:04:24 +0530 Subject: [PATCH] board: ti: j721s2: Initialize the ESM & PMIC ESM Initialize the 3 instances of SOC ESM & PMIC ESM. This is needed for watchdog functionality. Signed-off-by: Keerthy Signed-off-by: Udit Kumar --- board/ti/j721s2/evm.c | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/board/ti/j721s2/evm.c b/board/ti/j721s2/evm.c index 2cfeb3bec6c..9bcf67b7bfb 100644 --- a/board/ti/j721s2/evm.c +++ b/board/ti/j721s2/evm.c @@ -326,4 +326,27 @@ int board_late_init(void) void spl_board_init(void) { + struct udevice *dev; + int ret; + + if (IS_ENABLED(CONFIG_ESM_K3)) { + const char * const esms[] = {"esm@700000", "esm@40800000", "esm@42080000"}; + + for (int i = 0; i < ARRAY_SIZE(esms); ++i) { + ret = uclass_get_device_by_name(UCLASS_MISC, esms[i], + &dev); + if (ret) { + printf("MISC init for %s failed: %d\n", esms[i], ret); + break; + } + } + } + + if (IS_ENABLED(CONFIG_ESM_PMIC) && ret == 0) { + ret = uclass_get_device_by_driver(UCLASS_MISC, + DM_DRIVER_GET(pmic_esm), + &dev); + if (ret) + printf("ESM PMIC init failed: %d\n", ret); + } } -- 2.39.5