mbedtls: Define optimized mbed TLS heap size
authorAntonio Nino Diaz <antonio.ninodiaz@arm.com>
Fri, 19 May 2017 15:57:54 +0000 (16:57 +0100)
committerAntonio Nino Diaz <antonio.ninodiaz@arm.com>
Wed, 31 May 2017 14:02:32 +0000 (15:02 +0100)
mbed TLS provides the debug API `mbedtls_memory_buffer_alloc_status()`
to analyse the RAM usage of the library.

When RSA is selected as algorithm, the maximum heap usage in FVP and
Juno has been determined empirically to be approximately 5.5 KiB.
However, The default heap size used when RSA is selected is 8 KiB.

This patch reduces the buffer from 8 KiB to 6 KiB so that the BSS
sections of both BL1 and BL2 are 2 KiB smaller when the firmware is
compiled with TBB support.

Change-Id: I43878a4e7af50c97be9c8d027c728c8483f24fbf
Signed-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>
drivers/auth/mbedtls/mbedtls_common.c

index 871831e2d8e646be1d8e8990b3c564829d0e973b..336e44be6f4cce8ed47f25904a1e7288021ceb6e 100644 (file)
@@ -16,7 +16,7 @@
 #if (TF_MBEDTLS_KEY_ALG_ID == TF_MBEDTLS_ECDSA)
 #define MBEDTLS_HEAP_SIZE              (14*1024)
 #elif (TF_MBEDTLS_KEY_ALG_ID == TF_MBEDTLS_RSA)
-#define MBEDTLS_HEAP_SIZE              (8*1024)
+#define MBEDTLS_HEAP_SIZE              (6*1024)
 #endif
 static unsigned char heap[MBEDTLS_HEAP_SIZE];