]> git.sur5r.net Git - u-boot/commitdiff
env: make env_import(_redund) return 0 on success, not 1
authorSimon Goldschmidt <sgoldschmidt@de.pepperl-fuchs.com>
Wed, 31 Jan 2018 13:47:10 +0000 (14:47 +0100)
committerTom Rini <trini@konsulko.com>
Wed, 31 Jan 2018 23:45:10 +0000 (18:45 -0500)
env_import (and env_import_redund) currently return 1 on success
and 0 on error. However, they are only used from functions
returning 0 on success or a negative value on error.

Let's clean this up by making env_import and env_import_redund
return 0 on success and -EIO on error (as was the case for all
users before).

Users that cared for the return value are also updated. Funny
enough, this only affects onenand.c and sf.c

Signed-off-by: Simon Goldschmidt <sgoldschmidt@de.pepperl-fuchs.com>
Acked-by: Maxime Ripard <maxime.ripard@free-electrons.com>
env/common.c
env/onenand.c
env/sf.c

index c633502d68bb00b064c48c0f9eda0f165cbff99a..363ba6feadfed905e34ddfe2a444a4da966c2d1b 100644 (file)
@@ -118,21 +118,21 @@ int env_import(const char *buf, int check)
 
                if (crc32(0, ep->data, ENV_SIZE) != crc) {
                        set_default_env("!bad CRC");
-                       return 0;
+                       return -EIO;
                }
        }
 
        if (himport_r(&env_htab, (char *)ep->data, ENV_SIZE, '\0', 0, 0,
                        0, NULL)) {
                gd->flags |= GD_FLG_ENV_READY;
-               return 1;
+               return 0;
        }
 
        pr_err("Cannot import environment: errno = %d\n", errno);
 
        set_default_env("!import failed");
 
-       return 0;
+       return -EIO;
 }
 
 #ifdef CONFIG_SYS_REDUNDAND_ENVIRONMENT
@@ -153,7 +153,7 @@ int env_import_redund(const char *buf1, const char *buf2)
 
        if (!crc1_ok && !crc2_ok) {
                set_default_env("!bad CRC");
-               return 0;
+               return -EIO;
        } else if (crc1_ok && !crc2_ok) {
                gd->env_valid = ENV_VALID;
        } else if (!crc1_ok && crc2_ok) {
index 2e3045c5f5de69b9de5acaa60eb58df1c8f435af..10a8cccbe8a47a3fa925bc4e8034d7dcde082ae7 100644 (file)
@@ -57,10 +57,10 @@ static int env_onenand_load(void)
 #endif /* !ENV_IS_EMBEDDED */
 
        rc = env_import(buf, 1);
-       if (rc)
+       if (!rc)
                gd->env_valid = ENV_VALID;
 
-       return rc ? 0 : -EIO;
+       return rc;
 }
 
 static int env_onenand_save(void)
index a2e4c93631564046c1a2a28896bb2bf78f752ced..3dc54410df496c6ebaddcbd4c5e5e63ec6d4211c 100644 (file)
--- a/env/sf.c
+++ b/env/sf.c
@@ -236,7 +236,7 @@ static int env_sf_load(void)
                ep = tmp_env2;
 
        ret = env_import((char *)ep, 0);
-       if (!ret) {
+       if (ret) {
                pr_err("Cannot import environment: errno = %d\n", errno);
                set_default_env("!env_import failed");
        }
@@ -336,7 +336,7 @@ static int env_sf_load(void)
        }
 
        ret = env_import(buf, 1);
-       if (ret)
+       if (!ret)
                gd->env_valid = ENV_VALID;
 
 err_read: