From 92761fcc2fdad58e74dd54e24b55e645adca1241 Mon Sep 17 00:00:00 2001 From: "Cooper Jr., Franklin" Date: Fri, 16 Jun 2017 17:25:27 -0500 Subject: [PATCH] ARM: k2g: Update board_name u-boot env variable at runtime 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 Reviewed-by: Tom Rini --- 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 9001255f82..fcab9c6c6e 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 1cc3576984..5bf630e7f2 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.25.1