The following patch series adds support for using the Firmware
Framework(FF-A) as a transport mechanism for requesting services from
the Secure Partition Manager(SPM). This is done through a Pcd which
can be used to enable the FF-A mechanism or to use the earlier used
SVC calls.
Changes since V1:
Handled review comments from Sami Mujawar
Please review these patches along with V3 of the patch series for adding support for StandaloneMm as an Optee TA[1].
-sughosh
Achin Gupta (7):
ArmPkg/IndustryStandard: Add barebones FF-A header
ArmPkg/ArmSvcLib: Return x4-x7 in output parameters
StandaloneMmPkg: Use FF-A header file in Standalone MM Core entry
point
StandaloneMmPkg: Add option to use FF-A calls for communication with
SPM
StandaloneMmPkg: Use FF-A header file in Standalone MM Arm MMU library
StandaloneMmMmuLib: Add option to use FF-A calls to get memory
region's permissions
StandaloneMmMmuLib: Add option to use FF-A calls to set memory
region's permissions
Ilias Apalodimas (2):
MdeModulePkg/VariableStandaloneMm: Set PcdFlashNvStorageVariableBase
to Pcd
StandaloneMmPkg: Allow sending FFA Direct Request message to
StandaloneMm
Sughosh Ganu (4):
ArmPkg: Introduce support for PcdFfaEnable
StandaloneMmPkg: Add macros for SPM version
StandaloneMmPkg: Add the SPM version for FF-A
StandaloneMmPkg: Add option to use FF-A calls for getting SPM version
ArmPkg/ArmPkg.dec | 6 +
.../ArmMmuStandaloneMmLib.inf | 3 +
.../RuntimeDxe/VariableStandaloneMm.inf | 6 +-
.../StandaloneMmCoreEntryPoint.inf | 3 +
ArmPkg/Include/IndustryStandard/ArmFfaSvc.h | 44 ++++++
ArmPkg/Include/IndustryStandard/ArmMmSvc.h | 3 +
ArmPkg/Include/Library/ArmSvcLib.h | 10 +-
.../AArch64/ArmMmuStandaloneMmLib.c | 145 +++++++++++++-----
.../StandaloneMmCpu/AArch64/EventHandle.c | 4 +-
.../AArch64/StandaloneMmCoreEntryPoint.c | 130 ++++++++++++----
ArmPkg/Library/ArmSvcLib/AArch64/ArmSvc.S | 4 +-
11 files changed, 291 insertions(+), 67 deletions(-)
create mode 100644 ArmPkg/Include/IndustryStandard/ArmFfaSvc.h
--
2.17.1