]> git.sur5r.net Git - u-boot/commitdiff
rockchip: puma-rk3399: update board_init()
authorPhilipp Tomsich <philipp.tomsich@theobroma-systems.com>
Fri, 29 Sep 2017 17:28:00 +0000 (19:28 +0200)
committerPhilipp Tomsich <philipp.tomsich@theobroma-systems.com>
Sat, 30 Sep 2017 22:33:35 +0000 (00:33 +0200)
The original initialisation code for board_init() was largely lifted
from the code on the EVB.  However, the RK3399-Q7 can do with a much
more concise init sequence.

This cleans up the board_init() by updating it to the essentials for
the RK3399-Q7 and getting rid of the accumulated cruft.

Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
board/theobroma-systems/puma_rk3399/puma-rk3399.c

index e55a5c6657e97e6346f89e6a0a5c643b8bbd5cbe..3cab7b1d48ddd54fe9894a8a608a9e1df858a358 100644 (file)
@@ -19,44 +19,16 @@ DECLARE_GLOBAL_DATA_PTR;
 
 int board_init(void)
 {
-       struct udevice *pinctrl, *regulator;
        int ret;
 
        /*
-        * The PWM does not have decicated interrupt number in dts and can
-        * not get periph_id by pinctrl framework, so let's init them here.
-        * The PWM2 and PWM3 are for pwm regulators.
+        * We need to call into regulators_enable_boot_on() again, as the call
+        * during SPL may have not included all regulators.
         */
-       ret = uclass_get_device(UCLASS_PINCTRL, 0, &pinctrl);
-       if (ret) {
-               debug("%s: Cannot find pinctrl device\n", __func__);
-               goto out;
-       }
-
-       ret = pinctrl_request_noflags(pinctrl, PERIPH_ID_PWM2);
-       if (ret) {
-               debug("%s PWM2 pinctrl init fail!\n", __func__);
-               goto out;
-       }
-
-       /* rk3399 need to init vdd_center to get the correct output voltage */
-       ret = regulator_get_by_platname("vdd_center", &regulator);
+       ret = regulators_enable_boot_on(false);
        if (ret)
-               debug("%s: Cannot get vdd_center regulator\n", __func__);
-
-       ret = regulator_get_by_platname("vcc5v0_host", &regulator);
-       if (ret) {
-               debug("%s vcc5v0_host init fail! ret %d\n", __func__, ret);
-               goto out;
-       }
-
-       ret = regulator_set_enable(regulator, true);
-       if (ret) {
-               debug("%s vcc5v0-host-en set fail!\n", __func__);
-               goto out;
-       }
+               debug("%s: Cannot enable boot on regulator\n", __func__);
 
-out:
        return 0;
 }