@@ -14,8 +14,6 @@
DECLARE_GLOBAL_DATA_PTR;
-env_t *env_ptr;
-
static unsigned char env_dataflash_get_char(int index)
{
uchar c;
@@ -21,8 +21,6 @@
DECLARE_GLOBAL_DATA_PTR;
-env_t *env_ptr;
-
static int eeprom_bus_read(unsigned dev_addr, unsigned offset,
uchar *buffer, unsigned cnt)
{
@@ -196,8 +194,6 @@ static int env_eeprom_save(void)
char flag_obsolete = OBSOLETE_FLAG;
#endif
- BUG_ON(env_ptr != NULL);
-
rc = env_export(&env_new);
if (rc)
return rc;
@@ -31,8 +31,6 @@
#include <ext4fs.h>
#include <mmc.h>
-env_t *env_ptr;
-
DECLARE_GLOBAL_DATA_PTR;
#ifdef CONFIG_CMD_SAVEENV
@@ -19,8 +19,6 @@
#include <fat.h>
#include <mmc.h>
-env_t *env_ptr;
-
DECLARE_GLOBAL_DATA_PTR;
#if defined(CONFIG_CMD_SAVEENV) && !defined(CONFIG_SPL_BUILD)
@@ -23,12 +23,6 @@
#error CONFIG_ENV_SIZE_REDUND should be the same as CONFIG_ENV_SIZE
#endif
-#ifdef ENV_IS_EMBEDDED
-env_t *env_ptr = &environment;
-#else /* ! ENV_IS_EMBEDDED */
-env_t *env_ptr;
-#endif /* ENV_IS_EMBEDDED */
-
DECLARE_GLOBAL_DATA_PTR;
#if !defined(CONFIG_ENV_OFFSET)
@@ -284,8 +278,6 @@ static void env_mmc_load(void)
gd->env_valid = ENV_VALID;
}
- free(env_ptr);
-
if (gd->env_valid == ENV_VALID)
ep = tmp_env1;
else
@@ -361,8 +361,6 @@ static void env_nand_load(void)
gd->env_valid = ENV_VALID;
}
- free(env_ptr);
-
if (gd->env_valid == ENV_VALID)
ep = tmp_env1;
else
@@ -15,8 +15,6 @@
DECLARE_GLOBAL_DATA_PTR;
-env_t *env_ptr;
-
U_BOOT_ENV_LOCATION(nowhere) = {
.location = ENVL_NOWHERE,
ENV_NAME("nowhere")
@@ -36,7 +36,6 @@ DECLARE_GLOBAL_DATA_PTR;
#ifdef CONFIG_SYS_NVRAM_ACCESS_ROUTINE
extern void *nvram_read(void *dest, const long src, size_t count);
extern void nvram_write(long dest, const void *src, size_t count);
-env_t *env_ptr;
#else
env_t *env_ptr = (env_t *)CONFIG_ENV_ADDR;
#endif
@@ -16,8 +16,6 @@
#include <ubi_uboot.h>
#undef crc32
-env_t *env_ptr;
-
DECLARE_GLOBAL_DATA_PTR;
#ifdef CONFIG_CMD_SAVEENV
This variable is declared as a global in most environment location drivers. But it is not used outside the drivers and most of the declarations are unnecessary. Also some drivers call free() on env_ptr which seems wrong since it is not in the heap. Drop the variable where possible, and all calls to free(). Signed-off-by: Simon Glass <sjg@chromium.org> --- env/dataflash.c | 2 -- env/eeprom.c | 4 ---- env/ext4.c | 2 -- env/fat.c | 2 -- env/mmc.c | 8 -------- env/nand.c | 2 -- env/nowhere.c | 2 -- env/nvram.c | 1 - env/ubi.c | 2 -- 9 files changed, 25 deletions(-)