#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
};\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
}\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
\r
MiscInitialization ();\r
\r
+ BootModeInitialization ();\r
+\r
return EFI_SUCCESS;\r
}\r
IoLib\r
PciLib\r
PeiResourcePublicationLib\r
+ PeiServicesLib\r
PeiServicesTablePointerLib\r
PeimEntryPoint\r
\r
gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableSize\r
gEfiMdeModulePkgTokenSpaceGuid.PcdEmuVariableNvStoreReserved\r
\r
+[Ppis]\r
+ gEfiPeiMasterBootModePpiGuid\r
+\r
[Depex]\r
TRUE\r
\r