[edk2-devel] [PATCH v2 05/13] StandaloneMmPkg: Add macros for SPM version

Sughosh Ganu posted 13 patches 5 years, 1 month ago
There is a newer version of this series
[edk2-devel] [PATCH v2 05/13] StandaloneMmPkg: Add macros for SPM version
Posted by Sughosh Ganu 5 years, 1 month ago
Declare module wide variables for SPM major and minor versions to be
used in checking the SPM version compatibility. Declare the the values
of SPM major and minor versions as macros.

Signed-off-by: Sughosh Ganu <sughosh.ganu@linaro.org>
---
 ArmPkg/Include/IndustryStandard/ArmMmSvc.h                                              |  3 +++
 StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/AArch64/StandaloneMmCoreEntryPoint.c | 10 +++++-----
 2 files changed, 8 insertions(+), 5 deletions(-)

diff --git a/ArmPkg/Include/IndustryStandard/ArmMmSvc.h b/ArmPkg/Include/IndustryStandard/ArmMmSvc.h
index ee29c2fecc..71a5398558 100644
--- a/ArmPkg/Include/IndustryStandard/ArmMmSvc.h
+++ b/ArmPkg/Include/IndustryStandard/ArmMmSvc.h
@@ -41,4 +41,7 @@
 #define ARM_SVC_SPM_RET_DENIED               -3
 #define ARM_SVC_SPM_RET_NO_MEMORY            -5
 
+#define SPM_MAJOR_VERSION                     0
+#define SPM_MINOR_VERSION                     1
+
 #endif
diff --git a/StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/AArch64/StandaloneMmCoreEntryPoint.c b/StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/AArch64/StandaloneMmCoreEntryPoint.c
index c4132b0d78..f2a8feacec 100644
--- a/StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/AArch64/StandaloneMmCoreEntryPoint.c
+++ b/StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/AArch64/StandaloneMmCoreEntryPoint.c
@@ -32,8 +32,8 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 #define SPM_MINOR_VER_MASK        0x0000FFFF
 #define SPM_MAJOR_VER_SHIFT       16
 
-CONST UINT32 SPM_MAJOR_VER = 0;
-CONST UINT32 SPM_MINOR_VER = 1;
+CONST UINT32 mSpmMajorVer = SPM_MAJOR_VERSION;
+CONST UINT32 mSpmMinorVer = SPM_MINOR_VERSION;
 
 CONST UINT8 BOOT_PAYLOAD_VERSION = 1;
 
@@ -183,8 +183,8 @@ GetSpmVersion (VOID)
   // revision A must work in a compatible way with revision B.
   // However, it is possible for revision B to have a higher
   // function count than revision A.
-  if ((SpmMajorVersion == SPM_MAJOR_VER) &&
-      (SpmMinorVersion >= SPM_MINOR_VER))
+  if ((SpmMajorVersion == mSpmMajorVer) &&
+      (SpmMinorVersion >= mSpmMinorVer))
   {
     DEBUG ((DEBUG_INFO, "SPM Version: Major=0x%x, Minor=0x%x\n",
            SpmMajorVersion, SpmMinorVersion));
@@ -193,7 +193,7 @@ GetSpmVersion (VOID)
   else
   {
     DEBUG ((DEBUG_INFO, "Incompatible SPM Versions.\n Current Version: Major=0x%x, Minor=0x%x.\n Expected: Major=0x%x, Minor>=0x%x.\n",
-            SpmMajorVersion, SpmMinorVersion, SPM_MAJOR_VER, SPM_MINOR_VER));
+            SpmMajorVersion, SpmMinorVersion, mSpmMajorVer, mSpmMinorVer));
     Status = EFI_UNSUPPORTED;
   }
 
-- 
2.17.1



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


Re: [edk2-devel] [PATCH v2 05/13] StandaloneMmPkg: Add macros for SPM version
Posted by Sami Mujawar 5 years, 1 month ago
On Mon, Dec 14, 2020 at 06:42 AM, Sughosh Ganu wrote:

> 
> +CONST UINT32 mSpmMajorVer = SPM_MAJOR_VERSION;
> +CONST UINT32 mSpmMinorVer = SPM_MINOR_VERSION;

The STATIC storage class specifier can be used for the above variables.

Regards,

Sami Mujawar


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