diff options
author | Antonio Nino Diaz <antonio.ninodiaz@arm.com> | 2018-11-27 08:36:02 +0000 |
---|---|---|
committer | Antonio Nino Diaz <antonio.ninodiaz@arm.com> | 2018-12-11 13:45:41 +0000 |
commit | 680389a65a004d2af007abccf0a0352f2c0eb529 (patch) | |
tree | 84d1f5adf7382cb8899978d7106bd49ee690b7da /plat/arm | |
parent | 26010da11629f27ddf013ba6127198b33edcd574 (diff) | |
download | platform_external_arm-trusted-firmware-680389a65a004d2af007abccf0a0352f2c0eb529.tar.gz platform_external_arm-trusted-firmware-680389a65a004d2af007abccf0a0352f2c0eb529.tar.bz2 platform_external_arm-trusted-firmware-680389a65a004d2af007abccf0a0352f2c0eb529.zip |
SPM: Load image and RD from SP package
Load SP and RD from package instead of relying on RD being already
loaded in memory and the SP being loaded as a BL32 image.
Change-Id: I18d4fbf4597656c6a7e878e1d7c01a8a324f3f8a
Signed-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>
Diffstat (limited to 'plat/arm')
-rw-r--r-- | plat/arm/board/fvp/fvp_common.c | 8 | ||||
-rw-r--r-- | plat/arm/board/fvp/include/platform_def.h | 4 | ||||
-rw-r--r-- | plat/arm/common/arm_common.mk | 1 |
3 files changed, 10 insertions, 3 deletions
diff --git a/plat/arm/board/fvp/fvp_common.c b/plat/arm/board/fvp/fvp_common.c index 66650eecd..f36b637ef 100644 --- a/plat/arm/board/fvp/fvp_common.c +++ b/plat/arm/board/fvp/fvp_common.c @@ -96,9 +96,12 @@ const mmap_region_t plat_arm_mmap[] = { ARM_MAP_BL1_RW, #endif #endif /* TRUSTED_BOARD_BOOT */ -#if ENABLE_SPM +#if ENABLE_SPM && SPM_DEPRECATED ARM_SP_IMAGE_MMAP, #endif +#if ENABLE_SPM && !SPM_DEPRECATED + PLAT_MAP_SP_PACKAGE_MEM_RW, +#endif #if ARM_BL31_IN_DRAM ARM_MAP_BL31_SEC_DRAM, #endif @@ -127,6 +130,9 @@ const mmap_region_t plat_arm_mmap[] = { #if ENABLE_SPM && SPM_DEPRECATED ARM_SPM_BUF_EL3_MMAP, #endif +#if ENABLE_SPM && !SPM_DEPRECATED + PLAT_MAP_SP_PACKAGE_MEM_RO, +#endif {0} }; diff --git a/plat/arm/board/fvp/include/platform_def.h b/plat/arm/board/fvp/include/platform_def.h index 31c5fdfbf..70e51fd95 100644 --- a/plat/arm/board/fvp/include/platform_def.h +++ b/plat/arm/board/fvp/include/platform_def.h @@ -72,8 +72,8 @@ #if defined(IMAGE_BL31) # if ENABLE_SPM # define PLAT_ARM_MMAP_ENTRIES 9 -# define MAX_XLAT_TABLES 7 -# define PLAT_SP_IMAGE_MMAP_REGIONS 7 +# define MAX_XLAT_TABLES 9 +# define PLAT_SP_IMAGE_MMAP_REGIONS 30 # define PLAT_SP_IMAGE_MAX_XLAT_TABLES 10 # else # define PLAT_ARM_MMAP_ENTRIES 8 diff --git a/plat/arm/common/arm_common.mk b/plat/arm/common/arm_common.mk index 9f39d71ad..24b61e816 100644 --- a/plat/arm/common/arm_common.mk +++ b/plat/arm/common/arm_common.mk @@ -249,6 +249,7 @@ ifeq (${SPM_DEPRECATED},0) ifeq (${ENABLE_SPM},1) BL31_SOURCES += common/fdt_wrappers.c \ plat/common/plat_spm_rd.c \ + plat/common/plat_spm_sp.c \ ${LIBFDT_SRCS} endif endif |