]> git.kernelconcepts.de Git - karo-tx-uboot.git/blobdiff - common/env_nand.c
Merge branch 'master' of git://git.denx.de/u-boot-blackfin
[karo-tx-uboot.git] / common / env_nand.c
index 47d9848acb2e50fe2b930dfa3b7e95b654e27a9f..a5e1038315bd01c520c25809e29fad01359d88d1 100644 (file)
@@ -299,23 +299,21 @@ int get_nand_env_oob(nand_info_t *nand, unsigned long *result)
        ops.oobbuf = (void *) oob_buf;
 
        ret = nand->read_oob(nand, ENV_OFFSET_SIZE, &ops);
+       if (ret) {
+               printf("error reading OOB block 0\n");
+               return ret;
+       }
 
-       if (!ret) {
-               if (oob_buf[0] == ENV_OOB_MARKER) {
-                       *result = oob_buf[1] * nand->erasesize;
-               } else if (oob_buf[0] == ENV_OOB_MARKER_OLD) {
-                       *result = oob_buf[1];
-               } else {
-                       printf("No dynamic environment marker in OOB block 0"
-                                                                       "\n");
-                       ret = -ENOENT;
-                       goto fail;
-               }
+       if (oob_buf[0] == ENV_OOB_MARKER) {
+               *result = oob_buf[1] * nand->erasesize;
+       } else if (oob_buf[0] == ENV_OOB_MARKER_OLD) {
+               *result = oob_buf[1];
        } else {
-               printf("error reading OOB block 0\n");
+               printf("No dynamic environment marker in OOB block 0\n");
+               return -ENOENT;
        }
-fail:
-       return ret;
+
+       return 0;
 }
 #endif