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 <[email protected]>
---

 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

_______________________________________________
U-Boot mailing list
[email protected]
https://lists.denx.de/listinfo/u-boot

Reply via email to