From b54bfeeeed2c7239aeecfefe0ff3fcacadb8d25e Mon Sep 17 00:00:00 2001 From: Shenwei Wang Date: Fri, 28 Sep 2018 15:37:32 -0500 Subject: MLK-19767: imx7ulp: configs: add a new macro for kernel dtb The current u-boot configures the fdt_file environment variable to the file name of that built together with u-boot. Sometimes Linux kernel needs another dtb file other than the one built with u-boot. For example, imx7ulp needs to build imx7ulp-evk-qspi.dts for u-boot, but the kernel needs imx7ulp-evk.dts. Adding this new macro to let the user have an option to specify a dtb file to run Linux kernel. Signed-off-by: Shenwei Wang (cherry picked from commit 26766be89286cad4946655b3004ab0fc4ef63a65) --- configs/mx7ulp_evk_defconfig | 1 + dts/Kconfig | 4 ++++ include/configs/mx7ulp_evk.h | 9 ++++++++- 3 files changed, 13 insertions(+), 1 deletion(-) diff --git a/configs/mx7ulp_evk_defconfig b/configs/mx7ulp_evk_defconfig index 07b9c7bf1f..5aac45b877 100644 --- a/configs/mx7ulp_evk_defconfig +++ b/configs/mx7ulp_evk_defconfig @@ -3,6 +3,7 @@ CONFIG_ARCH_MX7ULP=y CONFIG_SYS_TEXT_BASE=0x67800000 CONFIG_TARGET_MX7ULP_EVK=y CONFIG_DEFAULT_DEVICE_TREE="imx7ulp-evk-qspi" +CONFIG_KERNEL_USE_STD_DTB="imx7ulp-evk" CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/mx7ulp_evk/imximage.cfg" CONFIG_BOARD_EARLY_INIT_F=y CONFIG_HUSH_PARSER=y diff --git a/dts/Kconfig b/dts/Kconfig index 0cef225ba9..a04be55e8e 100644 --- a/dts/Kconfig +++ b/dts/Kconfig @@ -29,6 +29,10 @@ config OF_CONTROL This feature provides for run-time configuration of U-Boot via a flattened device tree. +config KERNEL_USE_STD_DTB + string "Specify the dtb file name for Linux kernel" + default DEFAULT_DEVICE_TREE + config OF_BOARD_FIXUP bool "Board-specific manipulation of Device Tree" help diff --git a/include/configs/mx7ulp_evk.h b/include/configs/mx7ulp_evk.h index bbb7cb287d..449fb3512a 100644 --- a/include/configs/mx7ulp_evk.h +++ b/include/configs/mx7ulp_evk.h @@ -90,6 +90,13 @@ #define CONFIG_CMD_MEMTEST #define CONFIG_SYS_MEMTEST_END (CONFIG_SYS_MEMTEST_START + (PHYS_SDRAM_SIZE >> 1)) + +#ifdef CONFIG_KERNEL_USE_STD_DTB +#define LD_FDT_FILE CONFIG_KERNEL_USE_STD_DTB +#else +#define LD_FDT_FILE CONFIG_DEFAULT_DEVICE_TREE +#endif + #define CONFIG_MFG_ENV_SETTINGS \ CONFIG_MFG_ENV_SETTINGS_DEFAULT \ "initrd_addr=0x63800000\0" \ @@ -105,7 +112,7 @@ "console=ttyLP0\0" \ "fdt_high=0xffffffff\0" \ "initrd_high=0xffffffff\0" \ - "fdt_file=imx7ulp-evk.dtb\0" \ + "fdt_file=" LD_FDT_FILE ".dtb\0" \ "fdt_addr=0x63000000\0" \ "tee_addr=0x64000000\0" \ "tee_file=uTee-7ulp\0" \ -- cgit v1.2.3