]> git.proxmox.com Git - mirror_edk2.git/blob - QuarkPlatformPkg/Quark.dsc
QuarkPlatformPkg: Set PcdSpeculationBarrierType to CPUID
[mirror_edk2.git] / QuarkPlatformPkg / Quark.dsc
1 ## @file
2 # Clanton Peak CRB platform with 32-bit DXE for 4MB/8MB flash devices.
3 #
4 # This package provides Clanton Peak CRB platform specific modules.
5 # Copyright (c) 2013 - 2019 Intel Corporation.
6 #
7 # SPDX-License-Identifier: BSD-2-Clause-Patent
8 #
9 ##
10
11 ################################################################################
12 #
13 # Defines Section - statements that will be processed to create a Makefile.
14 #
15 ################################################################################
16 [Defines]
17 DSC_SPECIFICATION = 0x00010005
18 PLATFORM_NAME = Quark
19 PLATFORM_GUID = F6E7730E-0C7A-4741-9DFC-6BC8B86CD865
20 PLATFORM_VERSION = 0.1
21 FLASH_DEFINITION = QuarkPlatformPkg/Quark.fdf
22 OUTPUT_DIRECTORY = Build/Quark
23 SUPPORTED_ARCHITECTURES = IA32
24 BUILD_TARGETS = DEBUG|RELEASE
25 SKUID_IDENTIFIER = DEFAULT
26 VPD_TOOL_GUID = 8C3D856A-9BE6-468E-850A-24F7A8D38E08
27
28 #
29 # Platform On/Off features are defined here
30 #
31 DEFINE SECURE_BOOT_ENABLE = FALSE
32 DEFINE MEASURED_BOOT_ENABLE = FALSE
33 DEFINE SOURCE_DEBUG_ENABLE = FALSE
34 DEFINE PERFORMANCE_ENABLE = FALSE
35 DEFINE LOGGING = FALSE
36 DEFINE CAPSULE_ENABLE = FALSE
37 DEFINE RECOVERY_ENABLE = FALSE
38
39 #
40 # Galileo board. Options are [GEN1, GEN2]
41 #
42 DEFINE GALILEO = GEN2
43
44 #
45 # TPM 1.2 Hardware. Options are [NONE, LPC, ATMEL_I2C, INFINEON_I2C]
46 #
47 DEFINE TPM_12_HARDWARE = NONE
48
49 !if $(TARGET) == "DEBUG"
50 DEFINE LOGGING = TRUE
51 !endif
52
53 !if $(PERFORMANCE_ENABLE)
54 DEFINE SOURCE_DEBUG_ENABLE = FALSE
55 DEFINE LOGGING = FALSE
56 !endif
57
58 ################################################################################
59 #
60 # SKU Identification section - list of all SKU IDs supported by this
61 # Platform.
62 #
63 ################################################################################
64 [SkuIds]
65 0|DEFAULT # The entry: 0|DEFAULT is reserved and always required.
66
67 ################################################################################
68 #
69 # Library Class section - list of all Library Classes needed by this Platform.
70 #
71 ################################################################################
72 [LibraryClasses]
73 #
74 # Entry point
75 #
76 PeiCoreEntryPoint|MdePkg/Library/PeiCoreEntryPoint/PeiCoreEntryPoint.inf
77 PeimEntryPoint|MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf
78 DxeCoreEntryPoint|MdePkg/Library/DxeCoreEntryPoint/DxeCoreEntryPoint.inf
79 UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
80 UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf
81
82 #
83 # Basic
84 #
85 BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
86 BaseMemoryLib|MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf
87 PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
88 CpuLib|MdePkg/Library/BaseCpuLib/BaseCpuLib.inf
89 CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/DxeCpuExceptionHandlerLib.inf
90 IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
91 PciLib|MdePkg/Library/BasePciLibPciExpress/BasePciLibPciExpress.inf
92 PciSegmentLib|MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf
93 PciCf8Lib|MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf
94 PciExpressLib|MdePkg/Library/BasePciExpressLib/BasePciExpressLib.inf
95 CacheMaintenanceLib|MdePkg/Library/BaseCacheMaintenanceLib/BaseCacheMaintenanceLib.inf
96 PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf
97 !if $(SOURCE_DEBUG_ENABLE)
98 PeCoffExtraActionLib|SourceLevelDebugPkg/Library/PeCoffExtraActionLibDebug/PeCoffExtraActionLibDebug.inf
99 DebugCommunicationLib|SourceLevelDebugPkg/Library/DebugCommunicationLibSerialPort/DebugCommunicationLibSerialPort.inf
100 !else
101 PeCoffExtraActionLib|MdePkg/Library/BasePeCoffExtraActionLibNull/BasePeCoffExtraActionLibNull.inf
102 !endif
103 DebugAgentLib|MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf
104 PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
105
106 #
107 # UEFI & PI
108 #
109 UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
110 UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
111 UefiRuntimeLib|MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf
112 UefiLib|MdePkg/Library/UefiLib/UefiLib.inf
113 HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf
114 UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf
115 DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
116 UefiDecompressLib|MdeModulePkg/Library/BaseUefiTianoCustomDecompressLib/BaseUefiTianoCustomDecompressLib.inf
117 PeiServicesTablePointerLib|MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf
118 PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf
119 DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf
120 DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf
121 UefiCpuLib|UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.inf
122 SortLib|MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf
123 UefiBootManagerLib|MdeModulePkg/Library/UefiBootManagerLib/UefiBootManagerLib.inf
124
125 #
126 # Generic Modules
127 #
128 S3BootScriptLib|MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf
129 S3IoLib|MdePkg/Library/BaseS3IoLib/BaseS3IoLib.inf
130 S3PciLib|MdePkg/Library/BaseS3PciLib/BaseS3PciLib.inf
131 UefiUsbLib|MdePkg/Library/UefiUsbLib/UefiUsbLib.inf
132 UefiScsiLib|MdePkg/Library/UefiScsiLib/UefiScsiLib.inf
133 NetLib|MdeModulePkg/Library/DxeNetLib/DxeNetLib.inf
134 IpIoLib|MdeModulePkg/Library/DxeIpIoLib/DxeIpIoLib.inf
135 UdpIoLib|MdeModulePkg/Library/DxeUdpIoLib/DxeUdpIoLib.inf
136 DpcLib|MdeModulePkg/Library/DxeDpcLib/DxeDpcLib.inf
137 OemHookStatusCodeLib|MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf
138 SynchronizationLib|MdePkg/Library/BaseSynchronizationLib/BaseSynchronizationLib.inf
139 SecurityManagementLib|MdeModulePkg/Library/DxeSecurityManagementLib/DxeSecurityManagementLib.inf
140 SmmCorePlatformHookLib|MdeModulePkg/Library/SmmCorePlatformHookLibNull/SmmCorePlatformHookLibNull.inf
141 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
142 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
143 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
144 ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf
145 ExtractGuidedSectionLib|MdePkg/Library/DxeExtractGuidedSectionLib/DxeExtractGuidedSectionLib.inf
146 LockBoxLib|MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf
147 VarCheckLib|MdeModulePkg/Library/VarCheckLib/VarCheckLib.inf
148 DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf
149 !if $(LOGGING)
150 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
151 !else
152 DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
153 !endif
154 !if $(PERFORMANCE_ENABLE)
155 PerformanceLib|MdeModulePkg/Library/DxePerformanceLib/DxePerformanceLib.inf
156 !else
157 PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf
158 !endif
159
160 ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf
161 FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf
162
163 OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf
164 IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf
165 BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf
166
167 !if $(SECURE_BOOT_ENABLE)
168 PlatformSecureLib|QuarkPlatformPkg/Library/PlatformSecureLib/PlatformSecureLib.inf
169 AuthVariableLib|SecurityPkg/Library/AuthVariableLib/AuthVariableLib.inf
170 !else
171 AuthVariableLib|MdeModulePkg/Library/AuthVariableLibNull/AuthVariableLibNull.inf
172 !endif
173
174 !if $(MEASURED_BOOT_ENABLE)
175 TpmMeasurementLib|SecurityPkg/Library/DxeTpmMeasurementLib/DxeTpmMeasurementLib.inf
176 Tpm12CommandLib|SecurityPkg/Library/Tpm12CommandLib/Tpm12CommandLib.inf
177 !if $(TPM_12_HARDWARE) == LPC
178 Tpm12DeviceLib|SecurityPkg/Library/Tpm12DeviceLibDTpm/Tpm12DeviceLibDTpm.inf
179 !endif
180 !if $(TPM_12_HARDWARE) == ATMEL_I2C
181 Tpm12DeviceLib|QuarkPlatformPkg/Library/Tpm12DeviceLibAtmelI2c/Tpm12DeviceLibAtmelI2c.inf
182 !endif
183 !if $(TPM_12_HARDWARE) == INFINEON_I2C
184 Tpm12DeviceLib|QuarkPlatformPkg/Library/Tpm12DeviceLibInfineonI2c/Tpm12DeviceLibInfineonI2c.inf
185 !endif
186 TcgPpVendorLib|SecurityPkg/Library/TcgPpVendorLibNull/TcgPpVendorLibNull.inf
187 !else
188 TpmMeasurementLib|MdeModulePkg/Library/TpmMeasurementLibNull/TpmMeasurementLibNull.inf
189 !endif
190
191 FileExplorerLib|MdeModulePkg/Library/FileExplorerLib/FileExplorerLib.inf
192
193 #
194 # CPU
195 #
196 MtrrLib|QuarkSocPkg/QuarkNorthCluster/Library/MtrrLib/MtrrLib.inf
197 LocalApicLib|UefiCpuPkg/Library/BaseXApicLib/BaseXApicLib.inf
198 MpInitLib|UefiCpuPkg/Library/MpInitLib/DxeMpInitLib.inf
199
200 #
201 # Quark North Cluster
202 #
203 SmmLib|QuarkSocPkg/QuarkNorthCluster/Library/QNCSmmLib/QNCSmmLib.inf
204 SmbusLib|QuarkSocPkg/QuarkNorthCluster/Library/SmbusLib/SmbusLib.inf
205 TimerLib|PcAtChipsetPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf
206 ResetSystemLib|QuarkSocPkg/QuarkNorthCluster/Library/ResetSystemLib/ResetSystemLib.inf
207 IntelQNCLib|QuarkSocPkg/QuarkNorthCluster/Library/IntelQNCLib/IntelQNCLib.inf
208 QNCAccessLib|QuarkSocPkg/QuarkNorthCluster/Library/QNCAccessLib/QNCAccessLib.inf
209 IoApicLib|PcAtChipsetPkg/Library/BaseIoApicLib/BaseIoApicLib.inf
210
211 #
212 # Quark South Cluster
213 #
214 IohLib|QuarkSocPkg/QuarkSouthCluster/Library/IohLib/IohLib.inf
215 I2cLib|QuarkSocPkg/QuarkSouthCluster/Library/I2cLib/I2cLib.inf
216 SerialPortLib|MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf
217 PlatformHookLib|MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf
218
219 #
220 # Quark Platform
221 #
222 PlatformSecLib|QuarkPlatformPkg/Library/PlatformSecLib/PlatformSecLib.inf
223 PlatformPcieHelperLib|QuarkPlatformPkg/Library/PlatformPcieHelperLib/PlatformPcieHelperLib.inf
224 PlatformHelperLib|QuarkPlatformPkg/Library/PlatformHelperLib/DxePlatformHelperLib.inf
225
226 !if $(CAPSULE_ENABLE)
227 CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibFmp/DxeCapsuleLib.inf
228 BmpSupportLib|MdeModulePkg/Library/BaseBmpSupportLib/BaseBmpSupportLib.inf
229 SafeIntLib|MdePkg/Library/BaseSafeIntLib/BaseSafeIntLib.inf
230 !else
231 CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibNull/DxeCapsuleLibNull.inf
232 !endif
233
234 EdkiiSystemCapsuleLib|SignedCapsulePkg/Library/EdkiiSystemCapsuleLib/EdkiiSystemCapsuleLib.inf
235 FmpAuthenticationLib|MdeModulePkg/Library/FmpAuthenticationLibNull/FmpAuthenticationLibNull.inf
236 IniParsingLib|SignedCapsulePkg/Library/IniParsingLib/IniParsingLib.inf
237 PlatformFlashAccessLib|QuarkPlatformPkg/Feature/Capsule/Library/PlatformFlashAccessLib/PlatformFlashAccessLibDxe.inf
238 DisplayUpdateProgressLib|MdeModulePkg/Library/DisplayUpdateProgressLibText/DisplayUpdateProgressLibText.inf
239
240 [LibraryClasses.common.SEC]
241 #
242 # SEC specific phase
243 #
244 ReportStatusCodeLib|MdePkg/Library/BaseReportStatusCodeLibNull/BaseReportStatusCodeLibNull.inf
245 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
246 TimerLib|PcAtChipsetPkg/Library/AcpiTimerLib/BaseAcpiTimerLib.inf
247 HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
248 MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
249 CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/SecPeiCpuExceptionHandlerLib.inf
250
251 [LibraryClasses.IA32.PEIM,LibraryClasses.IA32.PEI_CORE]
252 #
253 # PEI phase common
254 #
255 PcdLib|MdePkg/Library/PeiPcdLib/PeiPcdLib.inf
256 HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
257 MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
258 ReportStatusCodeLib|MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf
259 ExtractGuidedSectionLib|MdePkg/Library/PeiExtractGuidedSectionLib/PeiExtractGuidedSectionLib.inf
260 LockBoxLib|MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxPeiLib.inf
261 TimerLib|PcAtChipsetPkg/Library/AcpiTimerLib/BaseAcpiTimerLib.inf
262 PlatformHelperLib|QuarkPlatformPkg/Library/PlatformHelperLib/PeiPlatformHelperLib.inf
263 CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/SecPeiCpuExceptionHandlerLib.inf
264 MpInitLib|UefiCpuPkg/Library/MpInitLib/PeiMpInitLib.inf
265 BaseCryptLib|CryptoPkg/Library/BaseCryptLib/PeiCryptLib.inf
266 !if $(PERFORMANCE_ENABLE)
267 PerformanceLib|MdeModulePkg/Library/PeiPerformanceLib/PeiPerformanceLib.inf
268 !endif
269
270 [LibraryClasses.IA32.DXE_CORE]
271 HobLib|MdePkg/Library/DxeCoreHobLib/DxeCoreHobLib.inf
272 MemoryAllocationLib|MdeModulePkg/Library/DxeCoreMemoryAllocationLib/DxeCoreMemoryAllocationLib.inf
273 CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/DxeCpuExceptionHandlerLib.inf
274 !if $(PERFORMANCE_ENABLE)
275 PerformanceLib|MdeModulePkg/Library/DxeCorePerformanceLib/DxeCorePerformanceLib.inf
276 !endif
277
278 [LibraryClasses.IA32.DXE_SMM_DRIVER]
279 MmServicesTableLib|MdePkg/Library/MmServicesTableLib/MmServicesTableLib.inf
280 SmmServicesTableLib|MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf
281 ReportStatusCodeLib|MdeModulePkg/Library/SmmReportStatusCodeLib/SmmReportStatusCodeLib.inf
282 MemoryAllocationLib|MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf
283 LockBoxLib|MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf
284 PciLib|MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf
285 CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/SmmCpuExceptionHandlerLib.inf
286 SmmMemLib|MdePkg/Library/SmmMemLib/SmmMemLib.inf
287 BaseCryptLib|CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf
288 !if $(PERFORMANCE_ENABLE)
289 PerformanceLib|MdeModulePkg/Library/SmmPerformanceLib/SmmPerformanceLib.inf
290 !endif
291
292 [LibraryClasses.IA32.SMM_CORE]
293 SmmServicesTableLib|MdeModulePkg/Library/PiSmmCoreSmmServicesTableLib/PiSmmCoreSmmServicesTableLib.inf
294 ReportStatusCodeLib|MdeModulePkg/Library/SmmReportStatusCodeLib/SmmReportStatusCodeLib.inf
295 MemoryAllocationLib|MdeModulePkg/Library/PiSmmCoreMemoryAllocationLib/PiSmmCoreMemoryAllocationLib.inf
296 PciLib|MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf
297 SmmMemLib|MdePkg/Library/SmmMemLib/SmmMemLib.inf
298 !if $(SECURE_BOOT_ENABLE) || $(MEASURED_BOOT_ENABLE)
299 BaseCryptLib|CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf
300 !endif
301 !if $(PERFORMANCE_ENABLE)
302 PerformanceLib|MdeModulePkg/Library/SmmCorePerformanceLib/SmmCorePerformanceLib.inf
303 !endif
304
305 [LibraryClasses.IA32.DXE_RUNTIME_DRIVER]
306 ReportStatusCodeLib|MdeModulePkg/Library/RuntimeDxeReportStatusCodeLib/RuntimeDxeReportStatusCodeLib.inf
307 QNCAccessLib|QuarkSocPkg/QuarkNorthCluster/Library/QNCAccessLib/RuntimeQNCAccessLib.inf
308 PciLib|MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf
309 !if $(SECURE_BOOT_ENABLE) || $(MEASURED_BOOT_ENABLE)
310 BaseCryptLib|CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf
311 !endif
312
313 !if $(CAPSULE_ENABLE)
314 CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibFmp/DxeRuntimeCapsuleLib.inf
315 !endif
316
317 [LibraryClasses.IA32.UEFI_DRIVER,LibraryClasses.IA32.UEFI_APPLICATION]
318 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
319
320 ################################################################################
321 #
322 # Pcd Section - list of all EDK II PCD Entries defined by this Platform
323 #
324 ################################################################################
325 [PcdsFeatureFlag]
326 gEfiMdeModulePkgTokenSpaceGuid.PcdDevicePathSupportDevicePathToText|TRUE
327 gEfiMdeModulePkgTokenSpaceGuid.PcdDevicePathSupportDevicePathFromText|TRUE
328 gEfiMdeModulePkgTokenSpaceGuid.PcdSupportUpdateCapsuleReset|TRUE
329 gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSwitchToLongMode|FALSE
330 gEfiMdeModulePkgTokenSpaceGuid.PcdPciBusHotplugDeviceSupport|FALSE
331 gEfiMdeModulePkgTokenSpaceGuid.PcdInstallAcpiSdtProtocol|TRUE
332 !if $(SOURCE_DEBUG_ENABLE)
333 gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmDebug|TRUE
334 !endif
335
336 !if $(TARGET) == "RELEASE"
337 gQuarkPlatformTokenSpaceGuid.WaitIfResetDueToError|FALSE
338 !else
339 gQuarkPlatformTokenSpaceGuid.WaitIfResetDueToError|TRUE
340 !endif
341
342 [PcdsFixedAtBuild]
343 gUefiCpuPkgTokenSpaceGuid.PcdCpuMaxLogicalProcessorNumber|1
344 gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdS3AcpiReservedMemorySize|0x20000
345 gEfiMdeModulePkgTokenSpaceGuid.PcdResetOnMemoryTypeInformationChange|TRUE
346 !if $(LOGGING)
347 !if $(SOURCE_DEBUG_ENABLE)
348 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x17
349 !else
350 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x27
351 !endif
352 gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x07
353 !else
354 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x0
355 gEfiMdePkgTokenSpaceGuid.PcdPostCodePropertyMask|0x0
356 gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x3
357 !endif
358 gEfiMdePkgTokenSpaceGuid.PcdPostCodePropertyMask|0x18
359 gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0xE0000000
360 !if $(GALILEO) == GEN1
361 gEfiMdePkgTokenSpaceGuid.PcdUartDefaultBaudRate|460800
362 !endif
363 !if $(GALILEO) == GEN2
364 gEfiMdePkgTokenSpaceGuid.PcdUartDefaultBaudRate|921600
365 !endif
366 gEfiMdePkgTokenSpaceGuid.PcdUartDefaultDataBits|8
367 gEfiMdePkgTokenSpaceGuid.PcdUartDefaultParity|1
368 gEfiMdePkgTokenSpaceGuid.PcdUartDefaultStopBits|1
369 gEfiMdePkgTokenSpaceGuid.PcdDefaultTerminalType|0
370 !if $(PERFORMANCE_ENABLE)
371 gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask|0x1
372 gEfiMdeModulePkgTokenSpaceGuid.PcdMaxPeiPerformanceLogEntries|80
373 !else
374 gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask|0x00
375 !endif
376 gEfiMdeModulePkgTokenSpaceGuid.PcdLoadModuleAtFixAddressEnable|0
377 !if $(SECURE_BOOT_ENABLE)
378 gEfiMdeModulePkgTokenSpaceGuid.PcdMaxVariableSize|0x2000
379 !endif
380 gEfiMdeModulePkgTokenSpaceGuid.PcdHwErrStorageSize|0x00002000
381 gEfiMdeModulePkgTokenSpaceGuid.PcdMaxHardwareErrorVariableSize|0x1000
382 ## RTC Update Timeout Value, need to increase timeout since also
383 # waiting for RTC to be busy.
384 gEfiMdeModulePkgTokenSpaceGuid.PcdRealTimeClockUpdateTimeout|500000
385
386 !if $(SECURE_BOOT_ENABLE)
387 # override the default values from SecurityPkg to ensure images from all sources are verified in secure boot
388 gEfiSecurityPkgTokenSpaceGuid.PcdOptionRomImageVerificationPolicy|0x04
389 gEfiSecurityPkgTokenSpaceGuid.PcdFixedMediaImageVerificationPolicy|0x04
390 gEfiSecurityPkgTokenSpaceGuid.PcdRemovableMediaImageVerificationPolicy|0x04
391 !endif
392 gQuarkPlatformTokenSpaceGuid.PcdEsramStage1Base|0x80000000
393
394 !if $(SOURCE_DEBUG_ENABLE)
395 gEfiSourceLevelDebugPkgTokenSpaceGuid.PcdDebugLoadImageMethod|0x2
396 !endif
397
398 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialUseMmio|TRUE
399 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase|0x9000B000
400 !if $(GALILEO) == GEN1
401 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialBaudRate|460800
402 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialUseHardwareFlowControl|FALSE
403 !endif
404 !if $(GALILEO) == GEN2
405 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialBaudRate|921600
406 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialUseHardwareFlowControl|FALSE
407 !endif
408 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialLineControl|0x03
409 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialFifoControl|0x07
410 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialDetectCable|FALSE
411 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialClockRate|44236800
412 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialPciDeviceInfo|{0x14, 0x05, 0x84, 0x00, 0xFF}
413 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterStride|4
414
415 #
416 # typedef struct {
417 # UINT16 VendorId; ///< Vendor ID to match the PCI device. The value 0xFFFF terminates the list of entries.
418 # UINT16 DeviceId; ///< Device ID to match the PCI device
419 # UINT32 ClockRate; ///< UART clock rate. Set to 0 for default clock rate of 1843200 Hz
420 # UINT64 Offset; ///< The byte offset into to the BAR
421 # UINT8 BarIndex; ///< Which BAR to get the UART base address
422 # UINT8 RegisterStride; ///< UART register stride in bytes. Set to 0 for default register stride of 1 byte.
423 # UINT16 ReceiveFifoDepth; ///< UART receive FIFO depth in bytes. Set to 0 for a default FIFO depth of 16 bytes.
424 # UINT16 TransmitFifoDepth; ///< UART transmit FIFO depth in bytes. Set to 0 for a default FIFO depth of 16 bytes.
425 # UINT8 Reserved[2];
426 # } PCI_SERIAL_PARAMETER;
427 #
428 # Vendor 8086 Device 0936 Prog Interface 2, BAR #0, Offset 0, Stride = 4, Clock 44236800 (0x2a300000)
429 # Vendor 8086 Device 0936 Prog Interface 2, BAR #0, Offset 0, Stride = 4, Clock 44236800 (0x2a300000)
430 #
431 # [Vendor] [Device] [---ClockRate---] [------------Offset-----------] [Bar] [Stride] [RxFifo] [TxFifo] [Rsvd] [Vendor]
432 gEfiMdeModulePkgTokenSpaceGuid.PcdPciSerialParameters|{0x86,0x80, 0x36,0x09, 0x0,0x0,0xA3,0x02, 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 0x00, 0x04, 0x0,0x0, 0x0,0x0, 0x0,0x0, 0xff,0xff}
433
434 gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiIoPciBusNumber |0
435 gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiIoPciDeviceNumber |31
436 gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiIoPciFunctionNumber |0
437 gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiIoPciEnableRegisterOffset|0x4b
438 gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiIoBarEnableMask |0x80
439 gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiIoPciBarRegisterOffset |0x48
440 gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiIoPortBaseAddress |0x1000
441 gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiPm1TmrOffset |0x0008
442
443 gEfiMdeModulePkgTokenSpaceGuid.PcdBootManagerMenuFile|{ 0x21, 0xaa, 0x2c, 0x46, 0x14, 0x76, 0x03, 0x45, 0x83, 0x6e, 0x8a, 0xb6, 0xf4, 0x66, 0x23, 0x31 }
444
445 gEfiMdeModulePkgTokenSpaceGuid.PcdConInConnectOnDemand|FALSE
446
447 !if $(RECOVERY_ENABLE)
448 gEfiMdeModulePkgTokenSpaceGuid.PcdRecoveryFileName|L"QUARKREC.Cap"
449 !endif
450
451 #
452 # Quark does not support LFENCE. Use CPUID as speculation barrier
453 #
454 gEfiMdePkgTokenSpaceGuid.PcdSpeculationBarrierType|0x02
455
456 [PcdsPatchableInModule]
457 gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803000C7
458 gEfiMdeModulePkgTokenSpaceGuid.PcdVpdBaseAddress|0x0
459
460 [PcdsDynamicExHii.common.DEFAULT]
461 !if $(PERFORMANCE_ENABLE)
462 gEfiMdePkgTokenSpaceGuid.PcdPlatformBootTimeOut|L"Timeout"|gEfiGlobalVariableGuid|0x0|0
463 !else
464 gEfiMdePkgTokenSpaceGuid.PcdPlatformBootTimeOut|L"Timeout"|gEfiGlobalVariableGuid|0x0|5
465 !endif
466 gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdBootState|L"BootState"|gQuarkPlatformTokenSpaceGuid|0x0|TRUE
467
468 [PcdsDynamicExDefault.common.DEFAULT]
469 gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr|0x0
470 gQuarkPlatformTokenSpaceGuid.PcdEnableFastBoot|TRUE
471 gQuarkPlatformTokenSpaceGuid.PcdUserIsPhysicallyPresent|FALSE
472 gQuarkPlatformTokenSpaceGuid.PcdSpiFlashDeviceSize|0
473
474 !if $(CAPSULE_ENABLE) || $(RECOVERY_ENABLE)
475 gEfiSignedCapsulePkgTokenSpaceGuid.PcdEdkiiSystemFirmwareImageDescriptor|{0x0}|VOID*|0x100
476 gEfiMdeModulePkgTokenSpaceGuid.PcdSystemFmpCapsuleImageTypeIdGuid|{0xc0, 0x20, 0xaf, 0x62, 0x16, 0x70, 0x4a, 0x42, 0x9b, 0xf8, 0x9c, 0xcc, 0x86, 0x58, 0x40, 0x90}
477 gEfiSignedCapsulePkgTokenSpaceGuid.PcdEdkiiSystemFirmwareFileGuid|{0x59, 0x3A, 0xD8, 0x14, 0x10, 0xA8, 0x56, 0x45, 0x81, 0x92, 0x1C, 0x0A, 0x59, 0x3C, 0x06, 0x5C}
478 !endif
479
480 !if $(MEASURED_BOOT_ENABLE)
481 #
482 # TPM1.2 { 0x8b01e5b6, 0x4f19, 0x46e8, { 0xab, 0x93, 0x1c, 0x53, 0x67, 0x1b, 0x90, 0xcc } }
483 # TPM2.0 DTPM { 0x286bf25a, 0xc2c3, 0x408c, { 0xb3, 0xb4, 0x25, 0xe6, 0x75, 0x8b, 0x73, 0x17 } }
484 #
485 gEfiSecurityPkgTokenSpaceGuid.PcdTpmInstanceGuid|{0xb6, 0xe5, 0x01, 0x8b, 0x19, 0x4f, 0xe8, 0x46, 0xab, 0x93, 0x1c, 0x53, 0x67, 0x1b, 0x90, 0xcc}
486 gEfiSecurityPkgTokenSpaceGuid.PcdTpmInitializationPolicy|1
487 gEfiSecurityPkgTokenSpaceGuid.PcdTpmScrtmPolicy|1
488 !endif
489
490 [PcdsDynamicExVpd]
491 gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareVendor|*|32|L"EDK II"
492 gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareRevision|*|0x01000400
493 gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareVersionString|*|64|L"Galileo 1.0.4"
494
495 #
496 # ClantonPeakSVP
497 # gQuarkPlatformTokenSpaceGuid.PcdPlatformType|*|0x0002
498 # gQuarkPlatformTokenSpaceGuid.PcdPlatformTypeName|*|64|L"ClantonPeakSVP"
499 # gEfiQuarkNcSocIdTokenSpaceGuid.PcdMrcParameters|*|40|{0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x01, 0x01, 0x00, 0x03, 0x00, 0x00, 0x02, 0x00, 0x00, 0x01, 0x01, 0x03, 0x7c, 0x92, 0x00, 0x00, 0x10, 0x27, 0x00, 0x00, 0x10, 0x27, 0x00, 0x00, 0x40, 0x9c, 0x00, 0x00, 0x06}
500 #
501 # KipsBay
502 # gQuarkPlatformTokenSpaceGuid.PcdPlatformType|*|0x0003
503 # gQuarkPlatformTokenSpaceGuid.PcdPlatformTypeName|*|64|L"KipsBay"
504 # gEfiQuarkNcSocIdTokenSpaceGuid.PcdMrcParameters|*|40|{0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x03, 0x00, 0x00, 0x02, 0x00, 0x00, 0x01, 0x01, 0x01, 0x7c, 0x92, 0x00, 0x00, 0x10, 0x27, 0x00, 0x00, 0x10, 0x27, 0x00, 0x00, 0x40, 0x9c, 0x00, 0x00, 0x06}
505 #
506 # CrossHill
507 # gQuarkPlatformTokenSpaceGuid.PcdPlatformType|*|0x0004
508 # gQuarkPlatformTokenSpaceGuid.PcdPlatformTypeName|*|64|L"CrossHill"
509 # gEfiQuarkNcSocIdTokenSpaceGuid.PcdMrcParameters|*|40|{0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x03, 0x00, 0x00, 0x02, 0x00, 0x00, 0x01, 0x01, 0x03, 0x7c, 0x92, 0x00, 0x00, 0x10, 0x27, 0x00, 0x00, 0x10, 0x27, 0x00, 0x00, 0x40, 0x9c, 0x00, 0x00, 0x06}
510 #
511 # ClantonHill
512 # gQuarkPlatformTokenSpaceGuid.PcdPlatformType|*|0x0005
513 # gQuarkPlatformTokenSpaceGuid.PcdPlatformTypeName|*|64|L"ClantonHill"
514 # gEfiQuarkNcSocIdTokenSpaceGuid.PcdMrcParameters|*|40|{0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x03, 0x00, 0x00, 0x02, 0x00, 0x00, 0x01, 0x01, 0x02, 0x7c, 0x92, 0x00, 0x00, 0x10, 0x27, 0x00, 0x00, 0x10, 0x27, 0x00, 0x00, 0x40, 0x9c, 0x00, 0x00, 0x06}
515 #
516 # Galileo
517 # gQuarkPlatformTokenSpaceGuid.PcdPlatformType|*|0x0006
518 # gQuarkPlatformTokenSpaceGuid.PcdPlatformTypeName|*|64|L"Galileo"
519 # gEfiQuarkNcSocIdTokenSpaceGuid.PcdMrcParameters|*|40|{0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x03, 0x00, 0x00, 0x02, 0x00, 0x00, 0x01, 0x01, 0x01, 0x7c, 0x92, 0x00, 0x00, 0x10, 0x27, 0x00, 0x00, 0x10, 0x27, 0x00, 0x00, 0x40, 0x9c, 0x00, 0x00, 0x06}
520 #
521 # GalileoGen2
522 # gQuarkPlatformTokenSpaceGuid.PcdPlatformType|*|0x0008
523 # gQuarkPlatformTokenSpaceGuid.PcdPlatformTypeName|*|64|L"GalileoGen2"
524 # gEfiQuarkNcSocIdTokenSpaceGuid.PcdMrcParameters|*|40|{0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x03, 0x00, 0x00, 0x02, 0x00, 0x00, 0x01, 0x01, 0x01, 0x7c, 0x92, 0x00, 0x00, 0x10, 0x27, 0x00, 0x00, 0x10, 0x27, 0x00, 0x00, 0x40, 0x9c, 0x00, 0x00, 0x06}
525 #
526 !if $(GALILEO) == GEN1
527 gQuarkPlatformTokenSpaceGuid.PcdPlatformType|*|0x0006
528 gQuarkPlatformTokenSpaceGuid.PcdPlatformTypeName|*|64|L"Galileo"
529 gEfiQuarkNcSocIdTokenSpaceGuid.PcdMrcParameters|*|40|{0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x03, 0x00, 0x00, 0x02, 0x00, 0x00, 0x01, 0x01, 0x01, 0x7c, 0x92, 0x00, 0x00, 0x10, 0x27, 0x00, 0x00, 0x10, 0x27, 0x00, 0x00, 0x40, 0x9c, 0x00, 0x00, 0x06}
530 !endif
531 !if $(GALILEO) == GEN2
532 gQuarkPlatformTokenSpaceGuid.PcdPlatformType|*|0x0008
533 gQuarkPlatformTokenSpaceGuid.PcdPlatformTypeName|*|64|L"GalileoGen2"
534 gEfiQuarkNcSocIdTokenSpaceGuid.PcdMrcParameters|*|40|{0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x03, 0x00, 0x00, 0x02, 0x00, 0x00, 0x01, 0x01, 0x01, 0x7c, 0x92, 0x00, 0x00, 0x10, 0x27, 0x00, 0x00, 0x10, 0x27, 0x00, 0x00, 0x40, 0x9c, 0x00, 0x00, 0x06}
535 !endif
536 gEfiQuarkSCSocIdTokenSpaceGuid.PcdIohEthernetMac0|*|8|{0xff, 0xff, 0xff, 0xff, 0xff, 0xff}
537 gEfiQuarkSCSocIdTokenSpaceGuid.PcdIohEthernetMac1|*|8|{0xff, 0xff, 0xff, 0xff, 0xff, 0xff}
538
539 ###################################################################################################
540 #
541 # Components Section - list of the modules and components that will be processed by compilation
542 # tools and the EDK II tools to generate PE32/PE32+/Coff image files.
543 #
544 # Note: The EDK II DSC file is not used to specify how compiled binary images get placed
545 # into firmware volume images. This section is just a list of modules to compile from
546 # source into UEFI-compliant binaries.
547 # It is the FDF file that contains information on combining binary files into firmware
548 # volume images, whose concept is beyond UEFI and is described in PI specification.
549 # Binary modules do not need to be listed in this section, as they should be
550 # specified in the FDF file. For example: Shell binary, FAT binary (Fat.efi),
551 # Logo (Logo.bmp), and etc.
552 # There may also be modules listed in this section that are not required in the FDF file,
553 # When a module listed here is excluded from FDF file, then UEFI-compliant binary will be
554 # generated for it, but the binary will not be put into any firmware volume.
555 #
556 ###################################################################################################
557
558 [Components.IA32]
559 #
560 # SEC Core
561 #
562 UefiCpuPkg/SecCore/SecCore.inf {
563 !if $(SOURCE_DEBUG_ENABLE)
564 <LibraryClasses>
565 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
566 DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/SecPeiDebugAgentLib.inf
567 ResetSystemLib|QuarkSocPkg/QuarkNorthCluster/Library/ResetSystemLib/ResetSystemLib.inf
568 !endif
569 }
570
571 !if $(CAPSULE_ENABLE) || $(RECOVERY_ENABLE)
572 # FMP image decriptor
573 QuarkPlatformPkg/Feature/Capsule/SystemFirmwareDescriptor/SystemFirmwareDescriptor.inf
574 !endif
575
576 #
577 # PEI Core
578 #
579 MdeModulePkg/Core/Pei/PeiMain.inf
580
581 #
582 # PEIM
583 #
584 MdeModulePkg/Universal/PCD/Pei/Pcd.inf {
585 <LibraryClasses>
586 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
587 }
588 MdeModulePkg/Universal/ReportStatusCodeRouter/Pei/ReportStatusCodeRouterPei.inf
589 MdeModulePkg/Universal/StatusCodeHandler/Pei/StatusCodeHandlerPei.inf {
590 <LibraryClasses>
591 !if $(LOGGING)
592 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
593 !else
594 SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf
595 !endif
596 }
597
598 MdeModulePkg/Universal/FaultTolerantWritePei/FaultTolerantWritePei.inf
599 MdeModulePkg/Universal/Variable/Pei/VariablePei.inf
600 MdeModulePkg/Universal/PcatSingleSegmentPciCfg2Pei/PcatSingleSegmentPciCfg2Pei.inf
601 UefiCpuPkg/CpuMpPei/CpuMpPei.inf
602 MdeModulePkg/Universal/CapsulePei/CapsulePei.inf
603
604 QuarkSocPkg/QuarkNorthCluster/MemoryInit/Pei/MemoryInitPei.inf
605 QuarkPlatformPkg/Platform/Pei/PlatformInit/PlatformEarlyInit.inf
606 QuarkPlatformPkg/Platform/Pei/PlatformConfig/PlatformConfigPei.inf
607
608 UefiCpuPkg/PiSmmCommunication/PiSmmCommunicationPei.inf
609
610 MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf
611
612 #
613 # S3
614 #
615 QuarkSocPkg/QuarkNorthCluster/Smm/Pei/SmmAccessPei/SmmAccessPei.inf
616 QuarkSocPkg/QuarkNorthCluster/Smm/Pei/SmmControlPei/SmmControlPei.inf
617 UefiCpuPkg/Universal/Acpi/S3Resume2Pei/S3Resume2Pei.inf
618
619 #
620 # Trusted Platform Module
621 #
622 !if $(MEASURED_BOOT_ENABLE)
623 SecurityPkg/Tcg/Tcg2Config/Tcg2ConfigPei.inf
624 SecurityPkg/Tcg/TcgPei/TcgPei.inf
625 !endif
626
627 #
628 # Recovery
629 #
630 !if $(RECOVERY_ENABLE)
631 QuarkSocPkg/QuarkSouthCluster/Usb/Common/Pei/UsbPei.inf
632 MdeModulePkg/Bus/Pci/EhciPei/EhciPei.inf
633 QuarkSocPkg/QuarkSouthCluster/Usb/Ohci/Pei/OhciPei.inf
634 MdeModulePkg/Bus/Usb/UsbBotPei/UsbBotPei.inf
635 MdeModulePkg/Bus/Usb/UsbBusPei/UsbBusPei.inf
636 FatPkg/FatPei/FatPei.inf
637 MdeModulePkg/Universal/Disk/CdExpressPei/CdExpressPei.inf
638 SignedCapsulePkg/Universal/RecoveryModuleLoadPei/RecoveryModuleLoadPei.inf {
639 <LibraryClasses>
640 FmpAuthenticationLib|SecurityPkg/Library/FmpAuthenticationLibRsa2048Sha256/FmpAuthenticationLibRsa2048Sha256.inf
641 }
642 !endif
643
644 [Components.IA32]
645 #
646 # DXE Core
647 #
648 MdeModulePkg/Core/Dxe/DxeMain.inf
649
650 !if $(SOURCE_DEBUG_ENABLE)
651 SourceLevelDebugPkg/DebugAgentDxe/DebugAgentDxe.inf {
652 <LibraryClasses>
653 DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/DxeDebugAgentLib.inf
654 ResetSystemLib|QuarkSocPkg/QuarkNorthCluster/Library/ResetSystemLib/ResetSystemLib.inf
655 }
656 !endif
657
658
659 QuarkPlatformPkg/Platform/Dxe/PlatformInit/PlatformInitDxe.inf
660
661 #
662 # Components that produce the architectural protocols
663 #
664 MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf {
665 <LibraryClasses>
666 !if $(SECURE_BOOT_ENABLE)
667 NULL|SecurityPkg/Library/DxeImageVerificationLib/DxeImageVerificationLib.inf
668 !endif
669 NULL|SecurityPkg/Library/DxeImageAuthenticationStatusLib/DxeImageAuthenticationStatusLib.inf
670 }
671 UefiCpuPkg/CpuDxe/CpuDxe.inf
672 MdeModulePkg/Universal/Metronome/Metronome.inf
673 MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf
674 MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf
675 MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmm.inf
676 !if $(SECURE_BOOT_ENABLE)
677 SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConfigDxe.inf
678 !endif
679 MdeModulePkg/Universal/Variable/RuntimeDxe/VariableSmmRuntimeDxe.inf
680 MdeModulePkg/Universal/Variable/RuntimeDxe/VariableSmm.inf {
681 <LibraryClasses>
682 NULL|MdeModulePkg/Library/VarCheckUefiLib/VarCheckUefiLib.inf
683 NULL|MdeModulePkg/Library/VarCheckHiiLib/VarCheckHiiLib.inf
684 NULL|MdeModulePkg/Library/VarCheckPcdLib/VarCheckPcdLib.inf
685 }
686
687 MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf
688 MdeModulePkg/Universal/MonotonicCounterRuntimeDxe/MonotonicCounterRuntimeDxe.inf
689 MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystemRuntimeDxe.inf
690 PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcatRealTimeClockRuntimeDxe.inf
691
692 #
693 # Following are the DXE drivers (alphabetical order)
694 #
695 MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf
696 MdeModulePkg/Universal/PCD/Dxe/Pcd.inf {
697 <LibraryClasses>
698 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
699 }
700
701 QuarkPlatformPkg/Pci/Dxe/PciHostBridge/PciHostBridge.inf
702 QuarkPlatformPkg/Platform/SpiFvbServices/PlatformSpi.inf
703 QuarkPlatformPkg/Platform/SpiFvbServices/PlatformSmmSpi.inf
704 UefiCpuPkg/CpuIo2Dxe/CpuIo2Dxe.inf
705
706 #
707 # Platform
708 #
709 MdeModulePkg/Universal/BdsDxe/BdsDxe.inf {
710 <LibraryClasses>
711 PlatformBootManagerLib|QuarkPlatformPkg/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf
712 !if $(CAPSULE_ENABLE)
713 FmpAuthenticationLib|SecurityPkg/Library/FmpAuthenticationLibPkcs7/FmpAuthenticationLibPkcs7.inf
714 !else
715 FmpAuthenticationLib|MdeModulePkg/Library/FmpAuthenticationLibNull/FmpAuthenticationLibNull.inf
716 !endif
717 }
718 MdeModulePkg/Application/UiApp/UiApp.inf {
719 <LibraryClasses>
720 NULL|MdeModulePkg/Library/DeviceManagerUiLib/DeviceManagerUiLib.inf
721 NULL|MdeModulePkg/Library/BootManagerUiLib/BootManagerUiLib.inf
722 NULL|MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootMaintenanceManagerUiLib.inf
723
724 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
725 }
726
727 QuarkSocPkg/QuarkNorthCluster/QNCInit/Dxe/QNCInitDxe.inf
728 PcAtChipsetPkg/HpetTimerDxe/HpetTimerDxe.inf
729 QuarkSocPkg/QuarkNorthCluster/Smm/Dxe/SmmAccessDxe/SmmAccess.inf
730 QuarkPlatformPkg/Platform/Dxe/Setup/DxePlatform.inf
731 QuarkSocPkg/QuarkNorthCluster/Spi/PchSpiRuntime.inf {
732 <LibraryClasses>
733 PciExpressLib|MdePkg/Library/DxeRuntimePciExpressLib/DxeRuntimePciExpressLib.inf
734 }
735 QuarkSocPkg/QuarkNorthCluster/Spi/PchSpiSmm.inf
736 QuarkSocPkg/QuarkNorthCluster/S3Support/Dxe/QncS3Support.inf
737 MdeModulePkg/Universal/SectionExtractionDxe/SectionExtractionDxe.inf
738 MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf
739 MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.inf
740 MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf {
741 <LibraryClasses>
742 !if $(LOGGING)
743 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
744 !else
745 SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf
746 !endif
747 }
748 MdeModulePkg/Universal/ReportStatusCodeRouter/Smm/ReportStatusCodeRouterSmm.inf
749 MdeModulePkg/Universal/StatusCodeHandler/Smm/StatusCodeHandlerSmm.inf {
750 <LibraryClasses>
751 !if $(LOGGING)
752 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
753 !else
754 SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf
755 !endif
756 }
757 #
758 # ACPI
759 #
760 QuarkPlatformPkg/Platform/Dxe/SaveMemoryConfig/SaveMemoryConfig.inf
761 MdeModulePkg/Universal/Acpi/S3SaveStateDxe/S3SaveStateDxe.inf
762 # MdeModulePkg/Universal/Acpi/BootScriptExecutorDxe/BootScriptExecutorDxe.inf {
763 QuarkPlatformPkg/Acpi/Dxe/BootScriptExecutorDxe/BootScriptExecutorDxe.inf {
764 <LibraryClasses>
765 !if $(LOGGING)
766 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
767 !else
768 SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf
769 !endif
770 !if $(SOURCE_DEBUG_ENABLE)
771 DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/DxeDebugAgentLib.inf
772 ResetSystemLib|QuarkSocPkg/QuarkNorthCluster/Library/ResetSystemLib/ResetSystemLib.inf
773 !endif
774 }
775 MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf
776 IntelFrameworkModulePkg/Universal/Acpi/AcpiS3SaveDxe/AcpiS3SaveDxe.inf
777 QuarkPlatformPkg/Acpi/AcpiTables/AcpiTables.inf
778 QuarkPlatformPkg/Acpi/Dxe/AcpiPlatform/AcpiPlatform.inf
779
780 #
781 # SMM
782 #
783 MdeModulePkg/Core/PiSmmCore/PiSmmIpl.inf
784 MdeModulePkg/Core/PiSmmCore/PiSmmCore.inf
785 UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf {
786 <LibraryClasses>
787 SmmCpuFeaturesLib|QuarkSocPkg/QuarkNorthCluster/Library/SmmCpuFeaturesLib/SmmCpuFeaturesLib.inf
788 SmmCpuPlatformHookLib|UefiCpuPkg/Library/SmmCpuPlatformHookLibNull/SmmCpuPlatformHookLibNull.inf
789
790 !if $(LOGGING)
791 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
792 !else
793 SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf
794 !endif
795 !if $(SOURCE_DEBUG_ENABLE)
796 DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/SmmDebugAgentLib.inf
797 ResetSystemLib|QuarkSocPkg/QuarkNorthCluster/Library/ResetSystemLib/ResetSystemLib.inf
798 !endif
799 <PcdsPatchableInModule>
800 #
801 # Disable DEBUG_CACHE because SMI entry/exit may change MTRRs
802 #
803 gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x801000C7
804 }
805
806 UefiCpuPkg/CpuIo2Smm/CpuIo2Smm.inf
807 QuarkSocPkg/QuarkNorthCluster/Smm/Dxe/SmmControlDxe/SmmControlDxe.inf
808 QuarkSocPkg/QuarkNorthCluster/Smm/DxeSmm/QncSmmDispatcher/QNCSmmDispatcher.inf
809 QuarkPlatformPkg/Acpi/DxeSmm/AcpiSmm/AcpiSmmPlatform.inf
810 QuarkPlatformPkg/Acpi/DxeSmm/SmmPowerManagement/SmmPowerManagement.inf
811 MdeModulePkg/Universal/LockBox/SmmLockBox/SmmLockBox.inf
812 UefiCpuPkg/PiSmmCommunication/PiSmmCommunicationSmm.inf
813
814 #
815 # SMBIOS
816 #
817 MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf
818 QuarkPlatformPkg/Platform/Dxe/SmbiosMiscDxe/SmbiosMiscDxe.inf
819 QuarkPlatformPkg/Platform/Dxe/MemorySubClass/MemorySubClass.inf
820 #
821 # PCI
822 #
823 QuarkPlatformPkg/Pci/Dxe/PciPlatform/PciPlatform.inf
824 MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf
825 QuarkSocPkg/QuarkSouthCluster/IohInit/Dxe/IohInitDxe.inf
826 MdeModulePkg/Bus/Pci/PciSioSerialDxe/PciSioSerialDxe.inf
827
828 #
829 # USB
830 #
831 MdeModulePkg/Bus/Pci/EhciDxe/EhciDxe.inf
832 QuarkSocPkg/QuarkSouthCluster/Usb/Ohci/Dxe/OhciDxe.inf
833 MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf
834 MdeModulePkg/Bus/Usb/UsbKbDxe/UsbKbDxe.inf
835 MdeModulePkg/Bus/Usb/UsbMouseDxe/UsbMouseDxe.inf
836 MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassStorageDxe.inf
837
838 #
839 # SDIO
840 #
841 QuarkSocPkg/QuarkSouthCluster/Sdio/Dxe/SDControllerDxe/SDControllerDxe.inf {
842 <PcdsPatchableInModule>
843 gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80300087
844 }
845 QuarkSocPkg/QuarkSouthCluster/Sdio/Dxe/SDMediaDeviceDxe/SDMediaDeviceDxe.inf {
846 <PcdsPatchableInModule>
847 gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80300087
848 }
849
850 #
851 # Console
852 #
853 MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf
854 MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf {
855 <LibraryClasses>
856 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
857 }
858 MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf
859 MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf
860 MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf {
861 <LibraryClasses>
862 CustomizedDisplayLib|MdeModulePkg/Library/CustomizedDisplayLib/CustomizedDisplayLib.inf
863 }
864 MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf
865 MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf
866
867 #
868 # File System Modules
869 #
870 MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf
871 MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf
872 FatPkg/EnhancedFatDxe/Fat.inf
873
874 #
875 # Capsule update
876 #
877 IntelFrameworkModulePkg/Universal/FirmwareVolume/FwVolDxe/FwVolDxe.inf
878 IntelFrameworkModulePkg/Universal/FirmwareVolume/UpdateDriverDxe/UpdateDriverDxe.inf
879
880 #
881 # Trusted Platform Module
882 #
883 !if $(MEASURED_BOOT_ENABLE)
884 SecurityPkg/Tcg/MemoryOverwriteControl/TcgMor.inf
885 SecurityPkg/Tcg/TcgDxe/TcgDxe.inf
886 SecurityPkg/Tcg/TcgSmm/TcgSmm.inf
887 !endif
888
889 #
890 # Performance Application
891 #
892 !if $(PERFORMANCE_ENABLE)
893 ShellPkg/DynamicCommand/DpDynamicCommand/DpDynamicCommand.inf {
894 <PcdsFixedAtBuild>
895 gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
896 }
897 !endif
898
899 #
900 # Force Recovery Application
901 #
902 QuarkPlatformPkg/Application/ForceRecovery/ForceRecovery.inf
903
904 ShellPkg/Application/Shell/Shell.inf {
905 <LibraryClasses>
906 ShellCommandLib|ShellPkg/Library/UefiShellCommandLib/UefiShellCommandLib.inf
907 NULL|ShellPkg/Library/UefiShellLevel2CommandsLib/UefiShellLevel2CommandsLib.inf
908 NULL|ShellPkg/Library/UefiShellLevel1CommandsLib/UefiShellLevel1CommandsLib.inf
909 NULL|ShellPkg/Library/UefiShellLevel3CommandsLib/UefiShellLevel3CommandsLib.inf
910 NULL|ShellPkg/Library/UefiShellDriver1CommandsLib/UefiShellDriver1CommandsLib.inf
911 NULL|ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.inf
912 NULL|ShellPkg/Library/UefiShellInstall1CommandsLib/UefiShellInstall1CommandsLib.inf
913 NULL|ShellPkg/Library/UefiShellNetwork1CommandsLib/UefiShellNetwork1CommandsLib.inf
914 HandleParsingLib|ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.inf
915 PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
916 BcfgCommandLib|ShellPkg/Library/UefiShellBcfgCommandLib/UefiShellBcfgCommandLib.inf
917
918 <PcdsFixedAtBuild>
919 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0xFF
920 gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
921 gEfiMdePkgTokenSpaceGuid.PcdUefiLibMaxPrintBufferSize|8000
922 }
923
924 !if $(CAPSULE_ENABLE)
925 MdeModulePkg/Universal/EsrtFmpDxe/EsrtFmpDxe.inf
926
927 SignedCapsulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareReportDxe.inf {
928 <LibraryClasses>
929 FmpAuthenticationLib|SecurityPkg/Library/FmpAuthenticationLibPkcs7/FmpAuthenticationLibPkcs7.inf
930 }
931 SignedCapsulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareUpdateDxe.inf {
932 <LibraryClasses>
933 FmpAuthenticationLib|SecurityPkg/Library/FmpAuthenticationLibPkcs7/FmpAuthenticationLibPkcs7.inf
934 }
935
936 MdeModulePkg/Application/CapsuleApp/CapsuleApp.inf {
937 <LibraryClasses>
938 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
939 }
940 !endif
941
942 [BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER]
943 MSFT:*_*_*_DLINK_FLAGS = /ALIGN:4096
944
945 # Force PE/COFF sections to be aligned at 4KB boundaries to support page level protection of DXE_SMM_DRIVER/SMM_CORE modules
946 [BuildOptions.common.EDKII.DXE_SMM_DRIVER, BuildOptions.common.EDKII.SMM_CORE]
947 MSFT:*_*_*_DLINK_FLAGS = /ALIGN:4096
948 GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000
949