Merge "fix(psa): increase psa-mbedtls heap size for rsa" into integration
diff --git a/include/drivers/auth/mbedtls/default_mbedtls_config.h b/include/drivers/auth/mbedtls/default_mbedtls_config.h
index 12a5fe1..fa5c6f6 100644
--- a/include/drivers/auth/mbedtls/default_mbedtls_config.h
+++ b/include/drivers/auth/mbedtls/default_mbedtls_config.h
@@ -132,18 +132,15 @@
#endif
/*
- * Determine Mbed TLS heap size
- * 13312 = 13*1024
- * 11264 = 11*1024
- * 7168 = 7*1024
+ * Determine Mbed TLS heap size.
*/
#if TF_MBEDTLS_USE_ECDSA
-#define TF_MBEDTLS_HEAP_SIZE U(13312)
+#define TF_MBEDTLS_HEAP_SIZE U(13 * 1024)
#elif TF_MBEDTLS_USE_RSA
#if TF_MBEDTLS_KEY_SIZE <= 2048
-#define TF_MBEDTLS_HEAP_SIZE U(7168)
+#define TF_MBEDTLS_HEAP_SIZE U(7 * 1024)
#else
-#define TF_MBEDTLS_HEAP_SIZE U(11264)
+#define TF_MBEDTLS_HEAP_SIZE U(11 * 1024)
#endif
#endif
diff --git a/include/drivers/auth/mbedtls/default_psa_mbedtls_config.h b/include/drivers/auth/mbedtls/default_psa_mbedtls_config.h
index 8926051..00b1f34 100644
--- a/include/drivers/auth/mbedtls/default_psa_mbedtls_config.h
+++ b/include/drivers/auth/mbedtls/default_psa_mbedtls_config.h
@@ -26,4 +26,12 @@
*/
#define MBEDTLS_PSA_CRYPTO_EXTERNAL_RNG
+/*
+ * Override heap size for PSA Crypto when RSA key size > 2048.
+ */
+#if TF_MBEDTLS_USE_RSA && TF_MBEDTLS_KEY_SIZE > 2048
+#undef TF_MBEDTLS_HEAP_SIZE
+#define TF_MBEDTLS_HEAP_SIZE U(12 * 1024)
+#endif
+
#endif /* PSA_MBEDTLS_CONFIG_H */
diff --git a/plat/arm/common/plat_arm_psa_mbedtls_config.h b/plat/arm/common/plat_arm_psa_mbedtls_config.h
index fd434c9..b7a4bf1 100644
--- a/plat/arm/common/plat_arm_psa_mbedtls_config.h
+++ b/plat/arm/common/plat_arm_psa_mbedtls_config.h
@@ -26,4 +26,12 @@
*/
#define MBEDTLS_PSA_CRYPTO_EXTERNAL_RNG
+/*
+ * Override heap size for PSA Crypto when RSA key size > 2048.
+ */
+#if TF_MBEDTLS_USE_RSA && TF_MBEDTLS_KEY_SIZE > 2048
+#undef TF_MBEDTLS_HEAP_SIZE
+#define TF_MBEDTLS_HEAP_SIZE U(12 * 1024)
+#endif
+
#endif /* PLAT_ARM_PSA_MBEDTLS_CONFIG_H */