025653eee5088d29bff213bd9333cd3a7aa34c42
[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 - 2017 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 OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf
167 IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf
168 BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf
169
170 !if $(SECURE_BOOT_ENABLE)
171 PlatformSecureLib|QuarkPlatformPkg/Library/PlatformSecureLib/PlatformSecureLib.inf
172 AuthVariableLib|SecurityPkg/Library/AuthVariableLib/AuthVariableLib.inf
173 !else
174 AuthVariableLib|MdeModulePkg/Library/AuthVariableLibNull/AuthVariableLibNull.inf
175 !endif
176
177 !if $(MEASURED_BOOT_ENABLE)
178 TpmMeasurementLib|SecurityPkg/Library/DxeTpmMeasurementLib/DxeTpmMeasurementLib.inf
179 Tpm12CommandLib|SecurityPkg/Library/Tpm12CommandLib/Tpm12CommandLib.inf
180 !if $(TPM_12_HARDWARE) == LPC
181 Tpm12DeviceLib|SecurityPkg/Library/Tpm12DeviceLibDTpm/Tpm12DeviceLibDTpm.inf
182 !endif
183 !if $(TPM_12_HARDWARE) == ATMEL_I2C
184 Tpm12DeviceLib|QuarkPlatformPkg/Library/Tpm12DeviceLibAtmelI2c/Tpm12DeviceLibAtmelI2c.inf
185 !endif
186 !if $(TPM_12_HARDWARE) == INFINEON_I2C
187 Tpm12DeviceLib|QuarkPlatformPkg/Library/Tpm12DeviceLibInfineonI2c/Tpm12DeviceLibInfineonI2c.inf
188 !endif
189 TcgPpVendorLib|SecurityPkg/Library/TcgPpVendorLibNull/TcgPpVendorLibNull.inf
190 !else
191 TpmMeasurementLib|MdeModulePkg/Library/TpmMeasurementLibNull/TpmMeasurementLibNull.inf
192 !endif
193
194 FileExplorerLib|MdeModulePkg/Library/FileExplorerLib/FileExplorerLib.inf
195
196 #
197 # CPU
198 #
199 MtrrLib|QuarkSocPkg/QuarkNorthCluster/Library/MtrrLib/MtrrLib.inf
200 LocalApicLib|UefiCpuPkg/Library/BaseXApicLib/BaseXApicLib.inf
201 MpInitLib|UefiCpuPkg/Library/MpInitLib/DxeMpInitLib.inf
202
203 #
204 # Quark North Cluster
205 #
206 SmmLib|QuarkSocPkg/QuarkNorthCluster/Library/QNCSmmLib/QNCSmmLib.inf
207 SmbusLib|QuarkSocPkg/QuarkNorthCluster/Library/SmbusLib/SmbusLib.inf
208 TimerLib|PcAtChipsetPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf
209 ResetSystemLib|QuarkSocPkg/QuarkNorthCluster/Library/ResetSystemLib/ResetSystemLib.inf
210 IntelQNCLib|QuarkSocPkg/QuarkNorthCluster/Library/IntelQNCLib/IntelQNCLib.inf
211 QNCAccessLib|QuarkSocPkg/QuarkNorthCluster/Library/QNCAccessLib/QNCAccessLib.inf
212 IoApicLib|PcAtChipsetPkg/Library/BaseIoApicLib/BaseIoApicLib.inf
213
214 #
215 # Quark South Cluster
216 #
217 IohLib|QuarkSocPkg/QuarkSouthCluster/Library/IohLib/IohLib.inf
218 I2cLib|QuarkSocPkg/QuarkSouthCluster/Library/I2cLib/I2cLib.inf
219 SerialPortLib|MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf
220 PlatformHookLib|MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf
221
222 #
223 # Quark Platform
224 #
225 PlatformSecLib|QuarkPlatformPkg/Library/PlatformSecLib/PlatformSecLib.inf
226 PlatformPcieHelperLib|QuarkPlatformPkg/Library/PlatformPcieHelperLib/PlatformPcieHelperLib.inf
227 PlatformHelperLib|QuarkPlatformPkg/Library/PlatformHelperLib/DxePlatformHelperLib.inf
228
229 !if $(CAPSULE_ENABLE)
230 CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibFmp/DxeCapsuleLib.inf
231 !else
232 CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibNull/DxeCapsuleLibNull.inf
233 !endif
234
235 EdkiiSystemCapsuleLib|SignedCapsulePkg/Library/EdkiiSystemCapsuleLib/EdkiiSystemCapsuleLib.inf
236 FmpAuthenticationLib|MdeModulePkg/Library/FmpAuthenticationLibNull/FmpAuthenticationLibNull.inf
237 IniParsingLib|SignedCapsulePkg/Library/IniParsingLib/IniParsingLib.inf
238 PlatformFlashAccessLib|QuarkPlatformPkg/Feature/Capsule/Library/PlatformFlashAccessLib/PlatformFlashAccessLibDxe.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 SmmServicesTableLib|MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf
280 ReportStatusCodeLib|MdeModulePkg/Library/SmmReportStatusCodeLib/SmmReportStatusCodeLib.inf
281 MemoryAllocationLib|MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf
282 LockBoxLib|MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf
283 PciLib|MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf
284 CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/SmmCpuExceptionHandlerLib.inf
285 SmmMemLib|MdePkg/Library/SmmMemLib/SmmMemLib.inf
286 BaseCryptLib|CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf
287 !if $(PERFORMANCE_ENABLE)
288 PerformanceLib|MdeModulePkg/Library/SmmPerformanceLib/SmmPerformanceLib.inf
289 !endif
290
291 [LibraryClasses.IA32.SMM_CORE]
292 SmmServicesTableLib|MdeModulePkg/Library/PiSmmCoreSmmServicesTableLib/PiSmmCoreSmmServicesTableLib.inf
293 ReportStatusCodeLib|MdeModulePkg/Library/SmmReportStatusCodeLib/SmmReportStatusCodeLib.inf
294 MemoryAllocationLib|MdeModulePkg/Library/PiSmmCoreMemoryAllocationLib/PiSmmCoreMemoryAllocationLib.inf
295 PciLib|MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf
296 SmmMemLib|MdePkg/Library/SmmMemLib/SmmMemLib.inf
297 !if $(SECURE_BOOT_ENABLE) || $(MEASURED_BOOT_ENABLE)
298 BaseCryptLib|CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf
299 !endif
300 !if $(PERFORMANCE_ENABLE)
301 PerformanceLib|MdeModulePkg/Library/SmmCorePerformanceLib/SmmCorePerformanceLib.inf
302 !endif
303
304 [LibraryClasses.IA32.DXE_RUNTIME_DRIVER]
305 ReportStatusCodeLib|MdeModulePkg/Library/RuntimeDxeReportStatusCodeLib/RuntimeDxeReportStatusCodeLib.inf
306 QNCAccessLib|QuarkSocPkg/QuarkNorthCluster/Library/QNCAccessLib/RuntimeQNCAccessLib.inf
307 PciLib|MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf
308 !if $(SECURE_BOOT_ENABLE) || $(MEASURED_BOOT_ENABLE)
309 BaseCryptLib|CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf
310 !endif
311
312 !if $(CAPSULE_ENABLE)
313 CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibFmp/DxeRuntimeCapsuleLib.inf
314 !endif
315
316 [LibraryClasses.IA32.UEFI_DRIVER,LibraryClasses.IA32.UEFI_APPLICATION]
317 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
318
319 ################################################################################
320 #
321 # Pcd Section - list of all EDK II PCD Entries defined by this Platform
322 #
323 ################################################################################
324 [PcdsFeatureFlag]
325 gEfiMdeModulePkgTokenSpaceGuid.PcdDevicePathSupportDevicePathToText|TRUE
326 gEfiMdeModulePkgTokenSpaceGuid.PcdDevicePathSupportDevicePathFromText|TRUE
327 gEfiMdeModulePkgTokenSpaceGuid.PcdSupportUpdateCapsuleReset|TRUE
328 gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSwitchToLongMode|FALSE
329 gEfiMdeModulePkgTokenSpaceGuid.PcdPciBusHotplugDeviceSupport|FALSE
330 gEfiMdeModulePkgTokenSpaceGuid.PcdInstallAcpiSdtProtocol|TRUE
331 !if $(SOURCE_DEBUG_ENABLE)
332 gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmDebug|TRUE
333 !endif
334
335 !if $(TARGET) == "RELEASE"
336 gQuarkPlatformTokenSpaceGuid.WaitIfResetDueToError|FALSE
337 !else
338 gQuarkPlatformTokenSpaceGuid.WaitIfResetDueToError|TRUE
339 !endif
340
341 [PcdsFixedAtBuild]
342 gUefiCpuPkgTokenSpaceGuid.PcdCpuMaxLogicalProcessorNumber|1
343 gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdS3AcpiReservedMemorySize|0x20000
344 gEfiMdeModulePkgTokenSpaceGuid.PcdResetOnMemoryTypeInformationChange|TRUE
345 !if $(LOGGING)
346 !if $(SOURCE_DEBUG_ENABLE)
347 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x17
348 !else
349 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x27
350 !endif
351 gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x07
352 !else
353 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x0
354 gEfiMdePkgTokenSpaceGuid.PcdPostCodePropertyMask|0x0
355 gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x3
356 !endif
357 gEfiMdePkgTokenSpaceGuid.PcdPostCodePropertyMask|0x18
358 gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0xE0000000
359 !if $(GALILEO) == GEN1
360 gEfiMdePkgTokenSpaceGuid.PcdUartDefaultBaudRate|460800
361 !endif
362 !if $(GALILEO) == GEN2
363 gEfiMdePkgTokenSpaceGuid.PcdUartDefaultBaudRate|921600
364 !endif
365 gEfiMdePkgTokenSpaceGuid.PcdUartDefaultDataBits|8
366 gEfiMdePkgTokenSpaceGuid.PcdUartDefaultParity|1
367 gEfiMdePkgTokenSpaceGuid.PcdUartDefaultStopBits|1
368 gEfiMdePkgTokenSpaceGuid.PcdDefaultTerminalType|0
369 !if $(PERFORMANCE_ENABLE)
370 gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask|0x1
371 gEfiMdeModulePkgTokenSpaceGuid.PcdMaxPeiPerformanceLogEntries|80
372 !else
373 gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask|0x00
374 !endif
375 gEfiMdeModulePkgTokenSpaceGuid.PcdLoadModuleAtFixAddressEnable|0
376 !if $(SECURE_BOOT_ENABLE)
377 gEfiMdeModulePkgTokenSpaceGuid.PcdMaxVariableSize|0x2000
378 !endif
379 gEfiMdeModulePkgTokenSpaceGuid.PcdHwErrStorageSize|0x00002000
380 gEfiMdeModulePkgTokenSpaceGuid.PcdMaxHardwareErrorVariableSize|0x1000
381 ## RTC Update Timeout Value, need to increase timeout since also
382 # waiting for RTC to be busy.
383 gEfiMdeModulePkgTokenSpaceGuid.PcdRealTimeClockUpdateTimeout|500000
384
385 !if $(SECURE_BOOT_ENABLE)
386 # override the default values from SecurityPkg to ensure images from all sources are verified in secure boot
387 gEfiSecurityPkgTokenSpaceGuid.PcdOptionRomImageVerificationPolicy|0x04
388 gEfiSecurityPkgTokenSpaceGuid.PcdFixedMediaImageVerificationPolicy|0x04
389 gEfiSecurityPkgTokenSpaceGuid.PcdRemovableMediaImageVerificationPolicy|0x04
390 !endif
391 gQuarkPlatformTokenSpaceGuid.PcdEsramStage1Base|0x80000000
392
393 !if $(SOURCE_DEBUG_ENABLE)
394 gEfiSourceLevelDebugPkgTokenSpaceGuid.PcdDebugLoadImageMethod|0x2
395 !endif
396
397 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialUseMmio|TRUE
398 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase|0x9000B000
399 !if $(GALILEO) == GEN1
400 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialBaudRate|460800
401 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialUseHardwareFlowControl|FALSE
402 !endif
403 !if $(GALILEO) == GEN2
404 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialBaudRate|921600
405 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialUseHardwareFlowControl|FALSE
406 !endif
407 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialLineControl|0x03
408 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialFifoControl|0x07
409 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialDetectCable|FALSE
410 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialClockRate|44236800
411 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialPciDeviceInfo|{0x14, 0x05, 0x84, 0x00, 0xFF}
412 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterStride|4
413
414 #
415 # typedef struct {
416 # UINT16 VendorId; ///< Vendor ID to match the PCI device. The value 0xFFFF terminates the list of entries.
417 # UINT16 DeviceId; ///< Device ID to match the PCI device
418 # UINT32 ClockRate; ///< UART clock rate. Set to 0 for default clock rate of 1843200 Hz
419 # UINT64 Offset; ///< The byte offset into to the BAR
420 # UINT8 BarIndex; ///< Which BAR to get the UART base address
421 # UINT8 RegisterStride; ///< UART register stride in bytes. Set to 0 for default register stride of 1 byte.
422 # UINT16 ReceiveFifoDepth; ///< UART receive FIFO depth in bytes. Set to 0 for a default FIFO depth of 16 bytes.
423 # UINT16 TransmitFifoDepth; ///< UART transmit FIFO depth in bytes. Set to 0 for a default FIFO depth of 16 bytes.
424 # UINT8 Reserved[2];
425 # } PCI_SERIAL_PARAMETER;
426 #
427 # Vendor 8086 Device 0936 Prog Interface 2, BAR #0, Offset 0, Stride = 4, Clock 44236800 (0x2a300000)
428 # Vendor 8086 Device 0936 Prog Interface 2, BAR #0, Offset 0, Stride = 4, Clock 44236800 (0x2a300000)
429 #
430 # [Vendor] [Device] [---ClockRate---] [------------Offset-----------] [Bar] [Stride] [RxFifo] [TxFifo] [Rsvd] [Vendor]
431 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}
432
433 gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiIoPciBusNumber |0
434 gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiIoPciDeviceNumber |31
435 gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiIoPciFunctionNumber |0
436 gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiIoPciEnableRegisterOffset|0x4b
437 gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiIoBarEnableMask |0x80
438 gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiIoPciBarRegisterOffset |0x48
439 gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiIoPortBaseAddress |0x1000
440 gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiPm1TmrOffset |0x0008
441
442 gEfiMdeModulePkgTokenSpaceGuid.PcdBootManagerMenuFile|{ 0x21, 0xaa, 0x2c, 0x46, 0x14, 0x76, 0x03, 0x45, 0x83, 0x6e, 0x8a, 0xb6, 0xf4, 0x66, 0x23, 0x31 }
443
444 gEfiMdeModulePkgTokenSpaceGuid.PcdConInConnectOnDemand|FALSE
445
446 !if $(RECOVERY_ENABLE)
447 gEfiMdeModulePkgTokenSpaceGuid.PcdRecoveryFileName|L"QUARKREC.Cap"
448 !endif
449
450 [PcdsPatchableInModule]
451 gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803000C7
452 gEfiMdeModulePkgTokenSpaceGuid.PcdVpdBaseAddress|0x0
453
454 [PcdsDynamicExHii.common.DEFAULT]
455 !if $(PERFORMANCE_ENABLE)
456 gEfiMdePkgTokenSpaceGuid.PcdPlatformBootTimeOut|L"Timeout"|gEfiGlobalVariableGuid|0x0|0
457 !else
458 gEfiMdePkgTokenSpaceGuid.PcdPlatformBootTimeOut|L"Timeout"|gEfiGlobalVariableGuid|0x0|5
459 !endif
460 gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdBootState|L"BootState"|gQuarkPlatformTokenSpaceGuid|0x0|TRUE
461
462 [PcdsDynamicExDefault.common.DEFAULT]
463 gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr|0x0
464 gQuarkPlatformTokenSpaceGuid.PcdEnableFastBoot|TRUE
465 gQuarkPlatformTokenSpaceGuid.PcdUserIsPhysicallyPresent|FALSE
466 gQuarkPlatformTokenSpaceGuid.PcdSpiFlashDeviceSize|0
467
468 !if $(CAPSULE_ENABLE) || $(RECOVERY_ENABLE)
469 gEfiSignedCapsulePkgTokenSpaceGuid.PcdEdkiiSystemFirmwareImageDescriptor|{0x0}|VOID*|0x100
470 gEfiMdeModulePkgTokenSpaceGuid.PcdSystemFmpCapsuleImageTypeIdGuid|{0xc0, 0x20, 0xaf, 0x62, 0x16, 0x70, 0x4a, 0x42, 0x9b, 0xf8, 0x9c, 0xcc, 0x86, 0x58, 0x40, 0x90}
471 gEfiSignedCapsulePkgTokenSpaceGuid.PcdEdkiiSystemFirmwareFileGuid|{0x59, 0x3A, 0xD8, 0x14, 0x10, 0xA8, 0x56, 0x45, 0x81, 0x92, 0x1C, 0x0A, 0x59, 0x3C, 0x06, 0x5C}
472 !endif
473
474 !if $(MEASURED_BOOT_ENABLE)
475 #
476 # TPM1.2 { 0x8b01e5b6, 0x4f19, 0x46e8, { 0xab, 0x93, 0x1c, 0x53, 0x67, 0x1b, 0x90, 0xcc } }
477 # TPM2.0 DTPM { 0x286bf25a, 0xc2c3, 0x408c, { 0xb3, 0xb4, 0x25, 0xe6, 0x75, 0x8b, 0x73, 0x17 } }
478 #
479 gEfiSecurityPkgTokenSpaceGuid.PcdTpmInstanceGuid|{0xb6, 0xe5, 0x01, 0x8b, 0x19, 0x4f, 0xe8, 0x46, 0xab, 0x93, 0x1c, 0x53, 0x67, 0x1b, 0x90, 0xcc}
480 gEfiSecurityPkgTokenSpaceGuid.PcdTpmInitializationPolicy|1
481 gEfiSecurityPkgTokenSpaceGuid.PcdTpmScrtmPolicy|1
482 !endif
483
484 [PcdsDynamicExVpd]
485 gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareVendor|*|32|L"EDK II"
486 gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareRevision|*|0x01000400
487 gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareVersionString|*|64|L"Galileo 1.0.4"
488
489 #
490 # ClantonPeakSVP
491 # gQuarkPlatformTokenSpaceGuid.PcdPlatformType|*|0x0002
492 # gQuarkPlatformTokenSpaceGuid.PcdPlatformTypeName|*|64|L"ClantonPeakSVP"
493 # 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}
494 #
495 # KipsBay
496 # gQuarkPlatformTokenSpaceGuid.PcdPlatformType|*|0x0003
497 # gQuarkPlatformTokenSpaceGuid.PcdPlatformTypeName|*|64|L"KipsBay"
498 # 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}
499 #
500 # CrossHill
501 # gQuarkPlatformTokenSpaceGuid.PcdPlatformType|*|0x0004
502 # gQuarkPlatformTokenSpaceGuid.PcdPlatformTypeName|*|64|L"CrossHill"
503 # 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}
504 #
505 # ClantonHill
506 # gQuarkPlatformTokenSpaceGuid.PcdPlatformType|*|0x0005
507 # gQuarkPlatformTokenSpaceGuid.PcdPlatformTypeName|*|64|L"ClantonHill"
508 # 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}
509 #
510 # Galileo
511 # gQuarkPlatformTokenSpaceGuid.PcdPlatformType|*|0x0006
512 # gQuarkPlatformTokenSpaceGuid.PcdPlatformTypeName|*|64|L"Galileo"
513 # 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}
514 #
515 # GalileoGen2
516 # gQuarkPlatformTokenSpaceGuid.PcdPlatformType|*|0x0008
517 # gQuarkPlatformTokenSpaceGuid.PcdPlatformTypeName|*|64|L"GalileoGen2"
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 !if $(GALILEO) == GEN1
521 gQuarkPlatformTokenSpaceGuid.PcdPlatformType|*|0x0006
522 gQuarkPlatformTokenSpaceGuid.PcdPlatformTypeName|*|64|L"Galileo"
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 !endif
525 !if $(GALILEO) == GEN2
526 gQuarkPlatformTokenSpaceGuid.PcdPlatformType|*|0x0008
527 gQuarkPlatformTokenSpaceGuid.PcdPlatformTypeName|*|64|L"GalileoGen2"
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 gEfiQuarkSCSocIdTokenSpaceGuid.PcdIohEthernetMac0|*|8|{0xff, 0xff, 0xff, 0xff, 0xff, 0xff}
531 gEfiQuarkSCSocIdTokenSpaceGuid.PcdIohEthernetMac1|*|8|{0xff, 0xff, 0xff, 0xff, 0xff, 0xff}
532
533 ###################################################################################################
534 #
535 # Components Section - list of the modules and components that will be processed by compilation
536 # tools and the EDK II tools to generate PE32/PE32+/Coff image files.
537 #
538 # Note: The EDK II DSC file is not used to specify how compiled binary images get placed
539 # into firmware volume images. This section is just a list of modules to compile from
540 # source into UEFI-compliant binaries.
541 # It is the FDF file that contains information on combining binary files into firmware
542 # volume images, whose concept is beyond UEFI and is described in PI specification.
543 # Binary modules do not need to be listed in this section, as they should be
544 # specified in the FDF file. For example: Shell binary, FAT binary (Fat.efi),
545 # Logo (Logo.bmp), and etc.
546 # There may also be modules listed in this section that are not required in the FDF file,
547 # When a module listed here is excluded from FDF file, then UEFI-compliant binary will be
548 # generated for it, but the binary will not be put into any firmware volume.
549 #
550 ###################################################################################################
551
552 [Components.IA32]
553 #
554 # SEC Core
555 #
556 UefiCpuPkg/SecCore/SecCore.inf {
557 !if $(SOURCE_DEBUG_ENABLE)
558 <LibraryClasses>
559 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
560 DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/SecPeiDebugAgentLib.inf
561 ResetSystemLib|QuarkSocPkg/QuarkNorthCluster/Library/ResetSystemLib/ResetSystemLib.inf
562 !endif
563 }
564
565 !if $(CAPSULE_ENABLE) || $(RECOVERY_ENABLE)
566 # FMP image decriptor
567 QuarkPlatformPkg/Feature/Capsule/SystemFirmwareDescriptor/SystemFirmwareDescriptor.inf
568 !endif
569
570 #
571 # PEI Core
572 #
573 MdeModulePkg/Core/Pei/PeiMain.inf
574
575 #
576 # PEIM
577 #
578 MdeModulePkg/Universal/PCD/Pei/Pcd.inf {
579 <LibraryClasses>
580 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
581 }
582 MdeModulePkg/Universal/ReportStatusCodeRouter/Pei/ReportStatusCodeRouterPei.inf
583 MdeModulePkg/Universal/StatusCodeHandler/Pei/StatusCodeHandlerPei.inf {
584 <LibraryClasses>
585 !if $(LOGGING)
586 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
587 !else
588 SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf
589 !endif
590 }
591
592 MdeModulePkg/Universal/FaultTolerantWritePei/FaultTolerantWritePei.inf
593 MdeModulePkg/Universal/Variable/Pei/VariablePei.inf
594 MdeModulePkg/Universal/PcatSingleSegmentPciCfg2Pei/PcatSingleSegmentPciCfg2Pei.inf
595 UefiCpuPkg/CpuMpPei/CpuMpPei.inf
596 MdeModulePkg/Universal/CapsulePei/CapsulePei.inf
597
598 QuarkSocPkg/QuarkNorthCluster/MemoryInit/Pei/MemoryInitPei.inf
599 QuarkPlatformPkg/Platform/Pei/PlatformInit/PlatformEarlyInit.inf
600 QuarkPlatformPkg/Platform/Pei/PlatformConfig/PlatformConfigPei.inf
601
602 UefiCpuPkg/PiSmmCommunication/PiSmmCommunicationPei.inf
603
604 MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf
605
606 #
607 # S3
608 #
609 QuarkSocPkg/QuarkNorthCluster/Smm/Pei/SmmAccessPei/SmmAccessPei.inf
610 QuarkSocPkg/QuarkNorthCluster/Smm/Pei/SmmControlPei/SmmControlPei.inf
611 UefiCpuPkg/Universal/Acpi/S3Resume2Pei/S3Resume2Pei.inf
612
613 #
614 # Trusted Platform Module
615 #
616 !if $(MEASURED_BOOT_ENABLE)
617 SecurityPkg/Tcg/TrEEConfig/TrEEConfigPei.inf
618 SecurityPkg/Tcg/TcgPei/TcgPei.inf
619 !endif
620
621 #
622 # Recovery
623 #
624 !if $(RECOVERY_ENABLE)
625 QuarkSocPkg/QuarkSouthCluster/Usb/Common/Pei/UsbPei.inf
626 MdeModulePkg/Bus/Pci/EhciPei/EhciPei.inf
627 QuarkSocPkg/QuarkSouthCluster/Usb/Ohci/Pei/OhciPei.inf
628 MdeModulePkg/Bus/Usb/UsbBotPei/UsbBotPei.inf
629 MdeModulePkg/Bus/Usb/UsbBusPei/UsbBusPei.inf
630 FatPkg/FatPei/FatPei.inf
631 MdeModulePkg/Universal/Disk/CdExpressPei/CdExpressPei.inf
632 SignedCapsulePkg/Universal/RecoveryModuleLoadPei/RecoveryModuleLoadPei.inf {
633 <LibraryClasses>
634 FmpAuthenticationLib|SecurityPkg/Library/FmpAuthenticationLibRsa2048Sha256/FmpAuthenticationLibRsa2048Sha256.inf
635 }
636 !endif
637
638 [Components.IA32]
639 #
640 # DXE Core
641 #
642 MdeModulePkg/Core/Dxe/DxeMain.inf
643
644 !if $(SOURCE_DEBUG_ENABLE)
645 SourceLevelDebugPkg/DebugAgentDxe/DebugAgentDxe.inf {
646 <LibraryClasses>
647 DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/DxeDebugAgentLib.inf
648 ResetSystemLib|QuarkSocPkg/QuarkNorthCluster/Library/ResetSystemLib/ResetSystemLib.inf
649 }
650 !endif
651
652
653 QuarkPlatformPkg/Platform/Dxe/PlatformInit/PlatformInitDxe.inf
654
655 #
656 # Components that produce the architectural protocols
657 #
658 MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf {
659 <LibraryClasses>
660 !if $(SECURE_BOOT_ENABLE)
661 NULL|SecurityPkg/Library/DxeImageVerificationLib/DxeImageVerificationLib.inf
662 !endif
663 NULL|SecurityPkg/Library/DxeImageAuthenticationStatusLib/DxeImageAuthenticationStatusLib.inf
664 }
665 UefiCpuPkg/CpuDxe/CpuDxe.inf
666 MdeModulePkg/Universal/Metronome/Metronome.inf
667 MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf
668 MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf
669 MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmm.inf
670 !if $(SECURE_BOOT_ENABLE)
671 SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConfigDxe.inf
672 !endif
673 MdeModulePkg/Universal/Variable/RuntimeDxe/VariableSmmRuntimeDxe.inf
674 MdeModulePkg/Universal/Variable/RuntimeDxe/VariableSmm.inf {
675 <LibraryClasses>
676 NULL|MdeModulePkg/Library/VarCheckUefiLib/VarCheckUefiLib.inf
677 NULL|MdeModulePkg/Library/VarCheckHiiLib/VarCheckHiiLib.inf
678 NULL|MdeModulePkg/Library/VarCheckPcdLib/VarCheckPcdLib.inf
679 }
680
681 MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf
682 MdeModulePkg/Universal/MonotonicCounterRuntimeDxe/MonotonicCounterRuntimeDxe.inf
683 MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystemRuntimeDxe.inf
684 PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcatRealTimeClockRuntimeDxe.inf
685
686 #
687 # Following are the DXE drivers (alphabetical order)
688 #
689 MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf
690 MdeModulePkg/Universal/PCD/Dxe/Pcd.inf {
691 <LibraryClasses>
692 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
693 }
694
695 QuarkPlatformPkg/Pci/Dxe/PciHostBridge/PciHostBridge.inf
696 QuarkPlatformPkg/Platform/SpiFvbServices/PlatformSpi.inf
697 QuarkPlatformPkg/Platform/SpiFvbServices/PlatformSmmSpi.inf
698 UefiCpuPkg/CpuIo2Dxe/CpuIo2Dxe.inf
699
700 #
701 # Platform
702 #
703 MdeModulePkg/Universal/BdsDxe/BdsDxe.inf {
704 <LibraryClasses>
705 PlatformBootManagerLib|QuarkPlatformPkg/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf
706 !if $(CAPSULE_ENABLE)
707 FmpAuthenticationLib|SecurityPkg/Library/FmpAuthenticationLibPkcs7/FmpAuthenticationLibPkcs7.inf
708 !else
709 FmpAuthenticationLib|MdeModulePkg/Library/FmpAuthenticationLibNull/FmpAuthenticationLibNull.inf
710 !endif
711 }
712 MdeModulePkg/Application/UiApp/UiApp.inf {
713 <LibraryClasses>
714 NULL|MdeModulePkg/Library/DeviceManagerUiLib/DeviceManagerUiLib.inf
715 NULL|MdeModulePkg/Library/BootManagerUiLib/BootManagerUiLib.inf
716 NULL|MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootMaintenanceManagerUiLib.inf
717
718 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
719 }
720
721 QuarkSocPkg/QuarkNorthCluster/QNCInit/Dxe/QNCInitDxe.inf
722 PcAtChipsetPkg/HpetTimerDxe/HpetTimerDxe.inf
723 QuarkSocPkg/QuarkNorthCluster/Smm/Dxe/SmmAccessDxe/SmmAccess.inf
724 QuarkPlatformPkg/Platform/Dxe/Setup/DxePlatform.inf
725 QuarkSocPkg/QuarkNorthCluster/Spi/PchSpiRuntime.inf {
726 <LibraryClasses>
727 PciExpressLib|MdePkg/Library/DxeRuntimePciExpressLib/DxeRuntimePciExpressLib.inf
728 }
729 QuarkSocPkg/QuarkNorthCluster/Spi/PchSpiSmm.inf
730 QuarkSocPkg/QuarkNorthCluster/S3Support/Dxe/QncS3Support.inf
731 MdeModulePkg/Universal/SectionExtractionDxe/SectionExtractionDxe.inf
732 MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf
733 MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.inf
734 MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf {
735 <LibraryClasses>
736 !if $(LOGGING)
737 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
738 !else
739 SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf
740 !endif
741 }
742 MdeModulePkg/Universal/ReportStatusCodeRouter/Smm/ReportStatusCodeRouterSmm.inf
743 MdeModulePkg/Universal/StatusCodeHandler/Smm/StatusCodeHandlerSmm.inf {
744 <LibraryClasses>
745 !if $(LOGGING)
746 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
747 !else
748 SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf
749 !endif
750 }
751 #
752 # ACPI
753 #
754 QuarkPlatformPkg/Platform/Dxe/SaveMemoryConfig/SaveMemoryConfig.inf
755 MdeModulePkg/Universal/Acpi/S3SaveStateDxe/S3SaveStateDxe.inf
756 # MdeModulePkg/Universal/Acpi/BootScriptExecutorDxe/BootScriptExecutorDxe.inf {
757 QuarkPlatformPkg/Acpi/Dxe/BootScriptExecutorDxe/BootScriptExecutorDxe.inf {
758 <LibraryClasses>
759 !if $(LOGGING)
760 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
761 !else
762 SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf
763 !endif
764 !if $(SOURCE_DEBUG_ENABLE)
765 DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/DxeDebugAgentLib.inf
766 ResetSystemLib|QuarkSocPkg/QuarkNorthCluster/Library/ResetSystemLib/ResetSystemLib.inf
767 !endif
768 }
769 MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf
770 IntelFrameworkModulePkg/Universal/Acpi/AcpiS3SaveDxe/AcpiS3SaveDxe.inf
771 QuarkPlatformPkg/Acpi/AcpiTables/AcpiTables.inf
772 QuarkPlatformPkg/Acpi/Dxe/AcpiPlatform/AcpiPlatform.inf
773
774 #
775 # SMM
776 #
777 MdeModulePkg/Core/PiSmmCore/PiSmmIpl.inf
778 MdeModulePkg/Core/PiSmmCore/PiSmmCore.inf
779 UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf {
780 <LibraryClasses>
781 SmmCpuFeaturesLib|QuarkSocPkg/QuarkNorthCluster/Library/SmmCpuFeaturesLib/SmmCpuFeaturesLib.inf
782 SmmCpuPlatformHookLib|UefiCpuPkg/Library/SmmCpuPlatformHookLibNull/SmmCpuPlatformHookLibNull.inf
783
784 !if $(LOGGING)
785 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
786 !else
787 SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf
788 !endif
789 !if $(SOURCE_DEBUG_ENABLE)
790 DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/SmmDebugAgentLib.inf
791 ResetSystemLib|QuarkSocPkg/QuarkNorthCluster/Library/ResetSystemLib/ResetSystemLib.inf
792 !endif
793 <PcdsPatchableInModule>
794 #
795 # Disable DEBUG_CACHE because SMI entry/exit may change MTRRs
796 #
797 gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x801000C7
798 }
799
800 UefiCpuPkg/CpuIo2Smm/CpuIo2Smm.inf
801 QuarkSocPkg/QuarkNorthCluster/Smm/Dxe/SmmControlDxe/SmmControlDxe.inf
802 QuarkSocPkg/QuarkNorthCluster/Smm/DxeSmm/QncSmmDispatcher/QNCSmmDispatcher.inf
803 QuarkPlatformPkg/Acpi/DxeSmm/AcpiSmm/AcpiSmmPlatform.inf
804 QuarkPlatformPkg/Acpi/DxeSmm/SmmPowerManagement/SmmPowerManagement.inf
805 MdeModulePkg/Universal/LockBox/SmmLockBox/SmmLockBox.inf
806 UefiCpuPkg/PiSmmCommunication/PiSmmCommunicationSmm.inf
807
808 #
809 # SMBIOS
810 #
811 MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf
812 QuarkPlatformPkg/Platform/Dxe/SmbiosMiscDxe/SmbiosMiscDxe.inf
813 QuarkPlatformPkg/Platform/Dxe/MemorySubClass/MemorySubClass.inf
814 #
815 # PCI
816 #
817 QuarkPlatformPkg/Pci/Dxe/PciPlatform/PciPlatform.inf
818 MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf
819 QuarkSocPkg/QuarkSouthCluster/IohInit/Dxe/IohInitDxe.inf
820 MdeModulePkg/Bus/Pci/PciSioSerialDxe/PciSioSerialDxe.inf
821
822 #
823 # USB
824 #
825 MdeModulePkg/Bus/Pci/EhciDxe/EhciDxe.inf
826 QuarkSocPkg/QuarkSouthCluster/Usb/Ohci/Dxe/OhciDxe.inf
827 MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf
828 MdeModulePkg/Bus/Usb/UsbKbDxe/UsbKbDxe.inf
829 MdeModulePkg/Bus/Usb/UsbMouseDxe/UsbMouseDxe.inf
830 MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassStorageDxe.inf
831
832 #
833 # SDIO
834 #
835 QuarkSocPkg/QuarkSouthCluster/Sdio/Dxe/SDControllerDxe/SDControllerDxe.inf {
836 <PcdsPatchableInModule>
837 gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80300087
838 }
839 QuarkSocPkg/QuarkSouthCluster/Sdio/Dxe/SDMediaDeviceDxe/SDMediaDeviceDxe.inf {
840 <PcdsPatchableInModule>
841 gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80300087
842 }
843
844 #
845 # Console
846 #
847 MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf
848 MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf {
849 <LibraryClasses>
850 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
851 }
852 MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf
853 MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf
854 MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf {
855 <LibraryClasses>
856 CustomizedDisplayLib|MdeModulePkg/Library/CustomizedDisplayLib/CustomizedDisplayLib.inf
857 }
858 MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf
859 MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf
860
861 #
862 # File System Modules
863 #
864 MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf
865 MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf
866 FatPkg/EnhancedFatDxe/Fat.inf
867 !if $(PERFORMANCE_ENABLE)
868 MdeModulePkg/Universal/FvSimpleFileSystemDxe/FvSimpleFileSystemDxe.inf
869 !endif
870
871 #
872 # Capsule update
873 #
874 IntelFrameworkModulePkg/Universal/FirmwareVolume/FwVolDxe/FwVolDxe.inf
875 IntelFrameworkModulePkg/Universal/FirmwareVolume/UpdateDriverDxe/UpdateDriverDxe.inf
876
877 #
878 # Trusted Platform Module
879 #
880 !if $(MEASURED_BOOT_ENABLE)
881 SecurityPkg/Tcg/MemoryOverwriteControl/TcgMor.inf
882 SecurityPkg/Tcg/TcgDxe/TcgDxe.inf
883 SecurityPkg/Tcg/TcgSmm/TcgSmm.inf
884 !endif
885
886 #
887 # Performance Application
888 #
889 !if $(PERFORMANCE_ENABLE)
890 PerformancePkg/Dp_App/Dp.inf {
891 <LibraryClasses>
892 ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf
893 FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf
894 }
895 !endif
896
897 #
898 # Force Recovery Application
899 #
900 QuarkPlatformPkg/Application/ForceRecovery/ForceRecovery.inf
901
902 ShellPkg/Application/Shell/Shell.inf {
903 <LibraryClasses>
904 ShellCommandLib|ShellPkg/Library/UefiShellCommandLib/UefiShellCommandLib.inf
905 NULL|ShellPkg/Library/UefiShellLevel2CommandsLib/UefiShellLevel2CommandsLib.inf
906 NULL|ShellPkg/Library/UefiShellLevel1CommandsLib/UefiShellLevel1CommandsLib.inf
907 NULL|ShellPkg/Library/UefiShellLevel3CommandsLib/UefiShellLevel3CommandsLib.inf
908 NULL|ShellPkg/Library/UefiShellDriver1CommandsLib/UefiShellDriver1CommandsLib.inf
909 NULL|ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.inf
910 NULL|ShellPkg/Library/UefiShellInstall1CommandsLib/UefiShellInstall1CommandsLib.inf
911 NULL|ShellPkg/Library/UefiShellNetwork1CommandsLib/UefiShellNetwork1CommandsLib.inf
912 HandleParsingLib|ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.inf
913 ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf
914 FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.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/EsrtDxe/EsrtDxe.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