]> git.karo-electronics.de Git - karo-tx-uboot.git/blobdiff - common/hash.c
powerpc/85xx: fix build error introduced by serdes_get_prtcl
[karo-tx-uboot.git] / common / hash.c
index 0d04c4c9a0ce381f879ba48bca2e153d6d40e4ef..c9ac33e2c40ac3d48c4db79f323b0ed645a27274 100644 (file)
@@ -25,6 +25,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <hw_sha.h>
 #include <hash.h>
 #include <sha1.h>
 #include <sha256.h>
 
 /*
  * These are the hash algorithms we support. Chips which support accelerated
- * crypto could perhaps add named version of these algorithms here.
+ * crypto could perhaps add named version of these algorithms here. Note that
+ * algorithm names must be in lower case.
  */
 static struct hash_algo hash_algo[] = {
+       /*
+        * CONFIG_SHA_HW_ACCEL is defined if hardware acceleration is
+        * available.
+        */
+#ifdef CONFIG_SHA_HW_ACCEL
+       {
+               "sha1",
+               SHA1_SUM_LEN,
+               hw_sha1,
+               CHUNKSZ_SHA1,
+       }, {
+               "sha256",
+               SHA256_SUM_LEN,
+               hw_sha256,
+               CHUNKSZ_SHA256,
+       },
+#endif
        /*
         * This is CONFIG_CMD_SHA1SUM instead of CONFIG_SHA1 since otherwise
         * it bloats the code for boards which use SHA1 but not the 'hash'
@@ -42,7 +61,7 @@ static struct hash_algo hash_algo[] = {
         */
 #ifdef CONFIG_CMD_SHA1SUM
        {
-               "SHA1",
+               "sha1",
                SHA1_SUM_LEN,
                sha1_csum_wd,
                CHUNKSZ_SHA1,
@@ -51,7 +70,7 @@ static struct hash_algo hash_algo[] = {
 #endif
 #ifdef CONFIG_SHA256
        {
-               "SHA256",
+               "sha256",
                SHA256_SUM_LEN,
                sha256_csum_wd,
                CHUNKSZ_SHA256,
@@ -59,7 +78,7 @@ static struct hash_algo hash_algo[] = {
 #define MULTI_HASH
 #endif
        {
-               "CRC32",
+               "crc32",
                4,
                crc32_wd_buf,
                CHUNKSZ_CRC32,
@@ -202,7 +221,7 @@ static struct hash_algo *find_hash_algo(const char *name)
        int i;
 
        for (i = 0; i < ARRAY_SIZE(hash_algo); i++) {
-               if (!strcasecmp(name, hash_algo[i].name))
+               if (!strcmp(name, hash_algo[i].name))
                        return &hash_algo[i];
        }