[U-Boot] [PATCH v4 18/29] env: Drop env_get_char_spec()

Simon Glass sjg at chromium.org
Mon Jul 31 14:46:18 UTC 2017


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 <trini at konsulko.com>
Signed-off-by: Simon Glass <sjg at chromium.org>
---

Changes in v4: None
Changes in v3: None
Changes in v2: None

 env/common.c          | 14 --------------
 env/env.c             |  9 +++------
 include/environment.h | 14 ++++++++++----
 3 files changed, 13 insertions(+), 24 deletions(-)

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_ */
-- 
2.14.0.rc0.400.g1c36432dff-goog



More information about the U-Boot mailing list