aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorQixiang Xu <qixiang.xu@arm.com>2017-10-13 09:23:42 +0800
committerQixiang Xu <qixiang.xu@arm.com>2017-10-25 09:27:15 +0800
commit9b1eae96bff907e80992dbc66278cf0c913f3e17 (patch)
tree8339cf3039494a63a2778ab15c9fdfc9ff8a22c4
parent7ca267bd8aaa8ea6a2a01d953bbcd4fc672ffe51 (diff)
downloadarm-trusted-firmware-9b1eae96bff907e80992dbc66278cf0c913f3e17.tar.gz
plat/arm: enlarge the BL2 size on Arm platforms when TBB is enabled
For Trusted Board Boot, BL2 needs more space to support the ECDSA and ECDSA+RSA algorithms. Change-Id: Ie7eda9a1315ce836dbc6d18d6588f8d17891a92d Signed-off-by: Qixiang Xu <qixiang.xu@arm.com>
-rw-r--r--include/drivers/auth/mbedtls/mbedtls_config.h7
-rw-r--r--include/plat/arm/board/common/board_arm_def.h2
-rw-r--r--plat/arm/board/juno/include/platform_def.h9
3 files changed, 13 insertions, 5 deletions
diff --git a/include/drivers/auth/mbedtls/mbedtls_config.h b/include/drivers/auth/mbedtls/mbedtls_config.h
index ca2d9fad..96587aca 100644
--- a/include/drivers/auth/mbedtls/mbedtls_config.h
+++ b/include/drivers/auth/mbedtls/mbedtls_config.h
@@ -76,12 +76,13 @@
#define MBEDTLS_MPI_WINDOW_SIZE 2
#define MBEDTLS_MPI_MAX_SIZE 256
-/* System headers required to build mbed TLS with the current configuration */
-#include <stdlib.h>
-
/* Memory buffer allocator options */
#define MBEDTLS_MEMORY_ALIGN_MULTIPLE 8
+#ifndef __ASSEMBLY__
+/* System headers required to build mbed TLS with the current configuration */
+#include <stdlib.h>
#include "mbedtls/check_config.h"
+#endif
#endif /* __MBEDTLS_CONFIG_H__ */
diff --git a/include/plat/arm/board/common/board_arm_def.h b/include/plat/arm/board/common/board_arm_def.h
index 49ab601b..93828c9d 100644
--- a/include/plat/arm/board/common/board_arm_def.h
+++ b/include/plat/arm/board/common/board_arm_def.h
@@ -71,7 +71,7 @@
* little space for growth.
*/
#if TRUSTED_BOARD_BOOT
-# define PLAT_ARM_MAX_BL2_SIZE 0x1D000
+# define PLAT_ARM_MAX_BL2_SIZE 0x1E000
#else
# define PLAT_ARM_MAX_BL2_SIZE 0xF000
#endif
diff --git a/plat/arm/board/juno/include/platform_def.h b/plat/arm/board/juno/include/platform_def.h
index 395d1fb6..ccc7771e 100644
--- a/plat/arm/board/juno/include/platform_def.h
+++ b/plat/arm/board/juno/include/platform_def.h
@@ -12,6 +12,9 @@
#include <board_css_def.h>
#include <common_def.h>
#include <css_def.h>
+#if TRUSTED_BOARD_BOOT
+#include <mbedtls_config.h>
+#endif
#include <soc_css_def.h>
#include <tzc400.h>
#include <v2m_def.h>
@@ -106,7 +109,11 @@
* little space for growth.
*/
#if TRUSTED_BOARD_BOOT
-# define PLAT_ARM_MAX_BL2_SIZE 0x19000
+#if TF_MBEDTLS_KEY_ALG_ID == TF_MBEDTLS_RSA_AND_ECDSA
+# define PLAT_ARM_MAX_BL2_SIZE 0x1E000
+#else
+# define PLAT_ARM_MAX_BL2_SIZE 0x1A000
+#endif
#else
# define PLAT_ARM_MAX_BL2_SIZE 0xC000
#endif