summaryrefslogtreecommitdiff
path: root/board
diff options
context:
space:
mode:
authorMarek Vasut <marex@denx.de>2024-09-25 00:08:23 +0200
committerTom Rini <trini@konsulko.com>2024-09-25 12:21:47 -0600
commitc0435ed04bd9fb264cb6284399556b11825e96e8 (patch)
tree593508c484054eabc245b29b0e48a54893c02578 /board
parent541d21cf08ed318a6088d90a7db423b1e50e4038 (diff)
downloadu-boot-c0435ed04bd9fb264cb6284399556b11825e96e8.tar.gz
u-boot-c0435ed04bd9fb264cb6284399556b11825e96e8.tar.bz2
u-boot-c0435ed04bd9fb264cb6284399556b11825e96e8.zip
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>
Diffstat (limited to 'board')
-rw-r--r--board/dhelectronics/dh_imx6/dh_imx6.c3
-rw-r--r--board/dhelectronics/dh_imx8mp/imx8mp_dhcom_pdk2.c3
2 files changed, 6 insertions, 0 deletions
diff --git a/board/dhelectronics/dh_imx6/dh_imx6.c b/board/dhelectronics/dh_imx6/dh_imx6.c
index c8dd30dfea..ada44e0142 100644
--- a/board/dhelectronics/dh_imx6/dh_imx6.c
+++ b/board/dhelectronics/dh_imx6/dh_imx6.c
@@ -30,6 +30,7 @@
#include <fuse.h>
#include <i2c_eeprom.h>
#include <mmc.h>
+#include <power/regulator.h>
#include <usb.h>
#include <linux/delay.h>
#include <usb/ehci-ci.h>
@@ -127,6 +128,8 @@ int board_init(void)
setup_fec_clock();
+ regulators_enable_boot_on(_DEBUG);
+
return 0;
}
diff --git a/board/dhelectronics/dh_imx8mp/imx8mp_dhcom_pdk2.c b/board/dhelectronics/dh_imx8mp/imx8mp_dhcom_pdk2.c
index c635735d89..a389ab3c2d 100644
--- a/board/dhelectronics/dh_imx8mp/imx8mp_dhcom_pdk2.c
+++ b/board/dhelectronics/dh_imx8mp/imx8mp_dhcom_pdk2.c
@@ -14,6 +14,7 @@
#include <malloc.h>
#include <net.h>
#include <miiphy.h>
+#include <power/regulator.h>
#include "lpddr4_timing.h"
#include "../common/dh_common.h"
@@ -111,6 +112,8 @@ int dh_setup_mac_address(void)
int board_init(void)
{
+ regulators_enable_boot_on(_DEBUG);
+
return 0;
}