[U-Boot] [PATCH 21/24] rockchip: rk3399: init vbus regulator in board_early_init_f()

Kever Yang kever.yang at rock-chips.com
Mon Jul 22 12:02:18 UTC 2019


Handle per-board init in board_early_init_f() and use the
common board_init() for per-platform board init later.

Signed-off-by: Kever Yang <kever.yang at rock-chips.com>
---

 board/rockchip/evb_rk3399/evb-rk3399.c | 26 +++++++++++++++++---------
 1 file changed, 17 insertions(+), 9 deletions(-)

diff --git a/board/rockchip/evb_rk3399/evb-rk3399.c b/board/rockchip/evb_rk3399/evb-rk3399.c
index eb1b832274..c7e93a358d 100644
--- a/board/rockchip/evb_rk3399/evb-rk3399.c
+++ b/board/rockchip/evb_rk3399/evb-rk3399.c
@@ -9,15 +9,12 @@
 #include <asm/arch-rockchip/periph.h>
 #include <power/regulator.h>
 
-int board_init(void)
+#ifndef CONFIG_SPL_BUILD
+int board_early_init_f(void)
 {
 	struct udevice *regulator;
 	int ret;
 
-	ret = regulators_enable_boot_on(false);
-	if (ret)
-		debug("%s: Cannot enable boot on regulator\n", __func__);
-
 	ret = regulator_get_by_platname("vcc5v0_host", &regulator);
 	if (ret) {
 		debug("%s vcc5v0_host init fail! ret %d\n", __func__, ret);
@@ -25,11 +22,22 @@ int board_init(void)
 	}
 
 	ret = regulator_set_enable(regulator, true);
-	if (ret) {
-		debug("%s vcc5v0-host-en set fail!\n", __func__);
-		goto out;
-	}
+	if (ret)
+		debug("%s vcc5v0-host-en set fail! ret %d\n", __func__, ret);
 
 out:
 	return 0;
 }
+
+int board_init(void)
+{
+	struct udevice *regulator;
+	int ret;
+
+	ret = regulators_enable_boot_on(false);
+	if (ret)
+		debug("%s: Cannot enable boot on regulator\n", __func__);
+
+	return 0;
+}
+#endif
-- 
2.17.1



More information about the U-Boot mailing list