]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdeModulePkg/Core/Pei/PeiMain.inf
MdeModulePkg: Fix use-after-free error in InstallConfigurationTable()
[mirror_edk2.git] / MdeModulePkg / Core / Pei / PeiMain.inf
index d9c5351bf7b679824099aed03bddf8b3a57ad710..39a464f32633a35343fed10c533f80c022d9c903 100644 (file)
@@ -1,12 +1,14 @@
-#/** @file\r
-# PeiMain module is core module in PEI phase. It takes responsibilities of:\r
+## @file\r
+# PeiMain module is core module in PEI phase.\r
+#\r
+# It takes responsibilities of:\r
 # 1) Initialize memory, PPI, image services etc, to establish PEIM runtime environment.\r
 # 2) Dispatch PEIM from discovered FV.\r
 # 3) Handoff control to DxeIpl to load DXE core and enter DXE phase.\r
 #\r
-# Copyright (c) 2006 - 2008, Intel Corporation\r
+# Copyright (c) 2006 - 2015, Intel Corporation. All rights reserved.<BR>\r
 #\r
-#  All rights reserved. This program and the accompanying materials\r
+#  This program and the accompanying materials\r
 #  are licensed and made available under the terms and conditions of the BSD License\r
 #  which accompanies this distribution. The full text of the license may be found at\r
 #  http://opensource.org/licenses/bsd-license.php\r
 #  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
 #\r
 #\r
-#**/\r
+##\r
 \r
 [Defines]\r
   INF_VERSION                    = 0x00010005\r
   BASE_NAME                      = PeiCore\r
+  MODULE_UNI_FILE                = PeiCore.uni\r
   FILE_GUID                      = 52C05B14-0B98-496c-BC3B-04B50211D680\r
   MODULE_TYPE                    = PEI_CORE\r
   VERSION_STRING                 = 1.0\r
-  PI_SPECIFICATION_VERSION       = 0x00010000\r
-\r
   ENTRY_POINT                    = PeiCore\r
 \r
 #\r
@@ -32,7 +33,7 @@
 #  VALID_ARCHITECTURES           = IA32 X64 IPF EBC (EBC is for build only)\r
 #\r
 \r
-[Sources.common]\r
+[Sources]\r
   StatusCode/StatusCode.c\r
   Security/Security.c\r
   Reset/Reset.c\r
   Image/Image.c\r
   Hob/Hob.c\r
   FwVol/FwVol.c\r
+  FwVol/FwVol.h\r
   Dispatcher/Dispatcher.c\r
   Dependency/Dependency.c\r
   Dependency/Dependency.h\r
   BootMode/BootMode.c\r
+  CpuIo/CpuIo.c\r
+  PciCfg2/PciCfg2.c\r
   PeiMain.h\r
 \r
 [Packages]\r
-  MdeModulePkg/MdeModulePkg.dec\r
   MdePkg/MdePkg.dec\r
+  MdeModulePkg/MdeModulePkg.dec\r
 \r
 [LibraryClasses]\r
-  TimerLib\r
   BaseMemoryLib\r
   PeCoffGetEntryPointLib\r
   ReportStatusCodeLib\r
   CacheMaintenanceLib\r
   PeCoffLib\r
   PeiServicesTablePointerLib\r
-  \r
+  PcdLib\r
 \r
 [Guids]\r
-  gPeiAprioriFileNameGuid  ## SOMETIMES_CONSUMES ## GUID\r
-  gEfiFirmwareFileSystem2Guid ## SOMETIMES_CONSUME ## FV\r
-\r
+  gPeiAprioriFileNameGuid       ## SOMETIMES_CONSUMES   ## File\r
+  ## PRODUCES   ## UNDEFINED # Install ppi\r
+  ## CONSUMES   ## UNDEFINED # Locate ppi\r
+  gEfiFirmwareFileSystem2Guid\r
+  ## PRODUCES   ## UNDEFINED # Install ppi\r
+  ## CONSUMES   ## UNDEFINED # Locate ppi\r
+  ## CONSUMES   ## GUID      # Used to compare with FV's file system guid and get the FV's file system format\r
+  gEfiFirmwareFileSystem3Guid\r
+  \r
 [Ppis]\r
-  gEfiPeiStatusCodePpiGuid                      ## SOMETIMES_CONSUMES\r
-  gEfiPeiResetPpiGuid                           ## SOMETIMES_CONSUMES\r
+  gEfiPeiStatusCodePpiGuid                      ## SOMETIMES_CONSUMES # PeiReportStatusService is not ready if this PPI doesn't exist\r
+  gEfiPeiResetPpiGuid                           ## SOMETIMES_CONSUMES # PeiResetService is not ready if this PPI doesn't exist \r
   gEfiDxeIplPpiGuid                             ## CONSUMES\r
