Calculating the checksum of incompletely read data is useless. Signed-off-by: Phil Sutter <phil.sut...@viprinet.com> --- common/env_nand.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/common/env_nand.c b/common/env_nand.c index 58ba558..038aa00 100644 --- a/common/env_nand.c +++ b/common/env_nand.c @@ -333,8 +333,8 @@ void env_relocate_spec(void) if (read1_fail && read2_fail) puts("No Valid Environment Area found\n"); - crc1_ok = crc32(0, tmp_env1->data, ENV_SIZE) == tmp_env1->crc; - crc2_ok = crc32(0, tmp_env2->data, ENV_SIZE) == tmp_env2->crc; + crc1_ok = !read1_fail && (crc32(0, tmp_env1->data, ENV_SIZE) == tmp_env1->crc); + crc2_ok = !read2_fail && (crc32(0, tmp_env2->data, ENV_SIZE) == tmp_env2->crc); if (!crc1_ok && !crc2_ok) { set_default_env("!bad CRC"); -- 1.7.3.4 _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot