summaryrefslogtreecommitdiff
path: root/board
diff options
context:
space:
mode:
authorPhilipp Tomsich <philipp.tomsich@theobroma-systems.com>2017-09-29 19:28:01 +0200
committerKever Yang <kever.yang@rock-chips.com>2018-01-17 15:27:28 +0800
commitbe29fed8f989befde16eb011c343db161284594b (patch)
treee36ea70ce77784d844ffcc0e0717ec5bbf473e0d /board
parentb4d43cb80724c73c6d70d8e51536b66d4bfea2a7 (diff)
UPSTREAM: rockchip: rk3399-puma: add boot-on regulator to override BIOS_DISABLE
The (Qseven) BIOS_DISABLE signal on the RK3399-Q7 (Puma) keeps the eMMC and SPI in reset initially and we need to write a GPIO to turn them on before continuing the boot-up. This adds the DTS entries for the additional regulator and makes pinctrl and gpio3 available during SPL. It also adds a hook to the spl_board_init() to ensure that the regulator gets probed and enabled. Change-Id: I5d229af39d5b410a5abc38f9d151bc766384c275 Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com> Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit 482cf22333dbfb7c706d6a7ec1ffbfa5409cc6a3)
Diffstat (limited to 'board')
-rw-r--r--board/theobroma-systems/puma_rk3399/puma-rk3399.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/board/theobroma-systems/puma_rk3399/puma-rk3399.c b/board/theobroma-systems/puma_rk3399/puma-rk3399.c
index 3cab7b1d48..2b4988e2d2 100644
--- a/board/theobroma-systems/puma_rk3399/puma-rk3399.c
+++ b/board/theobroma-systems/puma_rk3399/puma-rk3399.c
@@ -34,6 +34,16 @@ int board_init(void)
void spl_board_init(void)
{
+ int ret;
+
+ /*
+ * Turning the eMMC and SPI back on (if disabled via the Qseven
+ * BIOS_ENABLE) signal is done through a always-on regulator).
+ */
+ ret = regulators_enable_boot_on(false);
+ if (ret)
+ debug("%s: Cannot enable boot on regulator\n", __func__);
+
preloader_console_init();
}