[edk2] [PATCH edk2-platforms v2 3/3] Platform/ARM/SgiPkg: Enable MmCommunication module on the platform

Sughosh Ganu sughosh.ganu at arm.com
Wed Dec 19 21:47:58 PST 2018


The ArmMmCommunication module is used for communication between
non-secure and secure world using Arm's Management Mode
Specification. Enable this module on Sgi platforms. This would be used
subsequently by the RAS and SecureBoot features, support for which
is to be added on the platform.

Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Sughosh Ganu <sughosh.ganu at arm.com>
---
 Platform/ARM/SgiPkg/SgiPlatform.dsc | 18 ++++++++++++++++++
 Platform/ARM/SgiPkg/SgiPlatform.fdf |  5 +++++
 2 files changed, 23 insertions(+)

diff --git a/Platform/ARM/SgiPkg/SgiPlatform.dsc b/Platform/ARM/SgiPkg/SgiPlatform.dsc
index 7995c7d132d6..948b75631a00 100644
--- a/Platform/ARM/SgiPkg/SgiPlatform.dsc
+++ b/Platform/ARM/SgiPkg/SgiPlatform.dsc
@@ -197,6 +197,20 @@ [PcdsFixedAtBuild.common]
   gArmSgiTokenSpaceGuid.PcdVirtioNetSize|0x10000
   gArmSgiTokenSpaceGuid.PcdVirtioNetInterrupt|204
 
+!if $(ARM_STANDALONE_MM_ENABLE) == TRUE
+  #
+  # Set the base address and size of the buffer used
+  # for communication between the Normal world edk2
+  # with StandaloneMm image at S-EL0 through MM_COMMUNICATE.
+  # This buffer gets allocated in ATF and since we do not have
+  # a mechanism currently to communicate the base address and
+  # size of this buffer from ATF, hard-code it here
+  #
+  ## MM Communicate
+  gArmTokenSpaceGuid.PcdMmBufferBase|0xFF600000
+  gArmTokenSpaceGuid.PcdMmBufferSize|0x10000
+!endif
+
 ################################################################################
 #
 # Components Section - list of all EDK II Modules needed by this Platform
@@ -331,3 +345,7 @@ [Components.common]
   # SATA Controller
   #
   MdeModulePkg/Bus/Pci/SataControllerDxe/SataControllerDxe.inf
+
+!if $(ARM_STANDALONE_MM_ENABLE) == TRUE
+  ArmPkg/Drivers/MmCommunicationDxe/MmCommunication.inf
+!endif
diff --git a/Platform/ARM/SgiPkg/SgiPlatform.fdf b/Platform/ARM/SgiPkg/SgiPlatform.fdf
index 80c3412fd4ad..01799de8a0c8 100644
--- a/Platform/ARM/SgiPkg/SgiPlatform.fdf
+++ b/Platform/ARM/SgiPkg/SgiPlatform.fdf
@@ -169,6 +169,11 @@ [FV.FvMain]
   #
   INF  ShellPkg/Application/Shell/Shell.inf
 
+!if $(ARM_STANDALONE_MM_ENABLE) == TRUE
+  # MM Communicate
+  INF ArmPkg/Drivers/MmCommunicationDxe/MmCommunication.inf
+!endif
+
   #
   # Platform driver
   #
-- 
2.7.4



More information about the edk2-devel mailing list