diff options
-rw-r--r-- | plat/arm/css/sgi/fdts/sgi575_tb_fw_config.dts | 11 | ||||
-rw-r--r-- | plat/arm/css/sgi/sgi_plat.c | 14 |
2 files changed, 25 insertions, 0 deletions
diff --git a/plat/arm/css/sgi/fdts/sgi575_tb_fw_config.dts b/plat/arm/css/sgi/fdts/sgi575_tb_fw_config.dts index 0bb0a94e..315fa699 100644 --- a/plat/arm/css/sgi/fdts/sgi575_tb_fw_config.dts +++ b/plat/arm/css/sgi/fdts/sgi575_tb_fw_config.dts @@ -11,4 +11,15 @@ compatible = "arm,tb_fw"; hw_config_addr = <0x0 0xFEF00000>; hw_config_max_size = <0x0100000>; + /* + * The following two entries are placeholders for Mbed TLS + * heap information. The default values don't matter since + * they will be overwritten by BL1. + * In case of having shared Mbed TLS heap between BL1 and BL2, + * BL1 will populate these two properties with the respective + * info about the shared heap. This info will be available for + * BL2 in order to locate and re-use the heap. + */ + mbedtls_heap_addr = <0x0 0x0>; + mbedtls_heap_size = <0x0>; }; diff --git a/plat/arm/css/sgi/sgi_plat.c b/plat/arm/css/sgi/sgi_plat.c index 6aa76efe..0a7e319d 100644 --- a/plat/arm/css/sgi/sgi_plat.c +++ b/plat/arm/css/sgi/sgi_plat.c @@ -6,6 +6,7 @@ #include <arm_def.h> #include <arm_spm_def.h> +#include <assert.h> #include <bl_common.h> #include <ccn.h> #include <debug.h> @@ -64,6 +65,9 @@ const mmap_region_t plat_arm_mmap[] = { #if ENABLE_SPM ARM_SP_IMAGE_MMAP, #endif +#if TRUSTED_BOARD_BOOT && LOAD_IMAGE_V2 && !BL2_AT_EL3 + ARM_MAP_BL1_RW, +#endif {0} }; #endif @@ -143,3 +147,13 @@ const struct secure_partition_boot_info *plat_get_secure_partition_boot_info( return &plat_arm_secure_partition_boot_info; } #endif /* ENABLE_SPM && defined(IMAGE_BL31) */ + +#if TRUSTED_BOARD_BOOT && LOAD_IMAGE_V2 +int plat_get_mbedtls_heap(void **heap_addr, size_t *heap_size) +{ + assert(heap_addr != NULL); + assert(heap_size != NULL); + + return arm_get_mbedtls_heap(heap_addr, heap_size); +} +#endif |