]> git.proxmox.com Git - mirror_edk2.git/blob - QuarkPlatformPkg/Quark.dsc
MdeModulePkg/DxeCore: invoke the emulator protocol for foreign images
[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 - 2018 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 [PcdsPatchableInModule]
452 gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803000C7
453 gEfiMdeModulePkgTokenSpaceGuid.PcdVpdBaseAddress|0x0
454
455 [PcdsDynamicExHii.common.DEFAULT]
456 !if $(PERFORMANCE_ENABLE)
457 gEfiMdePkgTokenSpaceGuid.PcdPlatformBootTimeOut|L"Timeout"|gEfiGlobalVariableGuid|0x0|0
458 !else
459 gEfiMdePkgTokenSpaceGuid.PcdPlatformBootTimeOut|L"Timeout"|gEfiGlobalVariableGuid|0x0|5
460 !endif
461 gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdBootState|L"BootState"|gQuarkPlatformTokenSpaceGuid|0x0|TRUE
462
463 [PcdsDynamicExDefault.common.DEFAULT]
464 gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr|0x0
465 gQuarkPlatformTokenSpaceGuid.PcdEnableFastBoot|TRUE
466 gQuarkPlatformTokenSpaceGuid.PcdUserIsPhysicallyPresent|FALSE
467 gQuarkPlatformTokenSpaceGuid.PcdSpiFlashDeviceSize|0
468
469 !if $(CAPSULE_ENABLE) || $(RECOVERY_ENABLE)
470 gEfiSignedCapsulePkgTokenSpaceGuid.PcdEdkiiSystemFirmwareImageDescriptor|{0x0}|VOID*|0x100
471 gEfiMdeModulePkgTokenSpaceGuid.PcdSystemFmpCapsuleImageTypeIdGuid|{0xc0, 0x20, 0xaf, 0x62, 0x16, 0x70, 0x4a, 0x42, 0x9b, 0xf8, 0x9c, 0xcc, 0x86, 0x58, 0x40, 0x90}
472 gEfiSignedCapsulePkgTokenSpaceGuid.PcdEdkiiSystemFirmwareFileGuid|{0x59, 0x3A, 0xD8, 0x14, 0x10, 0xA8, 0x56, 0x45, 0x81, 0x92, 0x1C, 0x0A, 0x59, 0x3C, 0x06, 0x5C}
473 !endif
474
475 !if $(MEASURED_BOOT_ENABLE)
476 #
477 # TPM1.2 { 0x8b01e5b6, 0x4f19, 0x46e8, { 0xab, 0x93, 0x1c, 0x53, 0x67, 0x1b, 0x90, 0xcc } }
478 # TPM2.0 DTPM { 0x286bf25a, 0xc2c3, 0x408c, { 0xb3, 0xb4, 0x25, 0xe6, 0x75, 0x8b, 0x73, 0x17 } }
479 #
480 gEfiSecurityPkgTokenSpaceGuid.PcdTpmInstanceGuid|{0xb6, 0xe5, 0x01, 0x8b, 0x19, 0x4f, 0xe8, 0x46, 0xab, 0x93, 0x1c, 0x53, 0x67, 0x1b, 0x90, 0xcc}
481 gEfiSecurityPkgTokenSpaceGuid.PcdTpmInitializationPolicy|1
482 gEfiSecurityPkgTokenSpaceGuid.PcdTpmScrtmPolicy|1
483 !endif
484
485 [PcdsDynamicExVpd]
486 gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareVendor|*|32|L"EDK II"
487 gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareRevision|*|0x01000400
488 gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareVersionString|*|64|L"Galileo 1.0.4"
489
490 #
491 # ClantonPeakSVP
492 # gQuarkPlatformTokenSpaceGuid.PcdPlatformType|*|0x0002
493 # gQuarkPlatformTokenSpaceGuid.PcdPlatformTypeName|*|64|L"ClantonPeakSVP"
494 # 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}
495 #
496 # KipsBay
497 # gQuarkPlatformTokenSpaceGuid.PcdPlatformType|*|0x0003
498 # gQuarkPlatformTokenSpaceGuid.PcdPlatformTypeName|*|64|L"KipsBay"
499 # 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}
500 #
501 # CrossHill
502 # gQuarkPlatformTokenSpaceGuid.PcdPlatformType|*|0x0004
503 # gQuarkPlatformTokenSpaceGuid.PcdPlatformTypeName|*|64|L"CrossHill"
504 # 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}
505 #
506 # ClantonHill
507 # gQuarkPlatformTokenSpaceGuid.PcdPlatformType|*|0x0005
508 # gQuarkPlatformTokenSpaceGuid.PcdPlatformTypeName|*|64|L"ClantonHill"
509 # 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}
510 #
511 # Galileo
512 # gQuarkPlatformTokenSpaceGuid.PcdPlatformType|*|0x0006
513 # gQuarkPlatformTokenSpaceGuid.PcdPlatformTypeName|*|64|L"Galileo"
514 # 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}
515 #
516 # GalileoGen2
517 # gQuarkPlatformTokenSpaceGuid.PcdPlatformType|*|0x0008
518 # gQuarkPlatformTokenSpaceGuid.PcdPlatformTypeName|*|64|L"GalileoGen2"
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 !if $(GALILEO) == GEN1
522 gQuarkPlatformTokenSpaceGuid.PcdPlatformType|*|0x0006
523 gQuarkPlatformTokenSpaceGuid.PcdPlatformTypeName|*|64|L"Galileo"
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 !endif
526 !if $(GALILEO) == GEN2
527 gQuarkPlatformTokenSpaceGuid.PcdPlatformType|*|0x0008
528 gQuarkPlatformTokenSpaceGuid.PcdPlatformTypeName|*|64|L"GalileoGen2"
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 gEfiQuarkSCSocIdTokenSpaceGuid.PcdIohEthernetMac0|*|8|{0xff, 0xff, 0xff, 0xff, 0xff, 0xff}
532 gEfiQuarkSCSocIdTokenSpaceGuid.PcdIohEthernetMac1|*|8|{0xff, 0xff, 0xff, 0xff, 0xff, 0xff}
533
534 ###################################################################################################
535 #
536 # Components Section - list of the modules and components that will be processed by compilation
537 # tools and the EDK II tools to generate PE32/PE32+/Coff image files.
538 #
539 # Note: The EDK II DSC file is not used to specify how compiled binary images get placed
540 # into firmware volume images. This section is just a list of modules to compile from
541 # source into UEFI-compliant binaries.
542 # It is the FDF file that contains information on combining binary files into firmware
543 # volume images, whose concept is beyond UEFI and is described in PI specification.
544 # Binary modules do not need to be listed in this section, as they should be
545 # specified in the FDF file. For example: Shell binary, FAT binary (Fat.efi),
546 # Logo (Logo.bmp), and etc.
547 # There may also be modules listed in this section that are not required in the FDF file,
548 # When a module listed here is excluded from FDF file, then UEFI-compliant binary will be
549 # generated for it, but the binary will not be put into any firmware volume.
550 #
551 ###################################################################################################
552
553 [Components.IA32]
554 #
555 # SEC Core
556 #
557 UefiCpuPkg/SecCore/SecCore.inf {
558 !if $(SOURCE_DEBUG_ENABLE)
559 <LibraryClasses>
560 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
561 DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/SecPeiDebugAgentLib.inf
562 ResetSystemLib|QuarkSocPkg/QuarkNorthCluster/Library/ResetSystemLib/ResetSystemLib.inf
563 !endif
564 }
565
566 !if $(CAPSULE_ENABLE) || $(RECOVERY_ENABLE)
567 # FMP image decriptor
568 QuarkPlatformPkg/Feature/Capsule/SystemFirmwareDescriptor/SystemFirmwareDescriptor.inf
569 !endif
570
571 #
572 # PEI Core
573 #
574 MdeModulePkg/Core/Pei/PeiMain.inf
575
576 #
577 # PEIM
578 #
579 MdeModulePkg/Universal/PCD/Pei/Pcd.inf {
580 <LibraryClasses>
581 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
582 }
583 MdeModulePkg/Universal/ReportStatusCodeRouter/Pei/ReportStatusCodeRouterPei.inf
584 MdeModulePkg/Universal/StatusCodeHandler/Pei/StatusCodeHandlerPei.inf {
585 <LibraryClasses>
586 !if $(LOGGING)
587 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
588 !else
589 SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf
590 !endif
591 }
592
593 MdeModulePkg/Universal/FaultTolerantWritePei/FaultTolerantWritePei.inf
594 MdeModulePkg/Universal/Variable/Pei/VariablePei.inf
595 MdeModulePkg/Universal/PcatSingleSegmentPciCfg2Pei/PcatSingleSegmentPciCfg2Pei.inf
596 UefiCpuPkg/CpuMpPei/CpuMpPei.inf
597 MdeModulePkg/Universal/CapsulePei/CapsulePei.inf
598
599 QuarkSocPkg/QuarkNorthCluster/MemoryInit/Pei/MemoryInitPei.inf
600 QuarkPlatformPkg/Platform/Pei/PlatformInit/PlatformEarlyInit.inf
601 QuarkPlatformPkg/Platform/Pei/PlatformConfig/PlatformConfigPei.inf
602
603 UefiCpuPkg/PiSmmCommunication/PiSmmCommunicationPei.inf
604
605 MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf
606
607 #
608 # S3
609 #
610 QuarkSocPkg/QuarkNorthCluster/Smm/Pei/SmmAccessPei/SmmAccessPei.inf
611 QuarkSocPkg/QuarkNorthCluster/Smm/Pei/SmmControlPei/SmmControlPei.inf
612 UefiCpuPkg/Universal/Acpi/S3Resume2Pei/S3Resume2Pei.inf
613
614 #
615 # Trusted Platform Module
616 #
617 !if $(MEASURED_BOOT_ENABLE)
618 SecurityPkg/Tcg/Tcg2Config/Tcg2ConfigPei.inf
619 SecurityPkg/Tcg/TcgPei/TcgPei.inf
620 !endif
621
622 #
623 # Recovery
624 #
625 !if $(RECOVERY_ENABLE)
626 QuarkSocPkg/QuarkSouthCluster/Usb/Common/Pei/UsbPei.inf
627 MdeModulePkg/Bus/Pci/EhciPei/EhciPei.inf
628 QuarkSocPkg/QuarkSouthCluster/Usb/Ohci/Pei/OhciPei.inf
629 MdeModulePkg/Bus/Usb/UsbBotPei/UsbBotPei.inf
630 MdeModulePkg/Bus/Usb/UsbBusPei/UsbBusPei.inf
631 FatPkg/FatPei/FatPei.inf
632 MdeModulePkg/Universal/Disk/CdExpressPei/CdExpressPei.inf
633 SignedCapsulePkg/Universal/RecoveryModuleLoadPei/RecoveryModuleLoadPei.inf {
634 <LibraryClasses>
635 FmpAuthenticationLib|SecurityPkg/Library/FmpAuthenticationLibRsa2048Sha256/FmpAuthenticationLibRsa2048Sha256.inf
636 }
637 !endif
638
639 [Components.IA32]
640 #
641 # DXE Core
642 #
643 MdeModulePkg/Core/Dxe/DxeMain.inf
644
645 !if $(SOURCE_DEBUG_ENABLE)
646 SourceLevelDebugPkg/DebugAgentDxe/DebugAgentDxe.inf {
647 <LibraryClasses>
648 DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/DxeDebugAgentLib.inf
649 ResetSystemLib|QuarkSocPkg/QuarkNorthCluster/Library/ResetSystemLib/ResetSystemLib.inf
650 }
651 !endif
652
653
654 QuarkPlatformPkg/Platform/Dxe/PlatformInit/PlatformInitDxe.inf
655
656 #
657 # Components that produce the architectural protocols
658 #
659 MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf {
660 <LibraryClasses>
661 !if $(SECURE_BOOT_ENABLE)
662 NULL|SecurityPkg/Library/DxeImageVerificationLib/DxeImageVerificationLib.inf
663 !endif
664 NULL|SecurityPkg/Library/DxeImageAuthenticationStatusLib/DxeImageAuthenticationStatusLib.inf
665 }
666 UefiCpuPkg/CpuDxe/CpuDxe.inf
667 MdeModulePkg/Universal/Metronome/Metronome.inf
668 MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf
669 MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf
670 MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmm.inf
671 !if $(SECURE_BOOT_ENABLE)
672 SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConfigDxe.inf
673 !endif
674 MdeModulePkg/Universal/Variable/RuntimeDxe/VariableSmmRuntimeDxe.inf
675 MdeModulePkg/Universal/Variable/RuntimeDxe/VariableSmm.inf {
676 <LibraryClasses>
677 NULL|MdeModulePkg/Library/VarCheckUefiLib/VarCheckUefiLib.inf
678 NULL|MdeModulePkg/Library/VarCheckHiiLib/VarCheckHiiLib.inf
679 NULL|MdeModulePkg/Library/VarCheckPcdLib/VarCheckPcdLib.inf
680 }
681
682 MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf
683 MdeModulePkg/Universal/MonotonicCounterRuntimeDxe/MonotonicCounterRuntimeDxe.inf
684 MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystemRuntimeDxe.inf
685 PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcatRealTimeClockRuntimeDxe.inf
686
687 #
688 # Following are the DXE drivers (alphabetical order)
689 #
690 MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf
691 MdeModulePkg/Universal/PCD/Dxe/Pcd.inf {
692 <LibraryClasses>
693 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
694 }
695
696 QuarkPlatformPkg/Pci/Dxe/PciHostBridge/PciHostBridge.inf
697 QuarkPlatformPkg/Platform/SpiFvbServices/PlatformSpi.inf
698 QuarkPlatformPkg/Platform/SpiFvbServices/PlatformSmmSpi.inf
699 UefiCpuPkg/CpuIo2Dxe/CpuIo2Dxe.inf
700
701 #
702 # Platform
703 #
704 MdeModulePkg/Universal/BdsDxe/BdsDxe.inf {
705 <LibraryClasses>
706 PlatformBootManagerLib|QuarkPlatformPkg/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf
707 !if $(CAPSULE_ENABLE)
708 FmpAuthenticationLib|SecurityPkg/Library/FmpAuthenticationLibPkcs7/FmpAuthenticationLibPkcs7.inf
709 !else
710 FmpAuthenticationLib|MdeModulePkg/Library/FmpAuthenticationLibNull/FmpAuthenticationLibNull.inf
711 !endif
712 }
713 MdeModulePkg/Application/UiApp/UiApp.inf {
714 <LibraryClasses>
715 NULL|MdeModulePkg/Library/DeviceManagerUiLib/DeviceManagerUiLib.inf
716 NULL|MdeModulePkg/Library/BootManagerUiLib/BootManagerUiLib.inf
717 NULL|MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootMaintenanceManagerUiLib.inf
718
719 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
720 }
721
722 QuarkSocPkg/QuarkNorthCluster/QNCInit/Dxe/QNCInitDxe.inf
723 PcAtChipsetPkg/HpetTimerDxe/HpetTimerDxe.inf
724 QuarkSocPkg/QuarkNorthCluster/Smm/Dxe/SmmAccessDxe/SmmAccess.inf
725 QuarkPlatformPkg/Platform/Dxe/Setup/DxePlatform.inf
726 QuarkSocPkg/QuarkNorthCluster/Spi/PchSpiRuntime.inf {
727 <LibraryClasses>
728 PciExpressLib|MdePkg/Library/DxeRuntimePciExpressLib/DxeRuntimePciExpressLib.inf
729 }
730 QuarkSocPkg/QuarkNorthCluster/Spi/PchSpiSmm.inf
731 QuarkSocPkg/QuarkNorthCluster/S3Support/Dxe/QncS3Support.inf
732 MdeModulePkg/Universal/SectionExtractionDxe/SectionExtractionDxe.inf
733 MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf
734 MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.inf
735 MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf {
736 <LibraryClasses>
737 !if $(LOGGING)
738 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
739 !else
740 SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf
741 !endif
742 }
743 MdeModulePkg/Universal/ReportStatusCodeRouter/Smm/ReportStatusCodeRouterSmm.inf
744 MdeModulePkg/Universal/StatusCodeHandler/Smm/StatusCodeHandlerSmm.inf {
745 <LibraryClasses>
746 !if $(LOGGING)
747 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
748 !else
749 SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf
750 !endif
751 }
752 #
753 # ACPI
754 #
755 QuarkPlatformPkg/Platform/Dxe/SaveMemoryConfig/SaveMemoryConfig.inf
756 MdeModulePkg/Universal/Acpi/S3SaveStateDxe/S3SaveStateDxe.inf
757 # MdeModulePkg/Universal/Acpi/BootScriptExecutorDxe/BootScriptExecutorDxe.inf {
758 QuarkPlatformPkg/Acpi/Dxe/BootScriptExecutorDxe/BootScriptExecutorDxe.inf {
759 <LibraryClasses>
760 !if $(LOGGING)
761 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
762 !else
763 SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf
764 !endif
765 !if $(SOURCE_DEBUG_ENABLE)
766 DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/DxeDebugAgentLib.inf
767 ResetSystemLib|QuarkSocPkg/QuarkNorthCluster/Library/ResetSystemLib/ResetSystemLib.inf
768 !endif
769 }
770 MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf
771 IntelFrameworkModulePkg/Universal/Acpi/AcpiS3SaveDxe/AcpiS3SaveDxe.inf
772 QuarkPlatformPkg/Acpi/AcpiTables/AcpiTables.inf
773 QuarkPlatformPkg/Acpi/Dxe/AcpiPlatform/AcpiPlatform.inf
774
775 #
776 # SMM
777 #
778 MdeModulePkg/Core/PiSmmCore/PiSmmIpl.inf
779 MdeModulePkg/Core/PiSmmCore/PiSmmCore.inf
780 UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf {
781 <LibraryClasses>
782 SmmCpuFeaturesLib|QuarkSocPkg/QuarkNorthCluster/Library/SmmCpuFeaturesLib/SmmCpuFeaturesLib.inf
783 SmmCpuPlatformHookLib|UefiCpuPkg/Library/SmmCpuPlatformHookLibNull/SmmCpuPlatformHookLibNull.inf
784
785 !if $(LOGGING)
786 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
787 !else
788 SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf
789 !endif
790 !if $(SOURCE_DEBUG_ENABLE)
791 DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/SmmDebugAgentLib.inf
792 ResetSystemLib|QuarkSocPkg/QuarkNorthCluster/Library/ResetSystemLib/ResetSystemLib.inf
793 !endif
794 <PcdsPatchableInModule>
795 #
796 # Disable DEBUG_CACHE because SMI entry/exit may change MTRRs
797 #
798 gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x801000C7
799 }
800
801 UefiCpuPkg/CpuIo2Smm/CpuIo2Smm.inf
802 QuarkSocPkg/QuarkNorthCluster/Smm/Dxe/SmmControlDxe/SmmControlDxe.inf
803 QuarkSocPkg/QuarkNorthCluster/Smm/DxeSmm/QncSmmDispatcher/QNCSmmDispatcher.inf
804 QuarkPlatformPkg/Acpi/DxeSmm/AcpiSmm/AcpiSmmPlatform.inf
805 QuarkPlatformPkg/Acpi/DxeSmm/SmmPowerManagement/SmmPowerManagement.inf
806 MdeModulePkg/Universal/LockBox/SmmLockBox/SmmLockBox.inf
807 UefiCpuPkg/PiSmmCommunication/PiSmmCommunicationSmm.inf
808
809 #
810 # SMBIOS
811 #
812 MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf
813 QuarkPlatformPkg/Platform/Dxe/SmbiosMiscDxe/SmbiosMiscDxe.inf
814 QuarkPlatformPkg/Platform/Dxe/MemorySubClass/MemorySubClass.inf
815 #
816 # PCI
817 #
818 QuarkPlatformPkg/Pci/Dxe/PciPlatform/PciPlatform.inf
819 MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf
820 QuarkSocPkg/QuarkSouthCluster/IohInit/Dxe/IohInitDxe.inf
821 MdeModulePkg/Bus/Pci/PciSioSerialDxe/PciSioSerialDxe.inf
822
823 #
824 # USB
825 #
826 MdeModulePkg/Bus/Pci/EhciDxe/EhciDxe.inf
827 QuarkSocPkg/QuarkSouthCluster/Usb/Ohci/Dxe/OhciDxe.inf
828 MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf
829 MdeModulePkg/Bus/Usb/UsbKbDxe/UsbKbDxe.inf
830 MdeModulePkg/Bus/Usb/UsbMouseDxe/UsbMouseDxe.inf
831 MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassStorageDxe.inf
832
833 #
834 # SDIO
835 #
836 QuarkSocPkg/QuarkSouthCluster/Sdio/Dxe/SDControllerDxe/SDControllerDxe.inf {
837 <PcdsPatchableInModule>
838 gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80300087
839 }
840 QuarkSocPkg/QuarkSouthCluster/Sdio/Dxe/SDMediaDeviceDxe/SDMediaDeviceDxe.inf {
841 <PcdsPatchableInModule>
842 gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80300087
843 }
844
845 #
846 # Console
847 #
848 MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf
849 MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf {
850 <LibraryClasses>
851 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
852 }
853 MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf
854 MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf
855 MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf {
856 <LibraryClasses>
857 CustomizedDisplayLib|MdeModulePkg/Library/CustomizedDisplayLib/CustomizedDisplayLib.inf
858 }
859 MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf
860 MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf
861
862 #
863 # File System Modules
864 #
865 MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf
866 MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf
867 FatPkg/EnhancedFatDxe/Fat.inf
868
869 #
870 # Capsule update
871 #
872 IntelFrameworkModulePkg/Universal/FirmwareVolume/FwVolDxe/FwVolDxe.inf
873 IntelFrameworkModulePkg/Universal/FirmwareVolume/UpdateDriverDxe/UpdateDriverDxe.inf
874
875 #
876 # Trusted Platform Module
877 #
878 !if $(MEASURED_BOOT_ENABLE)
879 SecurityPkg/Tcg/MemoryOverwriteControl/TcgMor.inf
880 SecurityPkg/Tcg/TcgDxe/TcgDxe.inf
881 SecurityPkg/Tcg/TcgSmm/TcgSmm.inf
882 !endif
883
884 #
885 # Performance Application
886 #
887 !if $(PERFORMANCE_ENABLE)
888 ShellPkg/DynamicCommand/DpDynamicCommand/DpDynamicCommand.inf {
889 <PcdsFixedAtBuild>
890 gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
891 }
892 !endif
893
894 #
895 # Force Recovery Application
896 #
897 QuarkPlatformPkg/Application/ForceRecovery/ForceRecovery.inf
898
899 ShellPkg/Application/Shell/Shell.inf {
900 <LibraryClasses>
901 ShellCommandLib|ShellPkg/Library/UefiShellCommandLib/UefiShellCommandLib.inf
902 NULL|ShellPkg/Library/UefiShellLevel2CommandsLib/UefiShellLevel2CommandsLib.inf
903 NULL|ShellPkg/Library/UefiShellLevel1CommandsLib/UefiShellLevel1CommandsLib.inf
904 NULL|ShellPkg/Library/UefiShellLevel3CommandsLib/UefiShellLevel3CommandsLib.inf
905 NULL|ShellPkg/Library/UefiShellDriver1CommandsLib/UefiShellDriver1CommandsLib.inf
906 NULL|ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.inf
907 NULL|ShellPkg/Library/UefiShellInstall1CommandsLib/UefiShellInstall1CommandsLib.inf
908 NULL|ShellPkg/Library/UefiShellNetwork1CommandsLib/UefiShellNetwork1CommandsLib.inf
909 HandleParsingLib|ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.inf
910 PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
911 BcfgCommandLib|ShellPkg/Library/UefiShellBcfgCommandLib/UefiShellBcfgCommandLib.inf
912
913 <PcdsFixedAtBuild>
914 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0xFF
915 gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
916 gEfiMdePkgTokenSpaceGuid.PcdUefiLibMaxPrintBufferSize|8000
917 }
918
919 !if $(CAPSULE_ENABLE)
920 MdeModulePkg/Universal/EsrtFmpDxe/EsrtFmpDxe.inf
921
922 SignedCapsulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareReportDxe.inf {
923 <LibraryClasses>
924 FmpAuthenticationLib|SecurityPkg/Library/FmpAuthenticationLibPkcs7/FmpAuthenticationLibPkcs7.inf
925 }
926 SignedCapsulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareUpdateDxe.inf {
927 <LibraryClasses>
928 FmpAuthenticationLib|SecurityPkg/Library/FmpAuthenticationLibPkcs7/FmpAuthenticationLibPkcs7.inf
929 }
930
931 MdeModulePkg/Application/CapsuleApp/CapsuleApp.inf {
932 <LibraryClasses>
933 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
934 }
935 !endif
936
937 [BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER]
938 MSFT:*_*_*_DLINK_FLAGS = /ALIGN:4096
939
940 # Force PE/COFF sections to be aligned at 4KB boundaries to support page level protection of DXE_SMM_DRIVER/SMM_CORE modules
941 [BuildOptions.common.EDKII.DXE_SMM_DRIVER, BuildOptions.common.EDKII.SMM_CORE]
942 MSFT:*_*_*_DLINK_FLAGS = /ALIGN:4096
943 GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000
944