Merge patch series "k3-j784s4*: Enable ESMs and related PMIC"
Udit Kumar <u-kumar1@ti.com> says: This series enables the ESMs and the associated PMIC. Programming these bits is a requirement to make the watchdog actually reset the board. Series supports WDT reset on all TI platforms based upon J784S4 SOC including cut down (J742S2). Bootlogs for reset AM69: https://gist.github.com/uditkumarti/dca2171aafd6d50c82159346f9a0102f#file-am69-L2466 J784S4: https://gist.github.com/uditkumarti/dca2171aafd6d50c82159346f9a0102f#file-j784s4-L2704 J742S2: https://gist.github.com/uditkumarti/dca2171aafd6d50c82159346f9a0102f#file-j742s2-L2614 Link: https://lore.kernel.org/r/20250427070323.590449-1-u-kumar1@ti.com
This commit is contained in:
@@ -10,3 +10,10 @@
|
||||
#include "k3-j784s4-ddr.dtsi"
|
||||
#include "k3-am69-sk-u-boot.dtsi"
|
||||
#include "k3-j784s4-r5.dtsi"
|
||||
|
||||
&tps659413 {
|
||||
esm: esm {
|
||||
compatible = "ti,tps659413-esm";
|
||||
bootph-pre-ram;
|
||||
};
|
||||
};
|
||||
|
@@ -10,3 +10,10 @@
|
||||
#include "k3-j784s4-ddr.dtsi"
|
||||
#include "k3-j784s4-evm-u-boot.dtsi"
|
||||
#include "k3-j784s4-r5.dtsi"
|
||||
|
||||
&tps659413 {
|
||||
esm: esm {
|
||||
compatible = "ti,tps659413-esm";
|
||||
bootph-pre-ram;
|
||||
};
|
||||
};
|
||||
|
@@ -7,6 +7,7 @@
|
||||
*
|
||||
*/
|
||||
|
||||
#include <dm.h>
|
||||
#include <efi_loader.h>
|
||||
#include <init.h>
|
||||
#include <spl.h>
|
||||
@@ -67,4 +68,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);
|
||||
}
|
||||
}
|
||||
|
@@ -125,6 +125,11 @@ CONFIG_SPL_PINCTRL=y
|
||||
CONFIG_PINCTRL_SINGLE=y
|
||||
CONFIG_POWER_DOMAIN=y
|
||||
CONFIG_TI_POWER_DOMAIN=y
|
||||
CONFIG_ESM_K3=y
|
||||
CONFIG_ESM_PMIC=y
|
||||
CONFIG_DM_PMIC=y
|
||||
CONFIG_PMIC_TPS65941=y
|
||||
CONFIG_DM_REGULATOR_TPS65941=y
|
||||
CONFIG_DM_REGULATOR=y
|
||||
CONFIG_SPL_DM_REGULATOR=y
|
||||
CONFIG_SPL_DM_REGULATOR_TPS6287X=y
|
||||
|
Reference in New Issue
Block a user