diff options
Diffstat (limited to 'env/sata.c')
-rw-r--r-- | env/sata.c | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/env/sata.c b/env/sata.c index 16d8f939db..a77029774e 100644 --- a/env/sata.c +++ b/env/sata.c @@ -98,21 +98,24 @@ static void env_sata_load(void) int env_sata; if (sata_initialize()) - return; + return -EIO; env_sata = sata_get_env_dev(); sata = sata_get_dev(env_sata); if (sata == NULL) { - printf("Unknown SATA(%d) device for environment!\n", - env_sata); - return; + printf("Unknown SATA(%d) device for environment!\n", env_sata); + return -EIO; } - if (read_env(sata, CONFIG_ENV_SIZE, CONFIG_ENV_OFFSET, buf)) - return set_default_env(NULL); + if (read_env(sata, CONFIG_ENV_SIZE, CONFIG_ENV_OFFSET, buf)) { + set_default_env(NULL); + return -EIO; + } env_import(buf, 1); + + return 0; } U_BOOT_ENV_LOCATION(sata) = { |