]> git.proxmox.com Git - mirror_edk2.git/blob - QuarkPlatformPkg/Platform/Pei/PlatformInit/PlatformEarlyInit.inf
QuarkPlatformPkg: Remove PcdFrameworkCompatibilitySupport usage
[mirror_edk2.git] / QuarkPlatformPkg / Platform / Pei / PlatformInit / PlatformEarlyInit.inf
1 ## @file
2 # This is the Platform PEIM to initialize whole platform on PEI phase.
3 #
4 # This PEIM includes 3 parts, pre memory initialization, MRC
5 # wrapper and post memory initialization.
6 # On pre memory, following action is performed,
7 # 1. Initizluize GMCH.
8 # 2. Detect boot mode.
9 # 3. Detect video adapter to determine whether we need pre allocated
10 # memory.
11 #
12 # After that MRC wrapper calls MRC to initialize memory and install a PPI
13 # notify to do post memory
14 # initialization. MRC wrapper performance following actions,
15 # 1. Install EFI Memory.
16 # 2. Create HOB of system memory.
17 #
18 # On post memory, following action is performed,
19 # 1. QNC initialization after MRC.
20 # 2. SIO initialization.
21 # 3. Install ResetSystem and FinvFv PPI, relocate Stall to memory on
22 # recovery boot mode.
23 # 4. Set MTRR for PEI
24 # 5. Create FV HOB and Flash HOB
25 # 6. Install RecoveryModule and AtaController PPI if on recovery boot mode.
26 #
27 # This PEIM does not have any register access directly, it depends on
28 # IntelQNCLib, QNCAccess libraries to access Chipset
29 # registers.
30 #
31 # Platform.c - Provide main flow and entrypoint of PEIM.
32 # MemoryCallback.c - Includes a memory call back function notified when
33 # MRC is done.
34 # Recovery.c - provides the platform recoveyr functionality.
35 # MrcWrapper.c - Contains the logic to call MRC PPI and do Framework
36 # memory specific stuff like build memory map, build
37 # resource description hob for DXE phase,etc.
38 # Bootmode.c - Detect boot mode.
39 # Copyright (c) 2013 - 2019 Intel Corporation.
40 #
41 # SPDX-License-Identifier: BSD-2-Clause-Patent
42 #
43 ##
44
45 [Defines]
46 INF_VERSION = 0x00010005
47 BASE_NAME = PlatformEarlyInitPei
48 FILE_GUID = 9618C0DC-50A4-496c-994F-7241F282ED01
49 MODULE_TYPE = PEIM
50 VERSION_STRING = 1.0
51 ENTRY_POINT = PeiInitPlatform
52
53 #
54 # The following information is for reference only and not required by the build tools.
55 #
56 # VALID_ARCHITECTURES = IA32 X64
57 #
58
59 [Sources]
60 Generic/Recovery.c
61 PlatformErratas.c
62 MrcWrapper.c
63 MrcWrapper.h
64 PlatformEarlyInit.c
65 PlatformEarlyInit.h
66 MemoryCallback.c
67 BootMode.c
68 CommonHeader.h
69 PeiFvSecurity.c
70 PeiFvSecurity.h
71
72 [Packages]
73 MdePkg/MdePkg.dec
74 MdeModulePkg/MdeModulePkg.dec
75 UefiCpuPkg/UefiCpuPkg.dec
76 IntelFrameworkPkg/IntelFrameworkPkg.dec
77 IntelFrameworkModulePkg/IntelFrameworkModulePkg.dec
78 QuarkPlatformPkg/QuarkPlatformPkg.dec
79 QuarkSocPkg/QuarkSocPkg.dec
80
81 [LibraryClasses]
82 ResetSystemLib
83 PrintLib
84 TimerLib
85 PcdLib
86 IntelQNCLib
87 ReportStatusCodeLib
88 PciLib
89 PciExpressLib
90 IoLib
91 PciCf8Lib
92 HobLib
93 BaseMemoryLib
94 PeiServicesTablePointerLib
95 PeiServicesLib
96 BaseLib
97 PeimEntryPoint
98 DebugLib
99 MemoryAllocationLib
100 PerformanceLib
101 CacheMaintenanceLib
102 MtrrLib
103 QNCAccessLib
104 PlatformHelperLib
105 PlatformPcieHelperLib
106 I2cLib
107
108 [Guids]
109 gEfiMemoryConfigDataGuid # ALWAYS_CONSUMED L"MemoryConfig"
110 gEfiAcpiVariableGuid # ALWAYS_CONSUMED L"AcpiGlobalVariab"
111 gEfiMemoryTypeInformationGuid # ALWAYS_CONSUMED L"MemoryTypeInformation"
112 gEfiMemoryConfigDataGuid # SOMETIMES_PRODUCED Hob: GUID_EXTENSION
113 gEfiSmmPeiSmramMemoryReserveGuid # ALWAYS_PRODUCED Hob: GUID_EXTENSION
114 gEfiFirmwareFileSystem2Guid # ALWAYS_CONSUMED
115 gEfiCapsuleGuid # ALWAYS_CONSUMED
116 gPeiCapsuleOnDataCDGuid
117 gPeiCapsuleOnFatIdeDiskGuid
118 gPeiCapsuleOnFatUsbDiskGuid
119 gEfiMemoryOverwriteControlDataGuid # SOMETIMES_CONSUMED
120 gEfiQuarkCapsuleGuid
121
122 [Ppis]
123 gQNCMemoryInitPpiGuid # PPI ALWAYS_CONSUMED
124 gEfiPeiMemoryDiscoveredPpiGuid # PPI ALWAYS_PRODUCED
125 gPeiAtaControllerPpiGuid # PPI SOMETIMES_PRODUCED
126 gEfiPeiStallPpiGuid # PPI ALWAYS_PRODUCED
127 gEfiPeiDeviceRecoveryModulePpiGuid # PPI SOMETIMES_CONSUMED
128 gEfiPeiRecoveryModulePpiGuid # PPI SOMETIMES_PRODUCED
129 gEfiPeiResetPpiGuid # PPI ALWAYS_PRODUCED
130 gEfiPeiReadOnlyVariable2PpiGuid # PPI ALWAYS_CONSUMED
131 gEfiPeiBootInRecoveryModePpiGuid # PPI SOMETIMES_PRODUCED
132 gEfiPeiMasterBootModePpiGuid # PPI ALWAYS_PRODUCED
133 gEfiPeiFirmwareVolumeInfoPpiGuid
134 gEfiEndOfPeiSignalPpiGuid
135 gEfiPeiVirtualBlockIoPpiGuid
136 gPeiCapsulePpiGuid # PPI ALWAYS_CONSUMED
137
138 [FeaturePcd]
139 gEfiMdeModulePkgTokenSpaceGuid.PcdRecoveryOnFatUsbDisk
140 gEfiMdeModulePkgTokenSpaceGuid.PcdRecoveryOnDataCD
141 gEfiMdeModulePkgTokenSpaceGuid.PcdRecoveryOnFatFloppyDisk
142 gEfiMdeModulePkgTokenSpaceGuid.PcdRecoveryOnIdeDisk
143 gQuarkPlatformTokenSpaceGuid.WaitIfResetDueToError
144
145 [Pcd]
146 gQuarkPlatformTokenSpaceGuid.PcdEsramStage1Base
147 gQuarkPlatformTokenSpaceGuid.PcdFlashAreaSize
148 gQuarkPlatformTokenSpaceGuid.PcdFlashAreaBaseAddress
149 gQuarkPlatformTokenSpaceGuid.PcdEccScrubBlkSize
150 gQuarkPlatformTokenSpaceGuid.PcdEccScrubInterval
151 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase
152 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableSize
153 gQuarkPlatformTokenSpaceGuid.PcdFlashQNCMicrocodeSize
154 gEfiQuarkNcSocIdTokenSpaceGuid.PcdPmbaIoBaseAddress
155 gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress
156 gEfiQuarkNcSocIdTokenSpaceGuid.PcdPciHostBridgeIoBase
157 gEfiQuarkNcSocIdTokenSpaceGuid.PcdPciHostBridgeIoSize
158 gEfiQuarkSCSocIdTokenSpaceGuid.PcdIohUartFunctionNumber
159 gEfiQuarkSCSocIdTokenSpaceGuid.PcdIohUartBusNumber
160 gEfiQuarkSCSocIdTokenSpaceGuid.PcdIohUartDevNumber
161 gEfiQuarkSCSocIdTokenSpaceGuid.PcdIohGpioBusNumber
162 gEfiQuarkSCSocIdTokenSpaceGuid.PcdIohGpioDevNumber
163 gEfiQuarkSCSocIdTokenSpaceGuid.PcdIohGpioFunctionNumber
164 gEfiQuarkSCSocIdTokenSpaceGuid.PcdIohGpioBarRegister
165 gEfiQuarkSCSocIdTokenSpaceGuid.PcdIohGpioMmioBase
166 gEfiQuarkSCSocIdTokenSpaceGuid.PcdIohMac0MmioBase
167 gEfiQuarkSCSocIdTokenSpaceGuid.PcdIohMac1MmioBase
168 gEfiQuarkSCSocIdTokenSpaceGuid.PcdPeiQNCUsbControllerMemoryBaseAddress
169 gEfiQuarkNcSocIdTokenSpaceGuid.PcdRcbaMmioBaseAddress
170 gEfiQuarkNcSocIdTokenSpaceGuid.PcdPciHostBridgeMemory32Base
171 gEfiQuarkNcSocIdTokenSpaceGuid.PcdPciHostBridgeMemory32Size
172 gEfiQuarkNcSocIdTokenSpaceGuid.PcdPciHostBridgeMemory64Base
173 gEfiQuarkNcSocIdTokenSpaceGuid.PcdPciHostBridgeMemory64Size
174 gEfiQuarkNcSocIdTokenSpaceGuid.PcdPciExpressSize
175 gEfiQuarkNcSocIdTokenSpaceGuid.PcdGbaIoBaseAddress
176 gEfiQuarkNcSocIdTokenSpaceGuid.PcdQuarkMicrocodeFile
177 gEfiQuarkNcSocIdTokenSpaceGuid.PcdTSegSize
178 gEfiQuarkNcSocIdTokenSpaceGuid.PcdESramMemorySize
179 gQuarkPlatformTokenSpaceGuid.PcdFlashFvRecoverySize
180 gQuarkPlatformTokenSpaceGuid.PcdFlashFvRecoveryBase
181 gQuarkPlatformTokenSpaceGuid.PcdFlashFvMainSize
182 gQuarkPlatformTokenSpaceGuid.PcdFlashFvMainBase
183 gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdBootState
184 gQuarkPlatformTokenSpaceGuid.PcdFlashFvPayloadBase
185 gQuarkPlatformTokenSpaceGuid.PcdFlashFvPayloadSize
186 gQuarkPlatformTokenSpaceGuid.PcdEnableFastBoot
187 gQuarkPlatformTokenSpaceGuid.PcdPlatformType
188 gEfiQuarkNcSocIdTokenSpaceGuid.PcdMrcParameters
189 gEfiQuarkSCSocIdTokenSpaceGuid.PcdIohEthernetMac0
190 gEfiQuarkSCSocIdTokenSpaceGuid.PcdIohEthernetMac1
191
192 [Depex]
193 gEfiPeiReadOnlyVariable2PpiGuid AND gQNCMemoryInitPpiGuid