summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2017-05-17 09:05:34 -0600
committerTom Rini <trini@konsulko.com>2017-05-22 12:38:22 -0400
commitd70f919e49c9105c49427786a1731feae322cb7a (patch)
tree28f8a708b6cab47b90b3a7c5564809c11d7de930
parent551c3934466503e6c8702df412e2a9ce574557e9 (diff)
downloadu-boot-d70f919e49c9105c49427786a1731feae322cb7a.tar.gz
Kconfig: Add CONFIG_HASH to enable hashing API
At present CONFIG_CMD_HASH enables the 'hash' command which also brings in the hashing API. Some boards may wish to enable the API without the command. Add a separate CONFIG to permit this. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com>
-rw-r--r--cmd/Kconfig2
-rw-r--r--common/Kconfig12
-rw-r--r--common/Makefile2
-rw-r--r--common/hash.c4
4 files changed, 17 insertions, 3 deletions
diff --git a/cmd/Kconfig b/cmd/Kconfig
index b05e69a8b7..1e3cd02703 100644
--- a/cmd/Kconfig
+++ b/cmd/Kconfig
@@ -350,6 +350,7 @@ config CMD_MEMORY
config CMD_CRC32
bool "crc32"
+ select HASH
default y
help
Compute CRC32.
@@ -998,6 +999,7 @@ config CMD_BLOB
config CMD_HASH
bool "Support 'hash' command"
+ select HASH
help
This provides a way to hash data in memory using various supported
algorithms (such as SHA1, MD5, CRC32). The computed digest can be
diff --git a/common/Kconfig b/common/Kconfig
index 1879aefaf8..5c39663f56 100644
--- a/common/Kconfig
+++ b/common/Kconfig
@@ -493,4 +493,16 @@ config BOARD_EARLY_INIT_F
endmenu
+menu "Security support"
+
+config HASH
+ bool # "Support hashing API (SHA1, SHA256, etc.)"
+ help
+ This provides a way to hash data in memory using various supported
+ algorithms (such as SHA1, MD5, CRC32). The API is defined in hash.h
+ and the algorithms it supports are defined in common/hash.c. See
+ also CMD_HASH for command-line access.
+
+endmenu
+
source "common/spl/Kconfig"
diff --git a/common/Makefile b/common/Makefile
index 14d01844ad..b2d663530d 100644
--- a/common/Makefile
+++ b/common/Makefile
@@ -10,7 +10,7 @@ ifndef CONFIG_SPL_BUILD
obj-y += init/
obj-y += main.o
obj-y += exports.o
-obj-y += hash.o
+obj-$(CONFIG_HASH) += hash.o
obj-$(CONFIG_HUSH_PARSER) += cli_hush.o
obj-$(CONFIG_AUTOBOOT) += autoboot.o
diff --git a/common/hash.c b/common/hash.c
index b645298afc..a0eded98d0 100644
--- a/common/hash.c
+++ b/common/hash.c
@@ -473,5 +473,5 @@ int hash_command(const char *algo_name, int flags, cmd_tbl_t *cmdtp, int flag,
return 0;
}
-#endif
-#endif
+#endif /* CONFIG_CMD_HASH || CONFIG_CMD_SHA1SUM || CONFIG_CMD_CRC32) */
+#endif /* !USE_HOSTCC */