[PATCH RFC/RFT 2/3] board: ti: j784s4: Initialize the ESM & PMIC ESM
Kumar, Udit
u-kumar1 at ti.com
Sat Sep 7 07:42:05 CEST 2024
Hi Andrew,
On 9/7/2024 2:54 AM, Andrew Halaney wrote:
> From: Keerthy <j-keerthy at ti.com>
>
> Initialize the ESM & PMIC ESM. This allows things like
> the watchdog to reset the board when tripped.
>
> Signed-off-by: Keerthy <j-keerthy at ti.com>
> Signed-off-by: Neha Malcom Francis <n-francis at ti.com>
> Link: https://git.ti.com/cgit/ti-u-boot/ti-u-boot/commit/board/ti/j784s4/evm.c?h=ti-u-boot-2024.04&id=9d8b40958ce792808bc571d828197dbc2e7978d6
> [halaney: add a line to the commit message, include header]
> Signed-off-by: Andrew Halaney <ahalaney at redhat.com>
> ---
> board/ti/j784s4/evm.c | 28 ++++++++++++++++++++++++++++
> 1 file changed, 28 insertions(+)
>
> diff --git a/board/ti/j784s4/evm.c b/board/ti/j784s4/evm.c
> index 548dbd5925d..a0ef3a44536 100644
> --- a/board/ti/j784s4/evm.c
> +++ b/board/ti/j784s4/evm.c
> @@ -7,6 +7,7 @@
> *
> */
>
> +#include <dm.h>
> #include <efi_loader.h>
> #include <init.h>
> #include <spl.h>
> @@ -72,4 +73,31 @@ int board_late_init(void)
>
> void spl_board_init(void)
> {
> + struct udevice *dev;
> + int ret;
> +
> + if (IS_ENABLED(CONFIG_ESM_K3)) {
> + ret = uclass_get_device_by_name(UCLASS_MISC, "esm at 700000",
> + &dev);
> + if (ret)
> + printf("MISC init for esm at 700000 failed: %d\n", ret);
> +
> + ret = uclass_get_device_by_name(UCLASS_MISC, "esm at 40800000",
> + &dev);
> + if (ret)
> + printf("MISC init for esm at 40800000 failed: %d\n", ret);
> +
> + ret = uclass_get_device_by_name(UCLASS_MISC, "esm at 42080000",
> + &dev);
> + if (ret)
> + printf("MISC init for esm at 42080000 failed: %d\n", ret);
> + }
Thanks for patch ,
IMO, if one of esm is failing then we can skip other esm probe,
> +
> + if (IS_ENABLED(CONFIG_ESM_PMIC)) {
> + ret = uclass_get_device_by_driver(UCLASS_MISC,
> + DM_DRIVER_GET(pmic_esm),
> + &dev);
Same here if esm probe is successful then only we should probe pmic_esm.
Reason is , if any of probe is failing functionality will not work and
there is no point to probe devices, if function is not working.
> + if (ret)
> + printf("ESM PMIC init failed: %d\n", ret);
> + }
> }
>
More information about the U-Boot
mailing list