mbedtls: Enable smaller implementation for SHA256/512
Smaller implementation for SHA256 and SHA512 helps to reduce the
ROM footprint though it has a certain impact on performance.
As a trade-off, enable it as a default config when MbedTLS is
enabled can reduce the target size significantly with acceptable
performance loss.
Signed-off-by: Raymond Mao <raymond.mao@linaro.org>
Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
diff --git a/lib/mbedtls/Kconfig b/lib/mbedtls/Kconfig
index 262abb2..8e3a94c 100644
--- a/lib/mbedtls/Kconfig
+++ b/lib/mbedtls/Kconfig
@@ -164,6 +164,18 @@
This option enables support of hashing using SHA256 algorithm
with MbedTLS crypto library.
+if SHA256_MBEDTLS
+
+config SHA256_SMALLER
+ bool "Enable SHA256 smaller implementation with MbedTLS crypto library"
+ depends on SHA256_MBEDTLS
+ default y if SHA256_MBEDTLS
+ help
+ This option enables support of hashing using SHA256 algorithm
+ smaller implementation with MbedTLS crypto library.
+
+endif
+
config SHA512_MBEDTLS
bool "Enable SHA512 support with MbedTLS crypto library"
depends on MBEDTLS_LIB_CRYPTO && SHA512
@@ -172,6 +184,18 @@
This option enables support of hashing using SHA512 algorithm
with MbedTLS crypto library.
+if SHA512_MBEDTLS
+
+config SHA512_SMALLER
+ bool "Enable SHA512 smaller implementation with MbedTLS crypto library"
+ depends on SHA512_MBEDTLS
+ default y if SHA512_MBEDTLS
+ help
+ This option enables support of hashing using SHA512 algorithm
+ smaller implementation with MbedTLS crypto library.
+
+endif
+
config SHA384_MBEDTLS
bool "Enable SHA384 support with MbedTLS crypto library"
depends on MBEDTLS_LIB_CRYPTO && SHA384