
El Fri, Jul 15, 2022 at 05:14:25PM +0200, Quentin Schulz deia:
From: Quentin Schulz quentin.schulz@theobroma-systems.com
This makes sure regulators that need to be turned on or off at boot are turned on or off in the SPL.
This may be required for the SPL to do some operations, such as finding possible loading media for U-Boot proper.
Cc: Quentin Schulz foss+uboot@0leil.net Signed-off-by: Quentin Schulz quentin.schulz@theobroma-systems.com
Tested on a Rock-Pi-4B and didn't see any regression. Tested-by: Xavier Drudis Ferran xdrudis@tinet.cat
- RFC because only tested on Puma Haikou RK3399
common/spl/spl.c | 12 ++++++++++++ 1 file changed, 12 insertions(+)
diff --git a/common/spl/spl.c b/common/spl/spl.c index c8c463f80b..762e9918c7 100644 --- a/common/spl/spl.c +++ b/common/spl/spl.c @@ -37,6 +37,9 @@ #include <fdt_support.h> #include <bootcount.h> #include <wdt.h> +#if CONFIG_IS_ENABLED(DM_REGULATOR) +#include <power/regulator.h> +#endif
DECLARE_GLOBAL_DATA_PTR;
@@ -766,6 +769,15 @@ void board_init_r(gd_t *dummy1, ulong dummy2) if (CONFIG_IS_ENABLED(GPIO_HOG)) gpio_hog_probe_all();
- if (CONFIG_IS_ENABLED(DM_REGULATOR)) {
if (regulators_enable_boot_on(false))
debug("%s: Cannot enable boot on regulator\n",
__func__);
if (regulators_enable_boot_off(false))
debug("%s: Cannot enable boot off regulator\n",
__func__);
- }
#if CONFIG_IS_ENABLED(BOARD_INIT) spl_board_init();
#endif
2.36.1