summaryrefslogtreecommitdiff
path: root/include/sha256.h
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2012-12-05 14:46:34 +0000
committerTom Rini <trini@ti.com>2012-12-11 13:17:33 -0700
commitec7381fbf6f77cc465eb06a1ab6f8a99df1e487c (patch)
treed352d38e00ee2cc7d404daa88842435df53a97d9 /include/sha256.h
parenta7d1d765793a05c0d6f7547122339dbecc94f6c3 (diff)
downloadu-boot-ec7381fbf6f77cc465eb06a1ab6f8a99df1e487c.tar.gz
u-boot-ec7381fbf6f77cc465eb06a1ab6f8a99df1e487c.tar.bz2
u-boot-ec7381fbf6f77cc465eb06a1ab6f8a99df1e487c.zip
sha256: Use const where possible and add watchdog function
In preparation for making the hash function common, we may as well use const where we can. Also add a watchdog version of the hashing function. Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'include/sha256.h')
-rw-r--r--include/sha256.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/include/sha256.h b/include/sha256.h
index e38ea898c3..beadab35ff 100644
--- a/include/sha256.h
+++ b/include/sha256.h
@@ -3,6 +3,9 @@
#define SHA256_SUM_LEN 32
+/* Reset watchdog each time we process this many bytes */
+#define CHUNKSZ_SHA256 (64 * 1024)
+
typedef struct {
uint32_t total[2];
uint32_t state[8];
@@ -10,7 +13,10 @@ typedef struct {
} sha256_context;
void sha256_starts(sha256_context * ctx);
-void sha256_update(sha256_context * ctx, uint8_t * input, uint32_t length);
+void sha256_update(sha256_context *ctx, const uint8_t *input, uint32_t length);
void sha256_finish(sha256_context * ctx, uint8_t digest[SHA256_SUM_LEN]);
+void sha256_csum_wd(const unsigned char *input, unsigned int ilen,
+ unsigned char *output, unsigned int chunk_sz);
+
#endif /* _SHA256_H */