ArmPlatformPkg/ArmPlatformLib: Introduce the function ArmPlatformGetBootMode()
authoroliviermartin <oliviermartin@6f19259b-4bc3-4df7-8a09-765794883524>
Thu, 31 Mar 2011 12:18:28 +0000 (12:18 +0000)
committeroliviermartin <oliviermartin@6f19259b-4bc3-4df7-8a09-765794883524>
Thu, 31 Mar 2011 12:18:28 +0000 (12:18 +0000)
This function returns the current Boot Mode of the ARM Platform.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11480 6f19259b-4bc3-4df7-8a09-765794883524

ArmPlatformPkg/ArmRealViewEbPkg/Library/ArmRealViewEbLibRTSM/ArmRealViewEb.c
ArmPlatformPkg/ArmVExpressPkg/Library/ArmVExpressLibCTA9x4/CTA9x4.c
ArmPlatformPkg/Include/Library/ArmPlatformLib.h
ArmPlatformPkg/PlatformPei/PlatformPei.c
ArmPlatformPkg/PlatformPei/PlatformPei.inf

index 003f657..070db6a 100644 (file)
@@ -57,6 +57,20 @@ VOID ArmPlatformBootRemapping(VOID) {
        MmioOr32 (ARM_EB_SYSCTRL, BIT8); //EB_SP810_CTRL_BASE
 }
 
+/**
+  Return the current Boot Mode
+
+  This function returns the boot reason on the platform
+
+**/
+EFI_BOOT_MODE
+ArmPlatformGetBootMode (
+  VOID
+  )
+{
+  return BOOT_WITH_FULL_CONFIGURATION;
+}
+
 /**
   Initialize controllers that must setup at the early stage
 
index 2d39207..490dda1 100644 (file)
@@ -137,6 +137,22 @@ VOID ArmPlatformTrustzoneInit(VOID) {
         TZASC_REGION_SIZE_256MB, TZASC_REGION_SECURITY_NSRW);
 }
 
+/**
+  Return the current Boot Mode
+
+  This function returns the boot reason on the platform
+
+  @return   Return the current Boot Mode of the platform
+
+**/
+EFI_BOOT_MODE
+ArmPlatformGetBootMode (
+  VOID
+  )
+{
+  return BOOT_WITH_FULL_CONFIGURATION;
+}
+
 /**
   Remap the memory at 0x0
 
index c9b215e..83c19ba 100644 (file)
@@ -67,6 +67,19 @@ VOID ArmPlatformIsMemoryInitialized(VOID);
 **/
 VOID ArmPlatformInitializeBootMemory(VOID);
 
+/**
+  Return the current Boot Mode
+
+  This function returns the boot reason on the platform
+
+  @return   Return the current Boot Mode of the platform
+
+**/
+EFI_BOOT_MODE
+ArmPlatformGetBootMode (
+  VOID
+  );
+
 /**
   Initialize controllers that must setup at the early stage
 
index a7fa432..0d90173 100644 (file)
@@ -77,12 +77,7 @@ Returns:
   \r
   BuildFvHob (FixedPcdGet32(PcdFlashFvMainBase), FixedPcdGet32(PcdFlashFvMainSize));\r
   \r
-  //\r
-  // Let's assume things are OK if not told otherwise\r
-  // Should we read an environment variable in order to easily change this?\r
-  //\r
-  BootMode  = BOOT_WITH_FULL_CONFIGURATION;\r
-\r
+  BootMode  = ArmPlatformGetBootMode ();\r
   Status    = (**PeiServices).SetBootMode (PeiServices, (UINT8) BootMode);\r
   ASSERT_EFI_ERROR (Status);\r
 \r
index 452c025..c35889a 100644 (file)
   MdePkg/MdePkg.dec\r
   EmbeddedPkg/EmbeddedPkg.dec\r
   ArmPkg/ArmPkg.dec\r
+  ArmPlatformPkg/ArmPlatformPkg.dec\r
 \r
 [LibraryClasses]\r
   PeimEntryPoint\r
   DebugLib\r
   HobLib\r
+  ArmPlatformLib\r
 \r
 [Ppis]\r
   gEfiPeiMasterBootModePpiGuid                  # PPI ALWAYS_PRODUCED\r