@@ -510,3 +510,24 @@ int board_fit_config_name_match(const char *name)
return -EINVAL;
}
#endif
+
+#if !defined(CONFIG_SPL_BUILD)
+#ifdef CONFIG_DTB_RESELECT
+/*
+ * we have to reselect the DTB, as we need to start
+ * with DTB for revision D1 boards, as there is
+ * a PMIC which is not on other board revisions.
+ * If we do not find the PMIC, we are not on D1
+ * revision board.
+ */
+int embedded_dtb_select(void)
+{
+ int rescan;
+
+ power_init_board();
+ fdtdec_resetup(&rescan);
+
+ return 0;
+}
+#endif
+#endif
@@ -44,6 +44,7 @@ CONFIG_CMD_EXT4_WRITE=y
CONFIG_OF_CONTROL=y
CONFIG_DEFAULT_DEVICE_TREE="imx6dl-wandboard-revb1"
CONFIG_OF_LIST="imx6q-wandboard-revb1 imx6qp-wandboard-revd1 imx6dl-wandboard-revb1 imx6q-wandboard-revd1 imx6dl-wandboard-revd1"
+CONFIG_DTB_RESELECT=y
CONFIG_MULTI_DTB_FIT=y
CONFIG_ENV_IS_IN_MMC=y
CONFIG_SYS_RELOC_GD_ENV_ADDR=y
we have to reselect the DTB, as we need to start with DTB for revision D1 boards, as there is a PMIC which is not on other board revisions. If we do not find the PMIC, we are not on D1 revision board. Signed-off-by: Heiko Schocher <hs at denx.de> --- board/wandboard/wandboard.c | 21 +++++++++++++++++++++ configs/wandboard_defconfig | 1 + 2 files changed, 22 insertions(+)