aboutsummaryrefslogtreecommitdiff
path: root/env/common.c
diff options
context:
space:
mode:
authorPatrick Delaunay2019-04-18 17:32:49 +0200
committerPatrice Chotard2019-05-23 11:36:48 +0200
commit7d4776545b0f8a8827e5d061206faf61c9ba6ea9 (patch)
treed2319bdbb446896b5b5a86347e86c26c16b40f80 /env/common.c
parentc3e828bff26a14dba9b66ead8d01937aae97657d (diff)
env: solve compilation error in SPL
Solve compilation issue when cli_simple.o is used in SPL and CONFIG_SPL_ENV_SUPPORT is not defined. env/built-in.o:(.data.env_htab+0xc): undefined reference to `env_flags_validate' u-boot/scripts/Makefile.spl:384: recipe for target 'spl/u-boot-spl' failed make[2]: *** [spl/u-boot-spl] Error 1 u-boot/Makefile:1649: recipe for target 'spl/u-boot-spl' failed make[1]: *** [spl/u-boot-spl] Error 2 Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
Diffstat (limited to 'env/common.c')
-rw-r--r--env/common.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/env/common.c b/env/common.c
index 324502ed829..bd340fe9d52 100644
--- a/env/common.c
+++ b/env/common.c
@@ -23,7 +23,10 @@ DECLARE_GLOBAL_DATA_PTR;
#include <env_default.h>
struct hsearch_data env_htab = {
+#if CONFIG_IS_ENABLED(ENV_SUPPORT)
+ /* defined in flags.c, only compile with ENV_SUPPORT */
.change_ok = env_flags_validate,
+#endif
};
/*
@@ -225,7 +228,9 @@ void env_relocate(void)
#if defined(CONFIG_NEEDS_MANUAL_RELOC)
env_reloc();
env_fix_drivers();
- env_htab.change_ok += gd->reloc_off;
+
+ if (env_htab.change_ok)
+ env_htab.change_ok += gd->reloc_off;
#endif
if (gd->env_valid == ENV_INVALID) {
#if defined(CONFIG_ENV_IS_NOWHERE) || defined(CONFIG_SPL_BUILD)