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