[RFC PATCH 2/2] ARM: boards: phytec-som-imx6: re-apply BSP environment after board defaultenv
Florijan Plohl
florijan.plohl at norik.com
Tue Oct 6 22:59:53 PDT 2026
From: Primoz Fiser <primoz.fiser at norik.com>
physom_imx6_probe() appends the board's own defaultenv-physom-imx6*
directories via defaultenv_append_directory(). Since commit 7f1cc5dd869d
("defaultenv: add base and external defaultenv in pure_initcall") moved
the Kconfig/BSP-supplied environment (CONFIG_DEFAULT_ENVIRONMENT_PATH)
to an early pure_initcall, this probe - which runs later - now wins any
path collision against it.
For this board that silently shadows the per-machine environment a
Yocto BSP supplies via DEFAULT_ENVIRONMENT_PATH (e.g. meta-phytec's
env_add()-generated boot scripts) with the board's own, much older,
generic defaultenv-physom-imx6* content, without any build failure or
warning to indicate it.
Call the new defaultenv_append_external() after the board-specific
appends so the BSP-supplied environment, when actually provided, takes
final precedence again - restoring the pre-7f1cc5dd869d behavior for
this board. Standalone (non-Yocto) builds without a
DEFAULT_ENVIRONMENT_PATH are unaffected, and the board's own
defaultenv-physom-imx6* directories remain as the fallback for that
case.
Fixes: 7f1cc5dd869d ("defaultenv: add base and external defaultenv in pure_initcall")
Signed-off-by: Primoz Fiser <primoz.fiser at norik.com>
Signed-off-by: Florijan Plohl <florijan.plohl at norik.com>
---
arch/arm/boards/phytec-som-imx6/board.c | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/arch/arm/boards/phytec-som-imx6/board.c b/arch/arm/boards/phytec-som-imx6/board.c
index 7e6f61bc36..7f59f8864b 100644
--- a/arch/arm/boards/phytec-som-imx6/board.c
+++ b/arch/arm/boards/phytec-som-imx6/board.c
@@ -276,6 +276,18 @@ static int physom_imx6_probe(struct device *dev)
defaultenv_append_directory(defaultenv_physom_imx6ul_phycore);
}
+ /*
+ * Since barebox commit 7f1cc5dd869d ("defaultenv: add base and
+ * external defaultenv in pure_initcall"), the Kconfig/BSP-supplied
+ * environment (CONFIG_DEFAULT_ENVIRONMENT_PATH, i.e. Yocto's
+ * env_add()-generated content) is appended very early and no longer
+ * automatically wins over the board-specific defaultenv-physom-imx6*
+ * directories appended above. Re-append it here so it takes final
+ * precedence again when it is actually supplied (standalone/non-Yocto
+ * builds without DEFAULT_ENVIRONMENT_PATH content are unaffected).
+ */
+ defaultenv_append_external();
+
return 0;
}
--
2.43.0
More information about the barebox
mailing list