[edk2-devel] [PATCH v4 00/14] Add support for using FF-A calls

Sughosh Ganu posted 14 patches 3 years, 1 month ago
Failed in applying to current master (apply log)
There is a newer version of this series
ArmPkg/ArmPkg.dec                             |   7 +
.../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           | 167 +++++++++++++++---
.../StandaloneMmCpu/AArch64/EventHandle.c     |   4 +-
.../AArch64/StandaloneMmCoreEntryPoint.c      | 133 +++++++++++---
ArmPkg/Library/ArmSvcLib/AArch64/ArmSvc.S     |   4 +-
11 files changed, 323 insertions(+), 61 deletions(-)
create mode 100644 ArmPkg/Include/IndustryStandard/ArmFfaSvc.h
[edk2-devel] [PATCH v4 00/14] Add support for using FF-A calls
Posted by Sughosh Ganu 3 years, 1 month ago
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.

The patches have been pushed to my github repository[1]

Ran the CI tests through the github draft pull request, and all the CI
test pass. Ran the PatchCheck script, with no errors.

Changes since V3:
* Put the PcdFfaEnable under the PcdsFeatureFlag.AARCH64 section to
  avoid build breakage for the X64 StandaloneMm builds.
* Put the macro definitions for the SPM major and minor versions in a
  separate patch, as suggested by Sami.
* Separated out the declaration of the SPM major and minor version
  macros in the earlier patch as was suggested by Sami.
* Put the macro definitions for the SPM major and minor versions with
  FF-A support in a separate patch, as suggested by Sami.
* Declare the PcdFfaEnable Pcd Feature flag under FeaturePcd.AARCH64
  to avoid build break for the X64 build of StandaloneMm.
* Change the patch header to have the ArmPkg prefix instead of
  StandaloneMmMmuLib as suggested by Sami.

Changes since V2:
* Added a STATIC storage class specifier for mSpmMajorVer and
  mSpmMinorVer variables
* Added a STATIC storage class specifier for mSpmMajorVerFfa and
  mSpmMinorVerFfa variables
* Add braces for if/else statements
* Add a check for EFI_NOT_FOUND as a possible return value from
  LocateStandaloneMmCorePeCoffData in _ModuleEntryPoint function
* Check for the return value in Arg0 after the Direct Request call to
  handle errors returned
* Put a comment to reflect the fact that FFA_INTERRUPT and FFA_SUCCESS
  response won't be expected in return to a Direct Request call to get
  the memory attributes
* Check for the return value in Arg0 after the Direct Request call to
  handle errors returned
* Put a comment to reflect the fact that FFA_INTERRUPT and FFA_SUCCESS
  response won't be expected in return to a Direct Request call to set
  the memory attributes

Changes since V1:
Handled review comments from Sami Mujawar

[1] - https://github.com/sughoshg/edk2/tree/implement_ffa_svc_optional_v4

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
  ArmPkg: Use FF-A header file in Standalone MM Arm MMU library
  ArmPkg: Allow FF-A calls to get memory region's attributes
  ArmPkg: Allow FF-A calls to set memory region's attributes

Ilias Apalodimas (2):
  MdeModulePkg/VariableStandaloneMm: Set PcdFlashNvStorageVariableBase
    to Pcd
  StandaloneMmPkg: Allow sending FFA Direct Request message to
    StandaloneMm

Sughosh Ganu (5):
  ArmPkg: Introduce support for PcdFfaEnable
  ArmPkg: Add macros for SPM version
  StandaloneMmPkg: Use macros for SPM version check
  ArmPkg: Add macros for SPM version with FF-A support enabled
  StandaloneMmPkg: Add option to use FF-A calls for getting SPM version

 ArmPkg/ArmPkg.dec                             |   7 +
 .../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           | 167 +++++++++++++++---
 .../StandaloneMmCpu/AArch64/EventHandle.c     |   4 +-
 .../AArch64/StandaloneMmCoreEntryPoint.c      | 133 +++++++++++---
 ArmPkg/Library/ArmSvcLib/AArch64/ArmSvc.S     |   4 +-
 11 files changed, 323 insertions(+), 61 deletions(-)
 create mode 100644 ArmPkg/Include/IndustryStandard/ArmFfaSvc.h

-- 
2.17.1




-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#71721): https://edk2.groups.io/g/devel/message/71721
Mute This Topic: https://groups.io/mt/80701003/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-