arm: imx: Enable always-on regulators using board specific workaround on DHCOM SoM

U-Boot is currently unable to automatically enable regulators which
contain DT property regulator-always-on or regulator-boot-on. There
is an ongoing work to add this functionality to regulator core code,
but until the proper solution lands, add this awful workaround code
to force these regulators on. This is specifically needed to assure
the VIO regulator used to supply ethernet magnetics is enabled.

Signed-off-by: Marek Vasut <marex@denx.de>
This commit is contained in:
Marek Vasut 2024-09-25 00:08:23 +02:00 committed by Tom Rini
parent 541d21cf08
commit c0435ed04b
2 changed files with 6 additions and 0 deletions

View File

@ -30,6 +30,7 @@
#include <fuse.h> #include <fuse.h>
#include <i2c_eeprom.h> #include <i2c_eeprom.h>
#include <mmc.h> #include <mmc.h>
#include <power/regulator.h>
#include <usb.h> #include <usb.h>
#include <linux/delay.h> #include <linux/delay.h>
#include <usb/ehci-ci.h> #include <usb/ehci-ci.h>
@ -127,6 +128,8 @@ int board_init(void)
setup_fec_clock(); setup_fec_clock();
regulators_enable_boot_on(_DEBUG);
return 0; return 0;
} }

View File

@ -14,6 +14,7 @@
#include <malloc.h> #include <malloc.h>
#include <net.h> #include <net.h>
#include <miiphy.h> #include <miiphy.h>
#include <power/regulator.h>
#include "lpddr4_timing.h" #include "lpddr4_timing.h"
#include "../common/dh_common.h" #include "../common/dh_common.h"
@ -111,6 +112,8 @@ int dh_setup_mac_address(void)
int board_init(void) int board_init(void)
{ {
regulators_enable_boot_on(_DEBUG);
return 0; return 0;
} }