aboutsummaryrefslogtreecommitdiff
path: root/env/fat.c
diff options
context:
space:
mode:
authorSimon Glass2017-08-03 12:22:17 -0600
committerTom Rini2017-08-16 08:31:24 -0400
commitc5951991942330c129f3b181e94969d7c01e9abb (patch)
tree39b5ee4ee37e5a595e088456e792d7251f7ee1ca /env/fat.c
parent21f639446d6bccb6cc550140d36bd3ebd74fcee8 (diff)
env: Adjust the load() method to return an error
The load() methods have inconsistent behaviour on error. Some of them load an empty default environment. Some load an environment containing an error message. Others do nothing. As a step in the right direction, have the method return an error code. Then the caller could handle this itself in a consistent way. Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'env/fat.c')
-rw-r--r--env/fat.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/env/fat.c b/env/fat.c
index a5a156c88b5..ec49c390536 100644
--- a/env/fat.c
+++ b/env/fat.c
@@ -74,7 +74,7 @@ static int env_fat_save(void)
#endif /* CMD_SAVEENV */
#ifdef LOADENV
-static void env_fat_load(void)
+static int env_fat_load(void)
{
ALLOC_CACHE_ALIGN_BUFFER(char, buf, CONFIG_ENV_SIZE);
struct blk_desc *dev_desc = NULL;
@@ -103,10 +103,12 @@ static void env_fat_load(void)
}
env_import(buf, 1);
- return;
+ return 0;
err_env_relocate:
set_default_env(NULL);
+
+ return -EIO;
}
#endif /* LOADENV */