[PATCH 0/5] Arm 32bit support in StandaloveMm


Etienne Carriere
 

This series targets building StandaloneMM package for 32bit ARM
architectures. The main parts of the changes move AArch64/*
files to paths suitable for both 32bit and 64bit Arm machines.

Because these changes move file paths, some other edk2 related
source trees must be updated. Up to my knowledge, only edk2-platforms
and edk2-codereview must be synchronised. [1] shows the changes
needed in edk2-platforms to synchronise with these changes.

I will post a patch series for edk2-platforms, including [1] and
some other changes to allow building StandaloneMmPkg for 32bit Arm
platforms.

This change is a resend of [2], rebased to latest master.

[1] https://github.com/etienne-lms/edk2-platforms/commit/becbd185167f6a115dbd3895bc6071ab04e44d9b
[2] https://edk2.groups.io/g/devel/message/72834 (with 72835, 72836, 72837 and 72838)

Etienne Carriere (5):
ArmPkg/IndustryStandard: 32b/64b agnostic FF-A and Mm SVC IDs
ArmPkg: prepare 32bit ARM build of StandaloneMmPkg
GenGv: Arm: support images entered in Thumb mode
StandaloneMmPkg: fix pointer/int casts against 32bit architectures
StandaloneMmPkg: build for 32bit arm machines

ArmPkg/ArmPkg.dec | 2 +-
ArmPkg/ArmPkg.dsc | 2 +-
.../MmCommunicationDxe/MmCommunication.c | 2 +-
ArmPkg/Include/IndustryStandard/ArmFfaSvc.h | 12 ++++++
ArmPkg/Include/IndustryStandard/ArmMmSvc.h | 15 ++++++++
.../{AArch64 => }/ArmMmuStandaloneMmLib.c | 15 ++++----
.../ArmMmuStandaloneMmLib.inf | 6 +--
BaseTools/Source/C/GenFv/GenFvInternalLib.c | 38 ++++++++++++++-----
StandaloneMmPkg/Core/StandaloneMmCore.inf | 2 +-
.../{AArch64 => }/EventHandle.c | 12 +++++-
.../{AArch64 => }/StandaloneMmCpu.c | 10 ++---
.../{AArch64 => }/StandaloneMmCpu.h | 0
.../{AArch64 => }/StandaloneMmCpu.inf | 0
.../StandaloneMmCoreEntryPoint.h | 0
.../{AArch64 => Arm}/CreateHobList.c | 16 ++++----
.../{AArch64 => Arm}/SetPermissions.c | 2 +-
.../StandaloneMmCoreEntryPoint.c | 18 ++++-----
.../StandaloneMmCoreEntryPoint.inf | 14 +++----
.../{AArch64 => Arm}/StandaloneMmCoreHobLib.c | 0
.../StandaloneMmCoreHobLibInternal.c | 0
.../StandaloneMmCoreHobLib.inf | 8 ++--
...rnal.c => ArmStandaloneMmMemLibInternal.c} | 9 ++++-
.../StandaloneMmMemLib/StandaloneMmMemLib.inf | 6 +--
.../VariableMmDependency.inf | 2 +-
StandaloneMmPkg/StandaloneMmPkg.dsc | 8 ++--
25 files changed, 131 insertions(+), 68 deletions(-)
rename ArmPkg/Library/StandaloneMmMmuLib/{AArch64 => }/ArmMmuStandaloneMmLib.c (92%)
rename StandaloneMmPkg/Drivers/StandaloneMmCpu/{AArch64 => }/EventHandle.c (92%)
rename StandaloneMmPkg/Drivers/StandaloneMmCpu/{AArch64 => }/StandaloneMmCpu.c (94%)
rename StandaloneMmPkg/Drivers/StandaloneMmCpu/{AArch64 => }/StandaloneMmCpu.h (100%)
rename StandaloneMmPkg/Drivers/StandaloneMmCpu/{AArch64 => }/StandaloneMmCpu.inf (100%)
rename StandaloneMmPkg/Include/Library/{AArch64 => Arm}/StandaloneMmCoreEntryPoint.h (100%)
rename StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/{AArch64 => Arm}/CreateHobList.c (91%)
rename StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/{AArch64 => Arm}/SetPermissions.c (96%)
rename StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/{AArch64 => Arm}/StandaloneMmCoreEntryPoint.c (94%)
rename StandaloneMmPkg/Library/StandaloneMmCoreHobLib/{AArch64 => Arm}/StandaloneMmCoreHobLib.c (100%)
rename StandaloneMmPkg/Library/StandaloneMmCoreHobLib/{AArch64 => Arm}/StandaloneMmCoreHobLibInternal.c (100%)
rename StandaloneMmPkg/Library/StandaloneMmMemLib/{AArch64/StandaloneMmMemLibInternal.c => ArmStandaloneMmMemLibInternal.c} (86%)

--
2.17.1

Join devel@edk2.groups.io to automatically receive all group messages.