1## @file
2# PeiMain module is core module in PEI phase.
3#
4# It takes responsibilities of:
5# 1) Initialize memory, PPI, image services etc, to establish PEIM runtime environment.
6# 2) Dispatch PEIM from discovered FV.
7# 3) Handoff control to DxeIpl to load DXE core and enter DXE phase.
8#
9# Copyright (c) 2006 - 2015, Intel Corporation. All rights reserved.<BR>
10#
11#  This program and the accompanying materials
12#  are licensed and made available under the terms and conditions of the BSD License
13#  which accompanies this distribution. The full text of the license may be found at
14#  http://opensource.org/licenses/bsd-license.php
15#  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
16#  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
17#
18#
19##
20
21[Defines]
22  INF_VERSION                    = 0x00010005
23  BASE_NAME                      = PeiCore
24  MODULE_UNI_FILE                = PeiCore.uni
25  FILE_GUID                      = 52C05B14-0B98-496c-BC3B-04B50211D680
26  MODULE_TYPE                    = PEI_CORE
27  VERSION_STRING                 = 1.0
28  ENTRY_POINT                    = PeiCore
29
30#
31# The following information is for reference only and not required by the build tools.
32#
33#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC (EBC is for build only)
34#
35
36[Sources]
37  StatusCode/StatusCode.c
38  Security/Security.c
39  Reset/Reset.c
40  Ppi/Ppi.c
41  PeiMain/PeiMain.c
42  Memory/MemoryServices.c
43  Image/Image.c
44  Hob/Hob.c
45  FwVol/FwVol.c
46  FwVol/FwVol.h
47  Dispatcher/Dispatcher.c
48  Dependency/Dependency.c
49  Dependency/Dependency.h
50  BootMode/BootMode.c
51  CpuIo/CpuIo.c
52  PciCfg2/PciCfg2.c
53  PeiMain.h
54
55[Packages]
56  MdePkg/MdePkg.dec
57  MdeModulePkg/MdeModulePkg.dec
58
59[LibraryClasses]
60  BaseMemoryLib
61  PeCoffGetEntryPointLib
62  ReportStatusCodeLib
63  PeiServicesLib
64  PerformanceLib
65  HobLib
66  BaseLib
67  PeiCoreEntryPoint
68  DebugLib
69  MemoryAllocationLib
70  CacheMaintenanceLib
71  PeCoffLib
72  PeiServicesTablePointerLib
73  PcdLib
74
75[Guids]
76  gPeiAprioriFileNameGuid       ## SOMETIMES_CONSUMES   ## File
77  ## PRODUCES   ## UNDEFINED # Install ppi
78  ## CONSUMES   ## UNDEFINED # Locate ppi
79  gEfiFirmwareFileSystem2Guid
80  ## PRODUCES   ## UNDEFINED # Install ppi
81  ## CONSUMES   ## UNDEFINED # Locate ppi
82  ## CONSUMES   ## GUID      # Used to compare with FV's file system guid and get the FV's file system format
83  gEfiFirmwareFileSystem3Guid
84  
85[Ppis]
86  gEfiPeiStatusCodePpiGuid                      ## SOMETIMES_CONSUMES # PeiReportStatusService is not ready if this PPI doesn't exist
87  gEfiPeiResetPpiGuid                           ## SOMETIMES_CONSUMES # PeiResetService is not ready if this PPI doesn't exist 
88  gEfiDxeIplPpiGuid                             ## CONSUMES
89  gEfiPeiMemoryDiscoveredPpiGuid                ## PRODUCES
90  gEfiPeiDecompressPpiGuid                      ## SOMETIMES_CONSUMES
91  ## NOTIFY
92  ## SOMETIMES_PRODUCES # Produce FvInfoPpi if the encapsulated FvImage is found
93  gEfiPeiFirmwareVolumeInfoPpiGuid
94  ## NOTIFY
95  ## SOMETIMES_PRODUCES # Produce FvInfoPpi2 if the encapsulated FvImage is found
96  gEfiPeiFirmwareVolumeInfo2PpiGuid
97  ## PRODUCES
98  ## CONSUMES
99  gEfiPeiLoadFilePpiGuid
100  gEfiPeiSecurity2PpiGuid                       ## NOTIFY
101  gEfiTemporaryRamSupportPpiGuid                ## SOMETIMES_CONSUMES
102  gEfiTemporaryRamDonePpiGuid                   ## SOMETIMES_CONSUMES
103  gEfiPeiReset2PpiGuid                          ## SOMETIMES_CONSUMES
104
105[Pcd]  
106  gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreMaxFvSupported                   ## CONSUMES
107  gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreMaxPeimPerFv                     ## CONSUMES
108  gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreMaxPpiSupported                  ## CONSUMES
109  gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreMaxPeiStackSize                  ## CONSUMES
110  gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreImageLoaderSearchTeSectionFirst  ## CONSUMES
111  gEfiMdeModulePkgTokenSpaceGuid.PcdFrameworkCompatibilitySupport           ## CONSUMES
112  gEfiMdeModulePkgTokenSpaceGuid.PcdLoadFixAddressPeiCodePageNumber         ## SOMETIMES_CONSUMES
113  gEfiMdeModulePkgTokenSpaceGuid.PcdLoadFixAddressBootTimeCodePageNumber    ## SOMETIMES_CONSUMES
114  gEfiMdeModulePkgTokenSpaceGuid.PcdLoadFixAddressRuntimeCodePageNumber     ## SOMETIMES_CONSUMES
115  gEfiMdeModulePkgTokenSpaceGuid.PcdLoadModuleAtFixAddressEnable            ## CONSUMES
116  gEfiMdeModulePkgTokenSpaceGuid.PcdShadowPeimOnS3Boot                      ## CONSUMES 
117  gEfiMdeModulePkgTokenSpaceGuid.PcdShadowPeimOnBoot                        ## CONSUMES 
118
119# [BootMode]
120# S3_RESUME             ## SOMETIMES_CONSUMES
121
122# [Hob]
123# PHIT                  ## PRODUCES
124# RESOURCE_DESCRIPTOR   ## SOMETIMES_PRODUCES
125# RESOURCE_DESCRIPTOR   ## SOMETIMES_CONSUMES
126# MEMORY_ALLOCATION     ## SOMETIMES_CONSUMES
127# FIRMWARE_VOLUME       ## SOMETIMES_PRODUCES
128# FIRMWARE_VOLUME       ## SOMETIMES_CONSUMES
129# MEMORY_ALLOCATION     ## SOMETIMES_PRODUCES
130# MEMORY_ALLOCATION     ## PRODUCES # MEMORY_ALLOCATION_STACK
131# UNDEFINED             ## PRODUCES # MEMORY_POOL
132
133[UserExtensions.TianoCore."ExtraFiles"]
134  PeiCoreExtra.uni
135