[U-Boot] [PATCH v3 18/24] env: Drop env_get_char_spec()
Simon Glass
sjg at chromium.org
Wed Jul 26 17:19:42 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 v3: None
Changes in v2: None
env/common.c | 14 --------------
env/env.c | 15 +++------------
include/environment.h | 14 ++++++++++----
3 files changed, 13 insertions(+), 30 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 70ce2857c3..809889f55e 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,17 +150,6 @@ int env_init(void)
return 0;
}
-unsigned char env_get_char_spec(int index)
-{
- int ch;
-
- ch = env_get_char(index);
- if (ch < 0)
- return 0;
-
- return ch;
-}
-
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