]> git.proxmox.com Git - mirror_edk2.git/commitdiff
OvmfPkg/PlatformPei: Set BootMode, install MasterBootMode PPI
authorjljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524>
Tue, 22 Mar 2011 01:55:08 +0000 (01:55 +0000)
committerjljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524>
Tue, 22 Mar 2011 01:55:08 +0000 (01:55 +0000)
MdeModulePkg/Core/DxeIplPeim is now dependent on
gEfiPeiMasterBootModePpiGuid in order to run.

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

OvmfPkg/PlatformPei/Platform.c
OvmfPkg/PlatformPei/PlatformPei.inf

index fe25486fa4afa668ea3483f237d4a4786dc6274b..aa64aa381c0286353f42fdd541ab44efa56e6f8e 100644 (file)
 #include <Library/PcdLib.h>\r
 #include <Library/PciLib.h>\r
 #include <Library/PeimEntryPoint.h>\r
+#include <Library/PeiServicesLib.h>\r
 #include <Library/ResourcePublicationLib.h>\r
 #include <Guid/MemoryTypeInformation.h>\r
+#include <Ppi/MasterBootMode.h>\r
 \r
 #include "Platform.h"\r
 #include "Cmos.h"\r
@@ -45,6 +47,15 @@ EFI_MEMORY_TYPE_INFORMATION mDefaultMemoryTypeInformation[] = {
 };\r
 \r
 \r
+EFI_PEI_PPI_DESCRIPTOR   mPpiBootMode[] = {\r
+  {\r
+    EFI_PEI_PPI_DESCRIPTOR_PPI | EFI_PEI_PPI_DESCRIPTOR_TERMINATE_LIST,\r
+    &gEfiPeiMasterBootModePpiGuid,\r
+    NULL\r
+  }\r
+};\r
+\r
+\r
 VOID\r
 AddIoMemoryBaseSizeHob (\r
   EFI_PHYSICAL_ADDRESS        MemoryBase,\r
@@ -206,6 +217,15 @@ MiscInitialization (
 }\r
 \r
 \r
+VOID\r
+BootModeInitialization (\r
+  )\r
+{\r
+  ASSERT_EFI_ERROR (PeiServicesSetBootMode (BOOT_WITH_FULL_CONFIGURATION));\r
+  ASSERT_EFI_ERROR (PeiServicesInstallPpi (mPpiBootMode));\r
+}\r
+\r
+\r
 VOID\r
 ReserveEmuVariableNvStore (\r
   )\r
@@ -285,5 +305,7 @@ InitializePlatform (
 \r
   MiscInitialization ();\r
 \r
+  BootModeInitialization ();\r
+\r
   return EFI_SUCCESS;\r
 }\r
index 3f0a19439e3de7edff5018095f1cec84b92aaadd..2926553f5f71fad9609f3837d4a60d3b43aba343 100644 (file)
@@ -48,6 +48,7 @@
   IoLib\r
   PciLib\r
   PeiResourcePublicationLib\r
+  PeiServicesLib\r
   PeiServicesTablePointerLib\r
   PeimEntryPoint\r
 \r
@@ -59,6 +60,9 @@
   gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableSize\r
   gEfiMdeModulePkgTokenSpaceGuid.PcdEmuVariableNvStoreReserved\r
 \r
+[Ppis]\r
+  gEfiPeiMasterBootModePpiGuid\r
+\r
 [Depex]\r
   TRUE\r
 \r