Re: [U-Boot] [PATCH 09/10][v6] Use hash.c in mkimage

2015-01-28 Thread Simon Glass
On 26 January 2015 at 06:39, Simon Glass s...@chromium.org wrote:
 On 23 January 2015 at 03:31, Ruchika Gupta ruchika.gu...@freescale.com 
 wrote:
 Signed-off-by: Ruchika Gupta ruchika.gu...@freescale.com
 CC: Simon Glass s...@chromium.org
 ---
 Changes in v6:
 Fixed compilation error in this file for tools when FIT_SIGNATURE not enabled

 Changes in v5:
 New patch based on WIP patch by Simon.

  common/hash.c  | 81 
 +-
  include/hash.h | 34 
  tools/Makefile |  1 +
  3 files changed, 65 insertions(+), 51 deletions(-)

 Acked-by: Simon Glass s...@chromium.org

Applied to u-boot-dm, thanks!
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 09/10][v6] Use hash.c in mkimage

2015-01-26 Thread Simon Glass
On 23 January 2015 at 03:31, Ruchika Gupta ruchika.gu...@freescale.com wrote:
 Signed-off-by: Ruchika Gupta ruchika.gu...@freescale.com
 CC: Simon Glass s...@chromium.org
 ---
 Changes in v6:
 Fixed compilation error in this file for tools when FIT_SIGNATURE not enabled

 Changes in v5:
 New patch based on WIP patch by Simon.

  common/hash.c  | 81 
 +-
  include/hash.h | 34 
  tools/Makefile |  1 +
  3 files changed, 65 insertions(+), 51 deletions(-)

Acked-by: Simon Glass s...@chromium.org
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [PATCH 09/10][v6] Use hash.c in mkimage

2015-01-23 Thread Ruchika Gupta
Signed-off-by: Ruchika Gupta ruchika.gu...@freescale.com
CC: Simon Glass s...@chromium.org
---
Changes in v6:
Fixed compilation error in this file for tools when FIT_SIGNATURE not enabled

Changes in v5:
New patch based on WIP patch by Simon.

 common/hash.c  | 81 +-
 include/hash.h | 34 
 tools/Makefile |  1 +
 3 files changed, 65 insertions(+), 51 deletions(-)

diff --git a/common/hash.c b/common/hash.c
index c4d8c3a..d154d02 100644
--- a/common/hash.c
+++ b/common/hash.c
@@ -10,15 +10,24 @@
  * SPDX-License-Identifier:GPL-2.0+
  */
 
+#ifndef USE_HOSTCC
 #include common.h
 #include command.h
 #include malloc.h
 #include hw_sha.h
+#include asm/io.h
+#include asm/errno.h
+#else
+#include mkimage.h
+#include time.h
+#include image.h
+#endif /* !USE_HOSTCC*/
+
 #include hash.h
+#include u-boot/crc.h
 #include u-boot/sha1.h
 #include u-boot/sha256.h
-#include asm/io.h
-#include asm/errno.h
+#include u-boot/md5.h
 
 #ifdef CONFIG_SHA1
 static int hash_init_sha1(struct hash_algo *algo, void **ctxp)
@@ -173,6 +182,40 @@ static struct hash_algo hash_algo[] = {
 #define multi_hash()   0
 #endif
 
+int hash_lookup_algo(const char *algo_name, struct hash_algo **algop)
+{
+   int i;
+
+   for (i = 0; i  ARRAY_SIZE(hash_algo); i++) {
+   if (!strcmp(algo_name, hash_algo[i].name)) {
+   *algop = hash_algo[i];
+   return 0;
+   }
+   }
+
+   debug(Unknown hash algorithm '%s'\n, algo_name);
+   return -EPROTONOSUPPORT;
+}
+
+int hash_progressive_lookup_algo(const char *algo_name,
+struct hash_algo **algop)
+{
+   int i;
+
+   for (i = 0; i  ARRAY_SIZE(hash_algo); i++) {
+   if (!strcmp(algo_name, hash_algo[i].name)) {
+   if (hash_algo[i].hash_init) {
+   *algop = hash_algo[i];
+   return 0;
+   }
+   }
+   }
+
+   debug(Unknown hash algorithm '%s'\n, algo_name);
+   return -EPROTONOSUPPORT;
+}
+
+#ifndef USE_HOSTCC
 /**
  * store_result: Store the resulting sum to an address or variable
  *
@@ -293,39 +336,6 @@ static int parse_verify_sum(struct hash_algo *algo, char 
*verify_str,
return 0;
 }
 
-int hash_lookup_algo(const char *algo_name, struct hash_algo **algop)
-{
-   int i;
-
-   for (i = 0; i  ARRAY_SIZE(hash_algo); i++) {
-   if (!strcmp(algo_name, hash_algo[i].name)) {
-   *algop = hash_algo[i];
-   return 0;
-   }
-   }
-
-   debug(Unknown hash algorithm '%s'\n, algo_name);
-   return -EPROTONOSUPPORT;
-}
-
-int hash_progressive_lookup_algo(const char *algo_name,
-struct hash_algo **algop)
-{
-   int i;
-
-   for (i = 0; i  ARRAY_SIZE(hash_algo); i++) {
-   if (!strcmp(algo_name, hash_algo[i].name)) {
-   if (hash_algo[i].hash_init) {
-   *algop = hash_algo[i];
-   return 0;
-   }
-   }
-   }
-
-   debug(Unknown hash algorithm '%s'\n, algo_name);
-   return -EPROTONOSUPPORT;
-}
-
 void hash_show(struct hash_algo *algo, ulong addr, ulong len, uint8_t *output)
 {
int i;
@@ -439,3 +449,4 @@ int hash_command(const char *algo_name, int flags, 
cmd_tbl_t *cmdtp, int flag,
 
return 0;
 }
+#endif
diff --git a/include/hash.h b/include/hash.h
index c0a7ebc..f4eb100 100644
--- a/include/hash.h
+++ b/include/hash.h
@@ -17,7 +17,6 @@ enum {
HASH_FLAG_ENV   = 1  1,   /* Allow env vars */
 };
 
-#ifndef USE_HOSTCC
 #if defined(CONFIG_SHA1SUM_VERIFY) || defined(CONFIG_CRC32_VERIFY)
 #define CONFIG_HASH_VERIFY
 #endif
@@ -77,6 +76,7 @@ struct hash_algo {
   int size);
 };
 
+#ifndef USE_HOSTCC
 /**
  * hash_command: Process a hash command for a particular algorithm
  *
@@ -115,6 +115,23 @@ int hash_block(const char *algo_name, const void *data, 
unsigned int len,
   uint8_t *output, int *output_size);
 
 /**
+ * hash_show() - Print out a hash algorithm and value
+ *
+ * You will get a message like this (without a newline at the end):
+ *
+ * sha1 for 9eb3337c ... 9eb3338f == 
7942ef1df479fd3130f716eb9613d107dab7e257
+ *
+ * @algo:  Algorithm used for hash
+ * @addr:  Address of data that was hashed
+ * @len:   Length of data that was hashed
+ * @output:Hash value to display
+ */
+void hash_show(struct hash_algo *algo, ulong addr, ulong len,
+  uint8_t *output);
+
+#endif /* !USE_HOSTCC */
+
+/**
  * hash_lookup_algo() - Look up the hash_algo struct for an algorithm
  *
  * The function returns the pointer to the struct or -EPROTONOSUPPORT if the
@@ -141,19 +158,4 @@ int hash_lookup_algo(const char