-
- Downloads
Remove dependency between SPM_MM and ENABLE_SPM build flags
There are two different implementations of Secure Partition
management in TF-A. One is based on the "Management Mode" (MM)
design, the other is based on the Secure Partition Client Interface
(SPCI) specification. Currently there is a dependency between their
build flags that shouldn't exist, making further development
harder than it should be. This patch removes that
dependency, making the two flags function independently.
Before: ENABLE_SPM=1 is required for using either implementation.
By default, the SPCI-based implementation is enabled and
this is overridden if SPM_MM=1.
After: ENABLE_SPM=1 enables the SPCI-based implementation.
SPM_MM=1 enables the MM-based implementation.
The two build flags are mutually exclusive.
Note that the name of the ENABLE_SPM flag remains a bit
ambiguous - this will be improved in a subsequent patch. For this
patch the intention was to leave the name as-is so that it is
easier to track the changes that were made.
Change-Id: I8e64ee545d811c7000f27e8dc8ebb977d670608a
Signed-off-by:
Paul Beesley <paul.beesley@arm.com>
Showing
- Makefile 8 additions, 0 deletionsMakefile
- bl31/bl31.ld.S 1 addition, 1 deletionbl31/bl31.ld.S
- bl31/bl31.mk 10 additions, 10 deletionsbl31/bl31.mk
- docs/getting_started/build-options.rst 6 additions, 2 deletionsdocs/getting_started/build-options.rst
- include/plat/arm/common/arm_def.h 2 additions, 2 deletionsinclude/plat/arm/common/arm_def.h
- include/plat/arm/common/plat_arm.h 1 addition, 1 deletioninclude/plat/arm/common/plat_arm.h
- make_helpers/defaults.mk 3 additions, 3 deletionsmake_helpers/defaults.mk
- plat/arm/board/fvp/fvp_common.c 6 additions, 6 deletionsplat/arm/board/fvp/fvp_common.c
- plat/arm/board/fvp/include/platform_def.h 2 additions, 2 deletionsplat/arm/board/fvp/include/platform_def.h
- plat/arm/board/fvp/platform.mk 0 additions, 2 deletionsplat/arm/board/fvp/platform.mk
- plat/arm/common/aarch64/arm_ehf.c 2 additions, 2 deletionsplat/arm/common/aarch64/arm_ehf.c
- plat/arm/common/arm_common.mk 0 additions, 2 deletionsplat/arm/common/arm_common.mk
- plat/arm/css/sgi/include/sgi_base_platform_def.h 3 additions, 3 deletionsplat/arm/css/sgi/include/sgi_base_platform_def.h
- plat/arm/css/sgi/sgi_plat.c 7 additions, 7 deletionsplat/arm/css/sgi/sgi_plat.c
- plat/nvidia/tegra/scat/bl31.scat 1 addition, 1 deletionplat/nvidia/tegra/scat/bl31.scat
- plat/socionext/synquacer/platform.mk 2 additions, 2 deletionsplat/socionext/synquacer/platform.mk
- plat/socionext/synquacer/sq_bl31_setup.c 2 additions, 2 deletionsplat/socionext/synquacer/sq_bl31_setup.c
- services/std_svc/std_svc_setup.c 2 additions, 2 deletionsservices/std_svc/std_svc_setup.c
Loading
Please register or sign in to comment