From: Jonathan Humphreys <[email protected]> For use-cases such as USB DFU Boot, "spl_dfu_cmd()" will setup the appropriate value for "dfu_alt_info". To facilitate such use-cases and in order to avoid overwriting the value of "dfu_alt_info", invoke the "set_dfu_alt_info()" function only when "dfu_alt_info" is not defined.
Signed-off-by: Jonathan Humphreys <[email protected]> Signed-off-by: Siddharth Vadapalli <[email protected]> --- drivers/dfu/dfu.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/drivers/dfu/dfu.c b/drivers/dfu/dfu.c index 756569217bb..ab8abae1d89 100644 --- a/drivers/dfu/dfu.c +++ b/drivers/dfu/dfu.c @@ -169,10 +169,13 @@ int dfu_init_env_entities(char *interface, char *devstr) dfu_reinit_needed = false; dfu_alt_info_changed = false; + str_env = env_get("dfu_alt_info"); #ifdef CONFIG_SET_DFU_ALT_INFO - set_dfu_alt_info(interface, devstr); + if (!str_env) { + set_dfu_alt_info(interface, devstr); + str_env = env_get("dfu_alt_info"); + } #endif - str_env = env_get("dfu_alt_info"); if (!str_env) { pr_err("\"dfu_alt_info\" env variable not defined!\n"); return -EINVAL; -- 2.43.0

