[PATCH 1/5] arm: mxs: Provide Kconfig option to to not use VDD5V as IMX28 PMU source

Lukasz Majewski
2023-05-09T14:33:16Z

This option sets the current limit for 5V source to zero, so all
the PMU outputs are primarily powered from battery source (DCDC_BAT).

This option may be set on systems, where the 5V is NOT supposed to be
in any scenario powering the system - for example on systems where
DCDC_BAT is connected to fixed and regulated 4.2V source (so the
"battery" is not present).

Signed-off-by: Lukasz Majewski <lukma@denx.de>
---
arch/arm/cpu/arm926ejs/mxs/spl_power_init.c | 4 ++++
arch/arm/mach-imx/mxs/Kconfig | 8 ++++++++
2 files changed, 12 insertions(+)

diff --git a/arch/arm/cpu/arm926ejs/mxs/spl_power_init.c b/arch/arm/cpu/arm926ejs/mxs/spl_power_init.c
index c33170f06d..9965810ac2 100644
--- a/arch/arm/cpu/arm926ejs/mxs/spl_power_init.c
+++ b/arch/arm/cpu/arm926ejs/mxs/spl_power_init.c
@@ -752,6 +752,10 @@ static void mxs_batt_boot(void)
POWER_5VCTRL_CHARGE_4P2_ILIMIT_MASK,
0x8 << POWER_5VCTRL_CHARGE_4P2_ILIMIT_OFFSET);

+ if (CONFIG_IS_ENABLED(MXS_PMU_MINIMAL_VDD5V_CURRENT))
+ setbits_le32(&power_regs->hw_power_5vctrl,
+ POWER_5VCTRL_ILIMIT_EQ_ZERO);
+
mxs_power_enable_4p2();
}

diff --git a/arch/arm/mach-imx/mxs/Kconfig b/arch/arm/mach-imx/mxs/Kconfig
index b2026a3758..3232b0fb67 100644
--- a/arch/arm/mach-imx/mxs/Kconfig
+++ b/arch/arm/mach-imx/mxs/Kconfig
@@ -51,6 +51,14 @@ endchoice
config SYS_SOC
default "mxs"

+config SPL_MXS_PMU_MINIMAL_VDD5V_CURRENT
+ bool "Force minimal current draw from VDD5V by MX28 PMU"
+ default n
+ help
+ After setting this option, the current drawn from VDD5V
+ by the PMU is reduced to zero - the DCDC_BATT is used as
+ the main power source for PMU.
+
source "board/freescale/mx28evk/Kconfig"
source "board/liebherr/xea/Kconfig"

--
2.30.2