From: Simon Glass Date: Thu, 3 Aug 2017 18:22:06 +0000 (-0600) Subject: env: Drop env_get_char_spec() X-Git-Url: http://git.dujemihanovic.xyz/login.html?a=commitdiff_plain;h=a69d0f60e500a7ba0be8d33fb6321e3b38cd21df;p=u-boot.git env: Drop env_get_char_spec() We only have a single implementation of this function now and it is called env_get_char(). Drop the old function and the weak version. Reviewed-by: Tom Rini Signed-off-by: Simon Glass --- diff --git a/env/common.c b/env/common.c index 842c0f7fd1..9b3a26859f 100644 --- a/env/common.c +++ b/env/common.c @@ -27,20 +27,6 @@ struct hsearch_data env_htab = { .change_ok = env_flags_validate, }; -__weak uchar env_get_char_spec(int index) -{ - return *(uchar *)(gd->env_addr + index); -} - -uchar env_get_char(int index) -{ - /* if env is not set up, or crc was bad, use the default environment */ - if (!gd->env_valid) - return default_environment[index]; - else - return env_get_char_spec(index); -} - /* * Read an environment variable as a boolean * Return -1 if variable does not exist (default to true) diff --git a/env/env.c b/env/env.c index ac6a583a02..a239d93156 100644 --- a/env/env.c +++ b/env/env.c @@ -69,11 +69,13 @@ struct env_driver *env_driver_lookup_default(void) return drv; } -int env_get_char_new(int index) +int env_get_char(int index) { struct env_driver *drv = env_driver_lookup_default(); int ret; + if (!gd->env_valid) + return default_environment[index]; if (!drv) return -ENODEV; if (!drv->get_char) @@ -148,11 +150,6 @@ int env_init(void) return 0; } -unsigned char env_get_char_spec(int index) -{ - return *(uchar *)(gd->env_addr + index); -} - void env_relocate_spec(void) { env_load(); diff --git a/include/environment.h b/include/environment.h index 584fd7216d..1df243462e 100644 --- a/include/environment.h +++ b/include/environment.h @@ -171,7 +171,6 @@ extern const unsigned char default_environment[]; extern env_t *env_ptr; extern void env_relocate_spec(void); -extern unsigned char env_get_char_spec(int); #if defined(CONFIG_NEEDS_MANUAL_RELOC) extern void env_reloc(void); @@ -281,9 +280,6 @@ struct env_driver { extern struct hsearch_data env_htab; -/* Function that returns a character from the environment */ -unsigned char env_get_char(int); - /* Function that updates CRC of the enironment */ void env_crc_update(void); @@ -314,6 +310,16 @@ int env_import_redund(const char *buf1, const char *buf2); */ struct env_driver *env_driver_lookup_default(void); +/** + * env_get_char() - Get a character from the early environment + * + * This reads from the pre-relocation environemnt + * + * @index: Index of character to read (0 = first) + * @return character read, or -ve on error + */ +int env_get_char(int index); + #endif /* DO_DEPS_ONLY */ #endif /* _ENVIRONMENT_H_ */