summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--common/env_flash.c4
-rw-r--r--include/environment.h11
2 files changed, 12 insertions, 3 deletions
diff --git a/common/env_flash.c b/common/env_flash.c
index 19e2282643..426d01b19b 100644
--- a/common/env_flash.c
+++ b/common/env_flash.c
@@ -160,9 +160,11 @@ int env_init(void)
#ifdef CMD_SAVEENV
int saveenv(void)
{
+ char *saved_data = NULL;
int rc = 1;
+#if CFG_ENV_SECT_SIZE > CFG_ENV_SIZE
ulong up_data = 0;
- char *saved_data = NULL;
+#endif
debug ("Protect off %08lX ... %08lX\n",
(ulong)flash_addr, end_addr);
diff --git a/include/environment.h b/include/environment.h
index fe8465b960..bb109649f6 100644
--- a/include/environment.h
+++ b/include/environment.h
@@ -47,8 +47,15 @@
# if !defined(CFG_ENV_ADDR_REDUND) && defined(CFG_ENV_OFFSET_REDUND)
# define CFG_ENV_ADDR_REDUND (CFG_FLASH_BASE + CFG_ENV_OFFSET_REDUND)
# endif
-# ifndef CFG_ENV_SIZE
-# define CFG_ENV_SIZE CFG_ENV_SECT_SIZE
+# if defined(CFG_ENV_SECT_SIZE) || defined(CFG_ENV_SIZE)
+# ifndef CFG_ENV_SECT_SIZE
+# define CFG_ENV_SECT_SIZE CFG_ENV_SIZE
+# endif
+# ifndef CFG_ENV_SIZE
+# define CFG_ENV_SIZE CFG_ENV_SECT_SIZE
+# endif
+# else
+# error "Both CFG_ENV_SECT_SIZE and CFG_ENV_SIZE undefined"
# endif
# if defined(CFG_ENV_ADDR_REDUND) && !defined(CFG_ENV_SIZE_REDUND)
# define CFG_ENV_SIZE_REDUND CFG_ENV_SIZE