## @file # PeiMain module is core module in PEI phase. It takes responsibilities of: # 1) Initialize memory, PPI, image services etc, to establish PEIM runtime environment. # 2) Dispatch PEIM from discovered FV. # 3) Handoff control to DxeIpl to load DXE core and enter DXE phase. # # Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.
# # This program and the accompanying materials # are licensed and made available under the terms and conditions of the BSD License # which accompanies this distribution. The full text of the license may be found at # http://opensource.org/licenses/bsd-license.php # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. # # ## [Defines] INF_VERSION = 0x00010005 BASE_NAME = PeiCore FILE_GUID = 52C05B14-0B98-496c-BC3B-04B50211D680 MODULE_TYPE = PEI_CORE VERSION_STRING = 1.0 ENTRY_POINT = PeiCore # # The following information is for reference only and not required by the build tools. # # VALID_ARCHITECTURES = IA32 X64 IPF EBC (EBC is for build only) # [Sources] StatusCode/StatusCode.c Security/Security.c Reset/Reset.c Ppi/Ppi.c PeiMain/PeiMain.c Memory/MemoryServices.c Image/Image.c Hob/Hob.c FwVol/FwVol.c FwVol/FwVol.h Dispatcher/Dispatcher.c Dependency/Dependency.c Dependency/Dependency.h BootMode/BootMode.c CpuIo/CpuIo.c PciCfg2/PciCfg2.c PeiMain.h [Packages] MdePkg/MdePkg.dec MdeModulePkg/MdeModulePkg.dec [LibraryClasses] TimerLib BaseMemoryLib PeCoffGetEntryPointLib ReportStatusCodeLib PeiServicesLib PerformanceLib HobLib BaseLib PeiCoreEntryPoint DebugLib MemoryAllocationLib CacheMaintenanceLib PeCoffLib PeiServicesTablePointerLib [Guids] gPeiAprioriFileNameGuid ## CONSUMES ## GUID gEfiFirmwareFileSystem2Guid ## CONSUMES ## FV [Ppis] gEfiPeiStatusCodePpiGuid ## SOMETIMES_CONSUMES (PeiReportStatusService is not ready if this PPI doesn't exist) gEfiPeiResetPpiGuid ## SOMETIMES_CONSUMES (PeiResetService is not ready if this PPI doesn't exist) gEfiDxeIplPpiGuid ## CONSUMES gEfiPeiMemoryDiscoveredPpiGuid ## PRODUCES gEfiPeiDecompressPpiGuid ## CONSUMES gEfiPeiFirmwareVolumeInfoPpiGuid ## NOTIFY ## SOMETIMES_PRODUCES (Produce FvInfoPpi if the encapsulated FvImage is found) gEfiPeiLoadFilePpiGuid ## PRODUCES ## SOMETIMES_CONSUMES (The default load PeImage logic will be used when this PPI doesn't exist) gEfiPeiSecurity2PpiGuid ## NOTIFY gEfiTemporaryRamSupportPpiGuid ## CONSUMES [FixedPcd] gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreMaxFvSupported ## CONSUMES gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreMaxPeimPerFv ## CONSUMES gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreMaxPpiSupported ## CONSUMES [Pcd] gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreMaxPeiStackSize ## CONSUMES gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreImageLoaderSearchTeSectionFirst ## CONSUMES gEfiMdeModulePkgTokenSpaceGuid.PcdFrameworkCompatibilitySupport ## CONSUMES gEfiMdeModulePkgTokenSpaceGuid.PcdLoadFixAddressPeiCodePageNumber ## SOMETIMES_CONSUMES gEfiMdeModulePkgTokenSpaceGuid.PcdLoadFixAddressBootTimeCodePageNumber ## SOMETIMES_CONSUMES gEfiMdeModulePkgTokenSpaceGuid.PcdLoadFixAddressRuntimeCodePageNumber ## SOMETIMES_CONSUMES gEfiMdeModulePkgTokenSpaceGuid.PcdLoadModuleAtFixAddressEnable ## CONSUMES