[U-Boot] [PATCH v4 24/30] ARM: k2g: Update board_name u-boot env variable at runtime
Franklin S Cooper Jr
fcooper at ti.com
Fri Jun 16 22:25:27 UTC 2017
Enable CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG to allow "board_name" to
be set depending on the board it is being ran on.
Update findfdt to use this new dynamic board_name value to determine
which dtb should be used.
Signed-off-by: Franklin S Cooper Jr <fcooper at ti.com>
Reviewed-by: Tom Rini <trini at konsulko.com>
---
board/ti/ks2_evm/board_k2g.c | 6 ++++++
include/configs/k2g_evm.h | 13 +++++++++++--
2 files changed, 17 insertions(+), 2 deletions(-)
diff --git a/board/ti/ks2_evm/board_k2g.c b/board/ti/ks2_evm/board_k2g.c
index 9001255..fcab9c6 100644
--- a/board/ti/ks2_evm/board_k2g.c
+++ b/board/ti/ks2_evm/board_k2g.c
@@ -306,6 +306,12 @@ int board_late_init(void)
board_ti_set_ethaddr(1);
#endif
+#ifdef CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG
+ if (board_is_k2g_gp())
+ setenv("board_name", "66AK2GGP\0");
+ else if (board_is_k2g_ice())
+ setenv("board_name", "66AK2GIC\0");
+#endif
return 0;
}
#endif
diff --git a/include/configs/k2g_evm.h b/include/configs/k2g_evm.h
index 1cc3576..5bf630e 100644
--- a/include/configs/k2g_evm.h
+++ b/include/configs/k2g_evm.h
@@ -16,6 +16,8 @@
/* Platform type */
#define CONFIG_SOC_K2G
+#define CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG
+
/* U-Boot general configuration */
#define CONFIG_EXTRA_ENV_KS2_BOARD_SETTINGS \
DEFAULT_MMC_TI_ARGS \
@@ -28,7 +30,14 @@
"rd_spec=-\0" \
"args_ubi=setenv bootargs ${bootargs} rootfstype=ubifs " \
"root=ubi0:rootfs rootflags=sync rw ubi.mtd=ubifs,2048\0" \
- "name_fdt=keystone-k2g-evm.dtb\0" \
+ "findfdt="\
+ "if test $board_name = 66AK2GGP; then " \
+ "setenv name_fdt keystone-k2g-evm.dtb; " \
+ "else if test $board_name = 66AK2GIC; then " \
+ "setenv name_fdt keystone-k2g-ice.dtb; " \
+ "else if test $name_fdt = undefined; then " \
+ "echo WARNING: Could not determine device tree to use;"\
+ "fi;fi;fi;\0" \
"name_mon=skern-k2g.bin\0" \
"name_ubi=k2g-evm-ubifs.ubi\0" \
"name_uboot=u-boot-spi-k2g-evm.gph\0" \
@@ -46,7 +55,7 @@
"run envboot; " \
"run set_name_pmmc init_${boot} init_fw_rd_${boot} " \
"get_pmmc_${boot} run_pmmc get_mon_${boot} run_mon " \
- "get_fdt_${boot} get_kern_${boot} run_kern"
+ "findfdt get_fdt_${boot} get_kern_${boot} run_kern"
/* SPL SPI Loader Configuration */
#define CONFIG_SPL_TEXT_BASE 0x0c080000
--
2.10.0
More information about the U-Boot
mailing list