diff options
author | Andrejs Cainikovs <andrejs.cainikovs@toradex.com> | 2021-08-16 10:03:53 +0200 |
---|---|---|
committer | Andrejs Cainikovs <andrejs.cainikovs@toradex.com> | 2023-03-07 16:25:53 +0100 |
commit | 5027b999843fcd6e55df76d6436d3d771cb3a6d8 (patch) | |
tree | b141a3fc24655e4056aa610dc2aab6c9cf3d5c22 | |
parent | 2cfe1f256d8343067d61227c36ac0dd81eeb587f (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.c | 14 | ||||
-rw-r--r-- | configs/colibri-imx8x_defconfig | 2 | ||||
-rw-r--r-- | include/configs/colibri-imx8x.h | 3 |
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" \ |