[U-Boot] [PATCH] WIP: Use hash.c in mkimage
Simon Glass
sjg at chromium.org
Fri Jan 2 23:23:36 CET 2015
This is for Ruchika only.
I think it would be good to adjust the function ordering so that there is
only one '#ifdef USE_HOSTCC' in each of hash.c. This could be done by
moving hash_lookup_algo() up near the top of the file, above store_result().
Signed-off-by: Simon Glass <sjg at chromium.org>
---
common/hash.c | 18 +++++++++++++++++-
include/hash.h | 4 ++--
tools/Makefile | 1 +
3 files changed, 20 insertions(+), 3 deletions(-)
diff --git a/common/hash.c b/common/hash.c
index c4d8c3a..95beb6b 100644
--- a/common/hash.c
+++ b/common/hash.c
@@ -10,16 +10,28 @@
* SPDX-License-Identifier: GPL-2.0+
*/
+#ifndef USE_HOSTCC
+
#include <common.h>
#include <command.h>
#include <malloc.h>
#include <hw_sha.h>
-#include <hash.h>
#include <u-boot/sha1.h>
#include <u-boot/sha256.h>
#include <asm/io.h>
#include <asm/errno.h>
+#else
+
+#include "mkimage.h"
+#include <u-boot/md5.h>
+#include <time.h>
+#include <image.h>
+#endif /* !USE_HOSTCC*/
+
+#include <hash.h>
+#include <u-boot/crc.h>
+
#ifdef CONFIG_SHA1
static int hash_init_sha1(struct hash_algo *algo, void **ctxp)
{
@@ -173,6 +185,7 @@ static struct hash_algo hash_algo[] = {
#define multi_hash() 0
#endif
+#ifndef USE_HOSTCC
/**
* store_result: Store the resulting sum to an address or variable
*
@@ -292,6 +305,7 @@ static int parse_verify_sum(struct hash_algo *algo, char *verify_str,
}
return 0;
}
+#endif /* !USE_HOSTCC */
int hash_lookup_algo(const char *algo_name, struct hash_algo **algop)
{
@@ -326,6 +340,7 @@ int hash_progressive_lookup_algo(const char *algo_name,
return -EPROTONOSUPPORT;
}
+#ifndef USE_HOSTCC
void hash_show(struct hash_algo *algo, ulong addr, ulong len, uint8_t *output)
{
int i;
@@ -439,3 +454,4 @@ int hash_command(const char *algo_name, int flags, cmd_tbl_t *cmdtp, int flag,
return 0;
}
+#endif /* !USE_HOSTCC */
diff --git a/include/hash.h b/include/hash.h
index c0a7ebc..7a6a9aa 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
*
@@ -91,6 +91,7 @@ struct hash_algo {
*/
int hash_command(const char *algo_name, int flags, cmd_tbl_t *cmdtp, int flag,
int argc, char * const argv[]);
+#endif /* !USE_HOSTCC */
/**
* hash_block() - Hash a block according to the requested algorithm
@@ -155,5 +156,4 @@ int hash_progressive_lookup_algo(const char *algo_name,
*/
void hash_show(struct hash_algo *algo, ulong addr, ulong len,
uint8_t *output);
-#endif /* !USE_HOSTCC */
#endif
diff --git a/tools/Makefile b/tools/Makefile
index 46b90b2..ea76a3e 100644
--- a/tools/Makefile
+++ b/tools/Makefile
@@ -91,6 +91,7 @@ dumpimage-mkimage-objs := aisimage.o \
socfpgaimage.o \
lib/sha1.o \
lib/sha256.o \
+ common/hash.o \
ublimage.o \
$(LIBFDT_OBJS) \
$(RSA_OBJS-y)
--
2.2.0.rc0.207.ga3a616c
More information about the U-Boot
mailing list