OMAP3: igep00x0: Fix boot hang and add support for status LED.
[oweals/u-boot.git] / common / hash.c
index 3d953784af59e23920f228114fcf27bf4642d278..aceabc5caddb12d1c52d9b4c4028981ff01670b0 100644 (file)
@@ -15,8 +15,8 @@
 #include <malloc.h>
 #include <hw_sha.h>
 #include <hash.h>
-#include <sha1.h>
-#include <sha256.h>
+#include <u-boot/sha1.h>
+#include <u-boot/sha256.h>
 #include <asm/io.h>
 #include <asm/errno.h>
 
@@ -256,7 +256,7 @@ static int parse_verify_sum(struct hash_algo *algo, char *verify_str,
                        env_var = 1;
        }
 
-       if (env_var) {
+       if (!env_var) {
                ulong addr;
                void *buf;
 
@@ -347,7 +347,7 @@ int hash_command(const char *algo_name, int flags, cmd_tbl_t *cmdtp, int flag,
 {
        ulong addr, len;
 
-       if (argc < 2)
+       if ((argc < 2) || ((flags & HASH_FLAG_VERIFY) && (argc < 3)))
                return CMD_RET_USAGE;
 
        addr = simple_strtoul(*argv++, NULL, 16);
@@ -380,8 +380,6 @@ int hash_command(const char *algo_name, int flags, cmd_tbl_t *cmdtp, int flag,
 #else
                if (0) {
 #endif
-                       if (!argc)
-                               return CMD_RET_USAGE;
                        if (parse_verify_sum(algo, *argv, vsum,
                                        flags & HASH_FLAG_ENV)) {
                                printf("ERROR: %s does not contain a valid "