-  gEfiPeiMemoryDiscoveredPpiGuid                ## CONSUMES\r
-  gEfiPeiDecompressPpiGuid                      ## CONSUMES\r
-  gEfiPeiFirmwareVolumeInfoPpiGuid              ## CONSUMES\r
-  gEfiPeiLoadFilePpiGuid                        ## CONSUMES\r
-  gEfiPeiSecurity2PpiGuid                       ## CONSUMES\r
-  gEfiTemporaryRamSupportPpiGuid                ## CONSUMES\r
+  gEfiPeiMemoryDiscoveredPpiGuid                ## PRODUCES\r
+  gEfiPeiDecompressPpiGuid                      ## SOMETIMES_CONSUMES\r
+  ## NOTIFY\r
+  ## SOMETIMES_PRODUCES # Produce FvInfoPpi if the encapsulated FvImage is found\r
+  gEfiPeiFirmwareVolumeInfoPpiGuid\r
+  ## NOTIFY\r
+  ## SOMETIMES_PRODUCES # Produce FvInfoPpi2 if the encapsulated FvImage is found\r
+  gEfiPeiFirmwareVolumeInfo2PpiGuid\r
+  ## PRODUCES\r
+  ## CONSUMES\r
+  gEfiPeiLoadFilePpiGuid\r
+  gEfiPeiSecurity2PpiGuid                       ## NOTIFY\r
+  gEfiTemporaryRamSupportPpiGuid                ## SOMETIMES_CONSUMES\r
+  gEfiTemporaryRamDonePpiGuid                   ## SOMETIMES_CONSUMES\r
+  gEfiPeiReset2PpiGuid                          ## SOMETIMES_CONSUMES\r
+\r
+[Pcd]  \r
+  gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreMaxFvSupported                   ## CONSUMES\r
+  gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreMaxPeimPerFv                     ## CONSUMES\r
+  gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreMaxPpiSupported                  ## CONSUMES\r
+  gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreMaxPeiStackSize                  ## CONSUMES\r
+  gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreImageLoaderSearchTeSectionFirst  ## CONSUMES\r
+  gEfiMdeModulePkgTokenSpaceGuid.PcdFrameworkCompatibilitySupport           ## CONSUMES\r
+  gEfiMdeModulePkgTokenSpaceGuid.PcdLoadFixAddressPeiCodePageNumber         ## SOMETIMES_CONSUMES\r
+  gEfiMdeModulePkgTokenSpaceGuid.PcdLoadFixAddressBootTimeCodePageNumber    ## SOMETIMES_CONSUMES\r
+  gEfiMdeModulePkgTokenSpaceGuid.PcdLoadFixAddressRuntimeCodePageNumber     ## SOMETIMES_CONSUMES\r
+  gEfiMdeModulePkgTokenSpaceGuid.PcdLoadModuleAtFixAddressEnable            ## CONSUMES\r
+  gEfiMdeModulePkgTokenSpaceGuid.PcdShadowPeimOnS3Boot                      ## CONSUMES \r
+  gEfiMdeModulePkgTokenSpaceGuid.PcdShadowPeimOnBoot                        ## CONSUMES \r
+\r
+# [BootMode]\r
+# S3_RESUME             ## SOMETIMES_CONSUMES\r
 \r
-[FixedPcd.common]\r
-  gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreMaxFvSupported       ## CONSUMES\r
-  gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreMaxPeimPerFv         ## CONSUMES\r
-  gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreMaxPpiSupported      ## CONSUMES\r
-  gEfiMdePkgTokenSpaceGuid.PcdStatusCodeValuePeimDispatch      ## SOMETIMES_CONSUMES\r
-  gEfiMdePkgTokenSpaceGuid.PcdStatusCodeValuePeiCoreEntry       ## SOMETIMES_CONSUMES\r
-  gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreMaxPeiStackSize      ## CONSUMES\r
+# [Hob]\r
+# PHIT                  ## PRODUCES\r
+# RESOURCE_DESCRIPTOR   ## SOMETIMES_PRODUCES\r
+# RESOURCE_DESCRIPTOR   ## SOMETIMES_CONSUMES\r
+# MEMORY_ALLOCATION     ## SOMETIMES_CONSUMES\r
+# FIRMWARE_VOLUME       ## SOMETIMES_PRODUCES\r
+# FIRMWARE_VOLUME       ## SOMETIMES_CONSUMES\r
+# MEMORY_ALLOCATION     ## SOMETIMES_PRODUCES\r
+# MEMORY_ALLOCATION     ## PRODUCES # MEMORY_ALLOCATION_STACK\r
+# UNDEFINED             ## PRODUCES # MEMORY_POOL\r
 \r
-[FeaturePcd.common]\r
-  gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreImageLoaderSearchTeSectionFirst ## CONSUMES\r
-  gEfiMdeModulePkgTokenSpaceGuid.PcdFrameworkFvHobCompatibilitySupport    ## CONSUMES\r
-  
\ No newline at end of file
+[UserExtensions.TianoCore."ExtraFiles"]\r
+  PeiCoreExtra.uni\r