From 1d1f59d2ec5dce4a5791450eda96dee9641bb642 Mon Sep 17 00:00:00 2001 From: Max Krummenacher Date: Thu, 15 Oct 2020 09:50:55 +0200 Subject: verdin-imx8mm: refine hardware version detection This adds the new Wi-Fi SKU VERDIN_IMX8MMDL_WIFI_BT_IT and does only set and save the environment if 'variant' is not already set correctly. Signed-off-by: Max Krummenacher --- board/toradex/verdin-imx8mm/verdin-imx8mm.c | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/board/toradex/verdin-imx8mm/verdin-imx8mm.c b/board/toradex/verdin-imx8mm/verdin-imx8mm.c index abb4079087..62b0c0319c 100644 --- a/board/toradex/verdin-imx8mm/verdin-imx8mm.c +++ b/board/toradex/verdin-imx8mm/verdin-imx8mm.c @@ -536,6 +536,7 @@ static pcb_rev_t get_pcb_revision(void) static void select_dt_from_module_version(void) { char variant[32]; + char *env_variant = env_get("variant"); int is_wifi = 0; #ifdef CONFIG_TDX_CFG_BLOCK @@ -543,7 +544,8 @@ static void select_dt_from_module_version(void) * If we have a valid config block and it says we are a module with * Wi-Fi/Bluetooth make sure we use the -wifi device tree. */ - is_wifi = tdx_hw_tag.prodid == VERDIN_IMX8MMQ_WIFI_BT_IT; + is_wifi = (tdx_hw_tag.prodid == VERDIN_IMX8MMQ_WIFI_BT_IT) || + (tdx_hw_tag.prodid == VERDIN_IMX8MMDL_WIFI_BT_IT); #endif switch(get_pcb_revision()) { @@ -561,12 +563,14 @@ static void select_dt_from_module_version(void) strncpy(&variant[0], "nonwifi-v1.1", sizeof(variant)); break; } - printf("Setting variant to %s\n", variant); - env_set("variant", variant); - env_set("variant1", "bla"); + + if (strcmp(variant, env_variant)) { + printf("Setting variant to %s\n", variant); + env_set("variant", variant); #ifndef CONFIG_ENV_IS_NOWHERE - env_save(); + env_save(); #endif + } } int board_late_init(void) -- cgit v1.2.3