summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrejs Cainikovs <andrejs.cainikovs@toradex.com>2021-08-16 10:03:53 +0200
committerAndrejs Cainikovs <andrejs.cainikovs@toradex.com>2023-03-07 16:25:53 +0100
commit5027b999843fcd6e55df76d6436d3d771cb3a6d8 (patch)
treeb141a3fc24655e4056aa610dc2aab6c9cf3d5c22
parent2cfe1f256d8343067d61227c36ac0dd81eeb587f (diff)
colibri-imx8x: construct fdtfile dynamically
The following expression is used to construct the device tree name: fdtfile=${soc}-colibri-${fdt_board}.dtb - soc is set dynamically (either imx8qxp or imx8dx) - fdt_board can be modified by the user (eval-v3, aster, iris/iris-v2) Upstream-Status: Submitted [https://lore.kernel.org/all/20230303132642.15574-9-andrejs.cainikovs@toradex.com/] Signed-off-by: Andrejs Cainikovs <andrejs.cainikovs@toradex.com>
-rw-r--r--board/toradex/colibri-imx8x/colibri-imx8x.c14
-rw-r--r--configs/colibri-imx8x_defconfig2
-rw-r--r--include/configs/colibri-imx8x.h3
3 files changed, 17 insertions, 2 deletions
diff --git a/board/toradex/colibri-imx8x/colibri-imx8x.c b/board/toradex/colibri-imx8x/colibri-imx8x.c
index 88eddbddae..6ed9cc4fa8 100644
--- a/board/toradex/colibri-imx8x/colibri-imx8x.c
+++ b/board/toradex/colibri-imx8x/colibri-imx8x.c
@@ -123,6 +123,18 @@ int checkboard(void)
return 0;
}
+static void select_dt_from_module_version(void)
+{
+ /*
+ * The dtb filename is constructed from ${soc}-colibri-${fdt_board}.dtb.
+ * Set soc depending on the used SoC.
+ */
+ if (is_imx8dx())
+ env_set("soc", "imx8dx");
+ else
+ env_set("soc", "imx8qxp");
+}
+
int board_init(void)
{
board_gpio_init();
@@ -158,5 +170,7 @@ int board_late_init(void)
env_set("board_rev", "v1.0");
#endif
+ select_dt_from_module_version();
+
return 0;
}
diff --git a/configs/colibri-imx8x_defconfig b/configs/colibri-imx8x_defconfig
index ab65bca311..99e28605ab 100644
--- a/configs/colibri-imx8x_defconfig
+++ b/configs/colibri-imx8x_defconfig
@@ -17,6 +17,8 @@ CONFIG_SYS_LOAD_ADDR=0x80280000
CONFIG_FIT=y
CONFIG_FIT_VERBOSE=y
CONFIG_OF_SYSTEM_SETUP=y
+CONFIG_USE_PREBOOT=y
+CONFIG_PREBOOT="test -n ${fdtfile} || setenv fdtfile ${soc}-colibri-${fdt_board}.dtb"
CONFIG_LOG=y
# CONFIG_DISPLAY_BOARDINFO is not set
CONFIG_DISPLAY_BOARDINFO_LATE=y
diff --git a/include/configs/colibri-imx8x.h b/include/configs/colibri-imx8x.h
index 8bb5b8576d..6acff0ffae 100644
--- a/include/configs/colibri-imx8x.h
+++ b/include/configs/colibri-imx8x.h
@@ -65,8 +65,7 @@
"boot_script_dhcp=boot.scr\0" \
"console=ttyLP3\0" \
"fdt_addr=0x83000000\0" \
- "fdt_file=fsl-imx8qxp-colibri-dsihdmi-eval-v3.dtb\0" \
- "fdtfile=fsl-imx8qxp-colibri-dsihdmi-eval-v3.dtb\0" \
+ "fdt_board=eval-v3\0" \
"finduuid=part uuid mmc ${mmcdev}:2 uuid\0" \
"image=Image\0" \
"initrd_addr=0x83800000\0" \