blob: d36fd6e41ca04fad7f742f49ea7787b8c4e09ed2 [file] [log] [blame]
Michael Kinneyb3036052015-12-15 19:23:57 +00001## @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.
Michael Kinney8ab970f2016-01-21 18:41:59 +00005# Copyright (c) 2013 - 2016 Intel Corporation.
Michael Kinneyb3036052015-12-15 19:23:57 +00006#
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 #
Michael Kinney6ceeb1e2016-01-21 19:30:43 +000037 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
Jiewen Yao8affbb62016-09-21 11:39:24 +080042 DEFINE CAPSULE_ENABLE = FALSE
43 DEFINE RECOVERY_ENABLE = FALSE
Michael Kinney6ceeb1e2016-01-21 19:30:43 +000044
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
Michael Kinneyb3036052015-12-15 19:23:57 +000054
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
Star Zeng627dea22016-08-19 15:05:48 +080098 PciSegmentLib|MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf
Michael Kinneyb3036052015-12-15 19:23:57 +000099 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
130 #
131 # Generic Modules
132 #
133 S3BootScriptLib|MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf
134 S3IoLib|MdePkg/Library/BaseS3IoLib/BaseS3IoLib.inf
135 S3PciLib|MdePkg/Library/BaseS3PciLib/BaseS3PciLib.inf
136 UefiUsbLib|MdePkg/Library/UefiUsbLib/UefiUsbLib.inf
137 UefiScsiLib|MdePkg/Library/UefiScsiLib/UefiScsiLib.inf
138 NetLib|MdeModulePkg/Library/DxeNetLib/DxeNetLib.inf
139 IpIoLib|MdeModulePkg/Library/DxeIpIoLib/DxeIpIoLib.inf
140 UdpIoLib|MdeModulePkg/Library/DxeUdpIoLib/DxeUdpIoLib.inf
141 DpcLib|MdeModulePkg/Library/DxeDpcLib/DxeDpcLib.inf
142 OemHookStatusCodeLib|MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf
143 SynchronizationLib|MdePkg/Library/BaseSynchronizationLib/BaseSynchronizationLib.inf
144 SecurityManagementLib|MdeModulePkg/Library/DxeSecurityManagementLib/DxeSecurityManagementLib.inf
145 SmmCorePlatformHookLib|MdeModulePkg/Library/SmmCorePlatformHookLibNull/SmmCorePlatformHookLibNull.inf
146 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
147 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
148 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
149 ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf
150 ExtractGuidedSectionLib|MdePkg/Library/DxeExtractGuidedSectionLib/DxeExtractGuidedSectionLib.inf
151 LockBoxLib|MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf
152 VarCheckLib|MdeModulePkg/Library/VarCheckLib/VarCheckLib.inf
153 DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf
154!if $(LOGGING)
155 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
156!else
157 DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
158!endif
159!if $(PERFORMANCE_ENABLE)
160 PerformanceLib|MdeModulePkg/Library/DxePerformanceLib/DxePerformanceLib.inf
161!else
162 PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf
163!endif
Michael Kinney6ceeb1e2016-01-21 19:30:43 +0000164
Michael Kinneyb3036052015-12-15 19:23:57 +0000165 OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf
Michael Kinney6ceeb1e2016-01-21 19:30:43 +0000166 IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf
167 BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf
Michael Kinney6ceeb1e2016-01-21 19:30:43 +0000168
169!if $(SECURE_BOOT_ENABLE)
170 PlatformSecureLib|QuarkPlatformPkg/Library/PlatformSecureLib/PlatformSecureLib.inf
Michael Kinneyb3036052015-12-15 19:23:57 +0000171 AuthVariableLib|SecurityPkg/Library/AuthVariableLib/AuthVariableLib.inf
172!else
Michael Kinneyb3036052015-12-15 19:23:57 +0000173 AuthVariableLib|MdeModulePkg/Library/AuthVariableLibNull/AuthVariableLibNull.inf
174!endif
Michael Kinney6ceeb1e2016-01-21 19:30:43 +0000175
176!if $(MEASURED_BOOT_ENABLE)
177 TpmMeasurementLib|SecurityPkg/Library/DxeTpmMeasurementLib/DxeTpmMeasurementLib.inf
178 Tpm12CommandLib|SecurityPkg/Library/Tpm12CommandLib/Tpm12CommandLib.inf
179!if $(TPM_12_HARDWARE) == LPC
180 Tpm12DeviceLib|SecurityPkg/Library/Tpm12DeviceLibDTpm/Tpm12DeviceLibDTpm.inf
181!endif
182!if $(TPM_12_HARDWARE) == ATMEL_I2C
183 Tpm12DeviceLib|QuarkPlatformPkg/Library/Tpm12DeviceLibAtmelI2c/Tpm12DeviceLibAtmelI2c.inf
184!endif
185!if $(TPM_12_HARDWARE) == INFINEON_I2C
186 Tpm12DeviceLib|QuarkPlatformPkg/Library/Tpm12DeviceLibInfineonI2c/Tpm12DeviceLibInfineonI2c.inf
187!endif
Michael Kinney62c91312016-01-29 23:38:58 +0000188 TcgPpVendorLib|SecurityPkg/Library/TcgPpVendorLibNull/TcgPpVendorLibNull.inf
Michael Kinney6ceeb1e2016-01-21 19:30:43 +0000189!else
190 TpmMeasurementLib|MdeModulePkg/Library/TpmMeasurementLibNull/TpmMeasurementLibNull.inf
191!endif
192
Michael Kinneyb3036052015-12-15 19:23:57 +0000193 FileExplorerLib|MdeModulePkg/Library/FileExplorerLib/FileExplorerLib.inf
194
195 #
196 # CPU
197 #
198 MtrrLib|QuarkSocPkg/QuarkNorthCluster/Library/MtrrLib/MtrrLib.inf
199 LocalApicLib|UefiCpuPkg/Library/BaseXApicLib/BaseXApicLib.inf
Jeff Fanee783412016-07-21 22:57:12 +0800200 MpInitLib|UefiCpuPkg/Library/MpInitLib/DxeMpInitLib.inf
Michael Kinneyb3036052015-12-15 19:23:57 +0000201
202 #
203 # Quark North Cluster
204 #
205 SmmLib|QuarkSocPkg/QuarkNorthCluster/Library/QNCSmmLib/QNCSmmLib.inf
206 SmbusLib|QuarkSocPkg/QuarkNorthCluster/Library/SmbusLib/SmbusLib.inf
207 TimerLib|PcAtChipsetPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf
208 ResetSystemLib|QuarkSocPkg/QuarkNorthCluster/Library/ResetSystemLib/ResetSystemLib.inf
209 IntelQNCLib|QuarkSocPkg/QuarkNorthCluster/Library/IntelQNCLib/IntelQNCLib.inf
210 QNCAccessLib|QuarkSocPkg/QuarkNorthCluster/Library/QNCAccessLib/QNCAccessLib.inf
211 IoApicLib|PcAtChipsetPkg/Library/BaseIoApicLib/BaseIoApicLib.inf
212
213 #
214 # Quark South Cluster
215 #
216 IohLib|QuarkSocPkg/QuarkSouthCluster/Library/IohLib/IohLib.inf
217 I2cLib|QuarkSocPkg/QuarkSouthCluster/Library/I2cLib/I2cLib.inf
218 SerialPortLib|MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf
219 PlatformHookLib|MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf
220
221 #
222 # Quark Platform
223 #
Michael Kinneyb3036052015-12-15 19:23:57 +0000224 PlatformSecLib|QuarkPlatformPkg/Library/PlatformSecLib/PlatformSecLib.inf
225 PlatformPcieHelperLib|QuarkPlatformPkg/Library/PlatformPcieHelperLib/PlatformPcieHelperLib.inf
226 PlatformHelperLib|QuarkPlatformPkg/Library/PlatformHelperLib/DxePlatformHelperLib.inf
227
Jiewen Yao8affbb62016-09-21 11:39:24 +0800228!if $(CAPSULE_ENABLE)
229 CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibFmp/DxeCapsuleLib.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
Michael Kinneyb3036052015-12-15 19:23:57 +0000239[LibraryClasses.common.SEC]
240 #
241 # SEC specific phase
242 #
243 ReportStatusCodeLib|MdePkg/Library/BaseReportStatusCodeLibNull/BaseReportStatusCodeLibNull.inf
244 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
245 TimerLib|PcAtChipsetPkg/Library/AcpiTimerLib/BaseAcpiTimerLib.inf
246 HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
247 MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
248 CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/SecPeiCpuExceptionHandlerLib.inf
249
250[LibraryClasses.IA32.PEIM,LibraryClasses.IA32.PEI_CORE]
251 #
252 # PEI phase common
253 #
254 PcdLib|MdePkg/Library/PeiPcdLib/PeiPcdLib.inf
255 HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
256 MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
257 ReportStatusCodeLib|MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf
258 ExtractGuidedSectionLib|MdePkg/Library/PeiExtractGuidedSectionLib/PeiExtractGuidedSectionLib.inf
259 LockBoxLib|MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxPeiLib.inf
260 TimerLib|PcAtChipsetPkg/Library/AcpiTimerLib/BaseAcpiTimerLib.inf
261 PlatformHelperLib|QuarkPlatformPkg/Library/PlatformHelperLib/PeiPlatformHelperLib.inf
262 CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/SecPeiCpuExceptionHandlerLib.inf
Jeff Fanee783412016-07-21 22:57:12 +0800263 MpInitLib|UefiCpuPkg/Library/MpInitLib/PeiMpInitLib.inf
Michael Kinneyb3036052015-12-15 19:23:57 +0000264 BaseCryptLib|CryptoPkg/Library/BaseCryptLib/PeiCryptLib.inf
Michael Kinneyb3036052015-12-15 19:23:57 +0000265!if $(PERFORMANCE_ENABLE)
266 PerformanceLib|MdeModulePkg/Library/PeiPerformanceLib/PeiPerformanceLib.inf
267!endif
268
269[LibraryClasses.IA32.DXE_CORE]
270 HobLib|MdePkg/Library/DxeCoreHobLib/DxeCoreHobLib.inf
271 MemoryAllocationLib|MdeModulePkg/Library/DxeCoreMemoryAllocationLib/DxeCoreMemoryAllocationLib.inf
272 CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/DxeCpuExceptionHandlerLib.inf
273!if $(PERFORMANCE_ENABLE)
274 PerformanceLib|MdeModulePkg/Library/DxeCorePerformanceLib/DxeCorePerformanceLib.inf
275!endif
276
277[LibraryClasses.IA32.DXE_SMM_DRIVER]
278 SmmServicesTableLib|MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf
279 ReportStatusCodeLib|MdeModulePkg/Library/SmmReportStatusCodeLib/SmmReportStatusCodeLib.inf
280 MemoryAllocationLib|MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf
281 LockBoxLib|MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf
282 PciLib|MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf
283 CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/SmmCpuExceptionHandlerLib.inf
284 SmmMemLib|MdePkg/Library/SmmMemLib/SmmMemLib.inf
Michael Kinneyb3036052015-12-15 19:23:57 +0000285 BaseCryptLib|CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf
Michael Kinneyb3036052015-12-15 19:23:57 +0000286!if $(PERFORMANCE_ENABLE)
287 PerformanceLib|MdeModulePkg/Library/SmmPerformanceLib/SmmPerformanceLib.inf
288!endif
289
290[LibraryClasses.IA32.SMM_CORE]
291 SmmServicesTableLib|MdeModulePkg/Library/PiSmmCoreSmmServicesTableLib/PiSmmCoreSmmServicesTableLib.inf
292 ReportStatusCodeLib|MdeModulePkg/Library/SmmReportStatusCodeLib/SmmReportStatusCodeLib.inf
293 MemoryAllocationLib|MdeModulePkg/Library/PiSmmCoreMemoryAllocationLib/PiSmmCoreMemoryAllocationLib.inf
294 PciLib|MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf
295 SmmMemLib|MdePkg/Library/SmmMemLib/SmmMemLib.inf
Michael Kinney6ceeb1e2016-01-21 19:30:43 +0000296!if $(SECURE_BOOT_ENABLE) || $(MEASURED_BOOT_ENABLE)
Michael Kinneyb3036052015-12-15 19:23:57 +0000297 BaseCryptLib|CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf
298!endif
299!if $(PERFORMANCE_ENABLE)
300 PerformanceLib|MdeModulePkg/Library/SmmCorePerformanceLib/SmmCorePerformanceLib.inf
301!endif
302
303[LibraryClasses.IA32.DXE_RUNTIME_DRIVER]
304 ReportStatusCodeLib|MdeModulePkg/Library/RuntimeDxeReportStatusCodeLib/RuntimeDxeReportStatusCodeLib.inf
305 QNCAccessLib|QuarkSocPkg/QuarkNorthCluster/Library/QNCAccessLib/RuntimeQNCAccessLib.inf
306 PciLib|MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf
Michael Kinney6ceeb1e2016-01-21 19:30:43 +0000307!if $(SECURE_BOOT_ENABLE) || $(MEASURED_BOOT_ENABLE)
Michael Kinneyb3036052015-12-15 19:23:57 +0000308 BaseCryptLib|CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf
309!endif
310
Jiewen Yao8affbb62016-09-21 11:39:24 +0800311!if $(CAPSULE_ENABLE)
312 CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibFmp/DxeRuntimeCapsuleLib.inf
313!endif
314
Michael Kinneyb3036052015-12-15 19:23:57 +0000315[LibraryClasses.IA32.UEFI_DRIVER,LibraryClasses.IA32.UEFI_APPLICATION]
316 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
317
318################################################################################
319#
320# Pcd Section - list of all EDK II PCD Entries defined by this Platform
321#
322################################################################################
323[PcdsFeatureFlag]
324 gEfiMdeModulePkgTokenSpaceGuid.PcdDevicePathSupportDevicePathToText|TRUE
325 gEfiMdeModulePkgTokenSpaceGuid.PcdDevicePathSupportDevicePathFromText|TRUE
326 gEfiMdeModulePkgTokenSpaceGuid.PcdSupportUpdateCapsuleReset|TRUE
327 gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSwitchToLongMode|FALSE
328 gEfiMdeModulePkgTokenSpaceGuid.PcdPciBusHotplugDeviceSupport|FALSE
329 gEfiMdeModulePkgTokenSpaceGuid.PcdInstallAcpiSdtProtocol|TRUE
330!if $(SOURCE_DEBUG_ENABLE)
331 gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmDebug|TRUE
332!endif
333
334!if $(TARGET) == "RELEASE"
335 gQuarkPlatformTokenSpaceGuid.WaitIfResetDueToError|FALSE
336!else
337 gQuarkPlatformTokenSpaceGuid.WaitIfResetDueToError|TRUE
338!endif
339
340[PcdsFixedAtBuild]
341 gUefiCpuPkgTokenSpaceGuid.PcdCpuMaxLogicalProcessorNumber|1
342 gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdS3AcpiReservedMemorySize|0x20000
343 gEfiMdeModulePkgTokenSpaceGuid.PcdResetOnMemoryTypeInformationChange|TRUE
344!if $(LOGGING)
345 !if $(SOURCE_DEBUG_ENABLE)
346 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x17
347 !else
348 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x27
349 !endif
350 gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x07
351!else
352 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x0
353 gEfiMdePkgTokenSpaceGuid.PcdPostCodePropertyMask|0x0
354 gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x3
355!endif
356 gEfiMdePkgTokenSpaceGuid.PcdPostCodePropertyMask|0x18
357 gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0xE0000000
358!if $(GALILEO) == GEN1
359 gEfiMdePkgTokenSpaceGuid.PcdUartDefaultBaudRate|460800
360!endif
361!if $(GALILEO) == GEN2
362 gEfiMdePkgTokenSpaceGuid.PcdUartDefaultBaudRate|921600
363!endif
364 gEfiMdePkgTokenSpaceGuid.PcdUartDefaultDataBits|8
365 gEfiMdePkgTokenSpaceGuid.PcdUartDefaultParity|1
366 gEfiMdePkgTokenSpaceGuid.PcdUartDefaultStopBits|1
367 gEfiMdePkgTokenSpaceGuid.PcdDefaultTerminalType|0
368!if $(PERFORMANCE_ENABLE)
369 gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask|0x1
370 gEfiMdeModulePkgTokenSpaceGuid.PcdMaxPeiPerformanceLogEntries|80
371!else
372 gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask|0x00
373!endif
374 gEfiMdeModulePkgTokenSpaceGuid.PcdLoadModuleAtFixAddressEnable|0
375!if $(SECURE_BOOT_ENABLE)
376 gEfiMdeModulePkgTokenSpaceGuid.PcdMaxVariableSize|0x2000
377!endif
378 gEfiMdeModulePkgTokenSpaceGuid.PcdHwErrStorageSize|0x00002000
379 gEfiMdeModulePkgTokenSpaceGuid.PcdMaxHardwareErrorVariableSize|0x1000
380 ## RTC Update Timeout Value, need to increase timeout since also
381 # waiting for RTC to be busy.
382 gEfiMdeModulePkgTokenSpaceGuid.PcdRealTimeClockUpdateTimeout|500000
383
384!if $(SECURE_BOOT_ENABLE)
385 # override the default values from SecurityPkg to ensure images from all sources are verified in secure boot
386 gEfiSecurityPkgTokenSpaceGuid.PcdOptionRomImageVerificationPolicy|0x04
387 gEfiSecurityPkgTokenSpaceGuid.PcdFixedMediaImageVerificationPolicy|0x04
388 gEfiSecurityPkgTokenSpaceGuid.PcdRemovableMediaImageVerificationPolicy|0x04
389!endif
390 gQuarkPlatformTokenSpaceGuid.PcdEsramStage1Base|0x80000000
391
392!if $(SOURCE_DEBUG_ENABLE)
393 gEfiSourceLevelDebugPkgTokenSpaceGuid.PcdDebugLoadImageMethod|0x2
394!endif
395
396 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialUseMmio|TRUE
397 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase|0x9000B000
398!if $(GALILEO) == GEN1
399 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialBaudRate|460800
400 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialUseHardwareFlowControl|FALSE
401!endif
402!if $(GALILEO) == GEN2
403 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialBaudRate|921600
404 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialUseHardwareFlowControl|FALSE
405!endif
406 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialLineControl|0x03
407 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialFifoControl|0x07
408 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialDetectCable|FALSE
409 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialClockRate|44236800
410 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialPciDeviceInfo|{0x14, 0x05, 0x84, 0x00, 0xFF}
411 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterStride|4
412
413 #
414 # typedef struct {
415 # UINT16 VendorId; ///< Vendor ID to match the PCI device. The value 0xFFFF terminates the list of entries.
416 # UINT16 DeviceId; ///< Device ID to match the PCI device
417 # UINT32 ClockRate; ///< UART clock rate. Set to 0 for default clock rate of 1843200 Hz
418 # UINT64 Offset; ///< The byte offset into to the BAR
419 # UINT8 BarIndex; ///< Which BAR to get the UART base address
420 # UINT8 RegisterStride; ///< UART register stride in bytes. Set to 0 for default register stride of 1 byte.
421 # UINT16 ReceiveFifoDepth; ///< UART receive FIFO depth in bytes. Set to 0 for a default FIFO depth of 16 bytes.
422 # UINT16 TransmitFifoDepth; ///< UART transmit FIFO depth in bytes. Set to 0 for a default FIFO depth of 16 bytes.
423 # UINT8 Reserved[2];
424 # } PCI_SERIAL_PARAMETER;
425 #
426 # Vendor 8086 Device 0936 Prog Interface 2, BAR #0, Offset 0, Stride = 4, Clock 44236800 (0x2a300000)
427 # Vendor 8086 Device 0936 Prog Interface 2, BAR #0, Offset 0, Stride = 4, Clock 44236800 (0x2a300000)
428 #
429 # [Vendor] [Device] [---ClockRate---] [------------Offset-----------] [Bar] [Stride] [RxFifo] [TxFifo] [Rsvd] [Vendor]
430 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}
431
432 gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiIoPciBusNumber |0
433 gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiIoPciDeviceNumber |31
434 gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiIoPciFunctionNumber |0
435 gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiIoPciEnableRegisterOffset|0x4b
436 gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiIoBarEnableMask |0x80
437 gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiIoPciBarRegisterOffset |0x48
438 gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiIoPortBaseAddress |0x1000
439 gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiPm1TmrOffset |0x0008
440
441 gEfiMdeModulePkgTokenSpaceGuid.PcdBootManagerMenuFile|{ 0x21, 0xaa, 0x2c, 0x46, 0x14, 0x76, 0x03, 0x45, 0x83, 0x6e, 0x8a, 0xb6, 0xf4, 0x66, 0x23, 0x31 }
442
443 gEfiMdeModulePkgTokenSpaceGuid.PcdConInConnectOnDemand|FALSE
444
Jiewen Yao8affbb62016-09-21 11:39:24 +0800445!if $(RECOVERY_ENABLE)
446 gEfiMdeModulePkgTokenSpaceGuid.PcdRecoveryFileName|L"QUARKREC.Cap"
447!endif
448
Michael Kinneyb3036052015-12-15 19:23:57 +0000449[PcdsPatchableInModule]
450 gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803000C7
451 gEfiMdeModulePkgTokenSpaceGuid.PcdVpdBaseAddress|0x0
452
453[PcdsDynamicExHii.common.DEFAULT]
454!if $(PERFORMANCE_ENABLE)
455 gEfiMdePkgTokenSpaceGuid.PcdPlatformBootTimeOut|L"Timeout"|gEfiGlobalVariableGuid|0x0|0
456!else
457 gEfiMdePkgTokenSpaceGuid.PcdPlatformBootTimeOut|L"Timeout"|gEfiGlobalVariableGuid|0x0|5
458!endif
459 gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdBootState|L"BootState"|gQuarkPlatformTokenSpaceGuid|0x0|TRUE
460
461[PcdsDynamicExDefault.common.DEFAULT]
462 gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr|0x0
463 gQuarkPlatformTokenSpaceGuid.PcdEnableFastBoot|TRUE
464 gQuarkPlatformTokenSpaceGuid.PcdUserIsPhysicallyPresent|FALSE
465 gQuarkPlatformTokenSpaceGuid.PcdSpiFlashDeviceSize|0
466
Jiewen Yao8affbb62016-09-21 11:39:24 +0800467!if $(CAPSULE_ENABLE) || $(RECOVERY_ENABLE)
468 gEfiSignedCapsulePkgTokenSpaceGuid.PcdEdkiiSystemFirmwareImageDescriptor|{0x0}|VOID*|0x100
469 gEfiMdeModulePkgTokenSpaceGuid.PcdSystemFmpCapsuleImageTypeIdGuid|{0xc0, 0x20, 0xaf, 0x62, 0x16, 0x70, 0x4a, 0x42, 0x9b, 0xf8, 0x9c, 0xcc, 0x86, 0x58, 0x40, 0x90}
470 gEfiSignedCapsulePkgTokenSpaceGuid.PcdEdkiiSystemFirmwareFileGuid|{0x59, 0x3A, 0xD8, 0x14, 0x10, 0xA8, 0x56, 0x45, 0x81, 0x92, 0x1C, 0x0A, 0x59, 0x3C, 0x06, 0x5C}
471!endif
472
Michael Kinney6ceeb1e2016-01-21 19:30:43 +0000473!if $(MEASURED_BOOT_ENABLE)
474 #
475 # TPM1.2 { 0x8b01e5b6, 0x4f19, 0x46e8, { 0xab, 0x93, 0x1c, 0x53, 0x67, 0x1b, 0x90, 0xcc } }
476 # TPM2.0 DTPM { 0x286bf25a, 0xc2c3, 0x408c, { 0xb3, 0xb4, 0x25, 0xe6, 0x75, 0x8b, 0x73, 0x17 } }
477 #
478 gEfiSecurityPkgTokenSpaceGuid.PcdTpmInstanceGuid|{0xb6, 0xe5, 0x01, 0x8b, 0x19, 0x4f, 0xe8, 0x46, 0xab, 0x93, 0x1c, 0x53, 0x67, 0x1b, 0x90, 0xcc}
479 gEfiSecurityPkgTokenSpaceGuid.PcdTpmInitializationPolicy|1
480 gEfiSecurityPkgTokenSpaceGuid.PcdTpmScrtmPolicy|1
481!endif
482
Michael Kinneyb3036052015-12-15 19:23:57 +0000483[PcdsDynamicExVpd]
484 gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareVendor|*|32|L"EDK II"
485 gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareRevision|*|0x01000400
486 gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareVersionString|*|64|L"Galileo 1.0.4"
487
488#
489# ClantonPeakSVP
490# gQuarkPlatformTokenSpaceGuid.PcdPlatformType|*|0x0002
491# gQuarkPlatformTokenSpaceGuid.PcdPlatformTypeName|*|64|L"ClantonPeakSVP"
492# 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}
493#
494# KipsBay
495# gQuarkPlatformTokenSpaceGuid.PcdPlatformType|*|0x0003
496# gQuarkPlatformTokenSpaceGuid.PcdPlatformTypeName|*|64|L"KipsBay"
497# 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}
498#
499# CrossHill
500# gQuarkPlatformTokenSpaceGuid.PcdPlatformType|*|0x0004
501# gQuarkPlatformTokenSpaceGuid.PcdPlatformTypeName|*|64|L"CrossHill"
502# 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}
503#
504# ClantonHill
505# gQuarkPlatformTokenSpaceGuid.PcdPlatformType|*|0x0005
506# gQuarkPlatformTokenSpaceGuid.PcdPlatformTypeName|*|64|L"ClantonHill"
507# 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}
508#
509# Galileo
510# gQuarkPlatformTokenSpaceGuid.PcdPlatformType|*|0x0006
511# gQuarkPlatformTokenSpaceGuid.PcdPlatformTypeName|*|64|L"Galileo"
512# 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}
513#
514# GalileoGen2
515# gQuarkPlatformTokenSpaceGuid.PcdPlatformType|*|0x0008
516# gQuarkPlatformTokenSpaceGuid.PcdPlatformTypeName|*|64|L"GalileoGen2"
517# 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}
518#
519!if $(GALILEO) == GEN1
520 gQuarkPlatformTokenSpaceGuid.PcdPlatformType|*|0x0006
521 gQuarkPlatformTokenSpaceGuid.PcdPlatformTypeName|*|64|L"Galileo"
522 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}
523!endif
524!if $(GALILEO) == GEN2
525 gQuarkPlatformTokenSpaceGuid.PcdPlatformType|*|0x0008
526 gQuarkPlatformTokenSpaceGuid.PcdPlatformTypeName|*|64|L"GalileoGen2"
527 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}
528!endif
529 gEfiQuarkSCSocIdTokenSpaceGuid.PcdIohEthernetMac0|*|8|{0xff, 0xff, 0xff, 0xff, 0xff, 0xff}
530 gEfiQuarkSCSocIdTokenSpaceGuid.PcdIohEthernetMac1|*|8|{0xff, 0xff, 0xff, 0xff, 0xff, 0xff}
531
532###################################################################################################
533#
534# Components Section - list of the modules and components that will be processed by compilation
535# tools and the EDK II tools to generate PE32/PE32+/Coff image files.
536#
537# Note: The EDK II DSC file is not used to specify how compiled binary images get placed
538# into firmware volume images. This section is just a list of modules to compile from
539# source into UEFI-compliant binaries.
540# It is the FDF file that contains information on combining binary files into firmware
541# volume images, whose concept is beyond UEFI and is described in PI specification.
542# Binary modules do not need to be listed in this section, as they should be
543# specified in the FDF file. For example: Shell binary, FAT binary (Fat.efi),
544# Logo (Logo.bmp), and etc.
545# There may also be modules listed in this section that are not required in the FDF file,
546# When a module listed here is excluded from FDF file, then UEFI-compliant binary will be
547# generated for it, but the binary will not be put into any firmware volume.
548#
549###################################################################################################
550
551[Components.IA32]
552 #
553 # SEC Core
554 #
555 UefiCpuPkg/SecCore/SecCore.inf {
556 !if $(SOURCE_DEBUG_ENABLE)
557 <LibraryClasses>
558 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
559 DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/SecPeiDebugAgentLib.inf
560 ResetSystemLib|QuarkSocPkg/QuarkNorthCluster/Library/ResetSystemLib/ResetSystemLib.inf
561 !endif
562 }
563
Jiewen Yao8affbb62016-09-21 11:39:24 +0800564!if $(CAPSULE_ENABLE) || $(RECOVERY_ENABLE)
565 # FMP image decriptor
566 QuarkPlatformPkg/Feature/Capsule/SystemFirmwareDescriptor/SystemFirmwareDescriptor.inf
567!endif
568
Michael Kinneyb3036052015-12-15 19:23:57 +0000569 #
570 # PEI Core
571 #
572 MdeModulePkg/Core/Pei/PeiMain.inf
573
574 #
575 # PEIM
576 #
577 MdeModulePkg/Universal/PCD/Pei/Pcd.inf {
578 <LibraryClasses>
579 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
580 }
581 MdeModulePkg/Universal/ReportStatusCodeRouter/Pei/ReportStatusCodeRouterPei.inf
582 MdeModulePkg/Universal/StatusCodeHandler/Pei/StatusCodeHandlerPei.inf {
583 <LibraryClasses>
584 !if $(LOGGING)
585 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
586 !else
587 SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf
588 !endif
589 }
590
591 MdeModulePkg/Universal/FaultTolerantWritePei/FaultTolerantWritePei.inf
592 MdeModulePkg/Universal/Variable/Pei/VariablePei.inf
593 MdeModulePkg/Universal/PcatSingleSegmentPciCfg2Pei/PcatSingleSegmentPciCfg2Pei.inf
594 UefiCpuPkg/CpuMpPei/CpuMpPei.inf
595 MdeModulePkg/Universal/CapsulePei/CapsulePei.inf
596
597 QuarkSocPkg/QuarkNorthCluster/MemoryInit/Pei/MemoryInitPei.inf
598 QuarkPlatformPkg/Platform/Pei/PlatformInit/PlatformEarlyInit.inf
599 QuarkPlatformPkg/Platform/Pei/PlatformConfig/PlatformConfigPei.inf
600
601 UefiCpuPkg/PiSmmCommunication/PiSmmCommunicationPei.inf
602
603 MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf
604
605 #
606 # S3
607 #
608 QuarkSocPkg/QuarkNorthCluster/Smm/Pei/SmmAccessPei/SmmAccessPei.inf
609 QuarkSocPkg/QuarkNorthCluster/Smm/Pei/SmmControlPei/SmmControlPei.inf
610 UefiCpuPkg/Universal/Acpi/S3Resume2Pei/S3Resume2Pei.inf
611
612 #
Michael Kinney6ceeb1e2016-01-21 19:30:43 +0000613 # Trusted Platform Module
614 #
615!if $(MEASURED_BOOT_ENABLE)
616 SecurityPkg/Tcg/TrEEConfig/TrEEConfigPei.inf
617 SecurityPkg/Tcg/TcgPei/TcgPei.inf
618!endif
619
620 #
Michael Kinneyb3036052015-12-15 19:23:57 +0000621 # Recovery
622 #
Jiewen Yao8affbb62016-09-21 11:39:24 +0800623!if $(RECOVERY_ENABLE)
Michael Kinneyb3036052015-12-15 19:23:57 +0000624 QuarkSocPkg/QuarkSouthCluster/Usb/Common/Pei/UsbPei.inf
625 MdeModulePkg/Bus/Pci/EhciPei/EhciPei.inf
626 QuarkSocPkg/QuarkSouthCluster/Usb/Ohci/Pei/OhciPei.inf
627 MdeModulePkg/Bus/Usb/UsbBotPei/UsbBotPei.inf
628 MdeModulePkg/Bus/Usb/UsbBusPei/UsbBusPei.inf
629 FatPkg/FatPei/FatPei.inf
630 MdeModulePkg/Universal/Disk/CdExpressPei/CdExpressPei.inf
Jiewen Yao8affbb62016-09-21 11:39:24 +0800631 SignedCapsulePkg/Universal/RecoveryModuleLoadPei/RecoveryModuleLoadPei.inf {
632 <LibraryClasses>
633 FmpAuthenticationLib|SecurityPkg/Library/FmpAuthenticationLibRsa2048Sha256/FmpAuthenticationLibRsa2048Sha256.inf
634 }
635!endif
Michael Kinneyb3036052015-12-15 19:23:57 +0000636
637[Components.IA32]
638 #
639 # DXE Core
640 #
641 MdeModulePkg/Core/Dxe/DxeMain.inf
642
643!if $(SOURCE_DEBUG_ENABLE)
644 SourceLevelDebugPkg/DebugAgentDxe/DebugAgentDxe.inf {
645 <LibraryClasses>
646 DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/DxeDebugAgentLib.inf
647 ResetSystemLib|QuarkSocPkg/QuarkNorthCluster/Library/ResetSystemLib/ResetSystemLib.inf
648 }
649!endif
650
651
652 QuarkPlatformPkg/Platform/Dxe/PlatformInit/PlatformInitDxe.inf
653
654 #
655 # Components that produce the architectural protocols
656 #
657 MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf {
658 <LibraryClasses>
659!if $(SECURE_BOOT_ENABLE)
660 NULL|SecurityPkg/Library/DxeImageVerificationLib/DxeImageVerificationLib.inf
661!endif
662 NULL|SecurityPkg/Library/DxeImageAuthenticationStatusLib/DxeImageAuthenticationStatusLib.inf
663 }
664 UefiCpuPkg/CpuDxe/CpuDxe.inf
665 MdeModulePkg/Universal/Metronome/Metronome.inf
666 MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf
667 MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf
668 MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmm.inf
669!if $(SECURE_BOOT_ENABLE)
670 SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConfigDxe.inf
671!endif
672 MdeModulePkg/Universal/Variable/RuntimeDxe/VariableSmmRuntimeDxe.inf
673 MdeModulePkg/Universal/Variable/RuntimeDxe/VariableSmm.inf {
674 <LibraryClasses>
675 NULL|MdeModulePkg/Library/VarCheckUefiLib/VarCheckUefiLib.inf
676 NULL|MdeModulePkg/Library/VarCheckHiiLib/VarCheckHiiLib.inf
677 NULL|MdeModulePkg/Library/VarCheckPcdLib/VarCheckPcdLib.inf
678 }
679
Jiewen Yao8affbb62016-09-21 11:39:24 +0800680 MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf
Michael Kinneyb3036052015-12-15 19:23:57 +0000681 MdeModulePkg/Universal/MonotonicCounterRuntimeDxe/MonotonicCounterRuntimeDxe.inf
682 MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystemRuntimeDxe.inf
683 PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcatRealTimeClockRuntimeDxe.inf
684
685 #
686 # Following are the DXE drivers (alphabetical order)
687 #
688 MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf
689 MdeModulePkg/Universal/PCD/Dxe/Pcd.inf {
690 <LibraryClasses>
691 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
692 }
693
694 QuarkPlatformPkg/Pci/Dxe/PciHostBridge/PciHostBridge.inf
695 QuarkPlatformPkg/Platform/SpiFvbServices/PlatformSpi.inf
696 QuarkPlatformPkg/Platform/SpiFvbServices/PlatformSmmSpi.inf
697 UefiCpuPkg/CpuIo2Dxe/CpuIo2Dxe.inf
698
699 #
700 # Platform
701 #
702 MdeModulePkg/Universal/BdsDxe/BdsDxe.inf {
703 <LibraryClasses>
704 UefiBootManagerLib|MdeModulePkg/Library/UefiBootManagerLib/UefiBootManagerLib.inf
705 PlatformBootManagerLib|QuarkPlatformPkg/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf
Jiewen Yao8affbb62016-09-21 11:39:24 +0800706!if $(CAPSULE_ENABLE)
707 FmpAuthenticationLib|SecurityPkg/Library/FmpAuthenticationLibPkcs7/FmpAuthenticationLibPkcs7.inf
708!else
709 FmpAuthenticationLib|MdeModulePkg/Library/FmpAuthenticationLibNull/FmpAuthenticationLibNull.inf
710!endif
Michael Kinneyb3036052015-12-15 19:23:57 +0000711 }
712 MdeModulePkg/Application/UiApp/UiApp.inf {
713 <LibraryClasses>
Michael Kinney8ab970f2016-01-21 18:41:59 +0000714 NULL|MdeModulePkg/Library/DeviceManagerUiLib/DeviceManagerUiLib.inf
715 NULL|MdeModulePkg/Library/BootManagerUiLib/BootManagerUiLib.inf
716 NULL|MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootMaintenanceManagerUiLib.inf
Michael Kinneyb3036052015-12-15 19:23:57 +0000717
718 UefiBootManagerLib|MdeModulePkg/Library/UefiBootManagerLib/UefiBootManagerLib.inf
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!if $(PERFORMANCE_ENABLE)
869 MdeModulePkg/Universal/FvSimpleFileSystemDxe/FvSimpleFileSystemDxe.inf
870!endif
871
872 #
873 # Capsule update
874 #
875 IntelFrameworkModulePkg/Universal/FirmwareVolume/FwVolDxe/FwVolDxe.inf
876 IntelFrameworkModulePkg/Universal/FirmwareVolume/UpdateDriverDxe/UpdateDriverDxe.inf
877
878 #
Michael Kinney6ceeb1e2016-01-21 19:30:43 +0000879 # Trusted Platform Module
880 #
881!if $(MEASURED_BOOT_ENABLE)
Michael Kinney62c91312016-01-29 23:38:58 +0000882 SecurityPkg/Tcg/MemoryOverwriteControl/TcgMor.inf
Michael Kinney6ceeb1e2016-01-21 19:30:43 +0000883 SecurityPkg/Tcg/TcgDxe/TcgDxe.inf
Michael Kinney62c91312016-01-29 23:38:58 +0000884 SecurityPkg/Tcg/TcgSmm/TcgSmm.inf
Michael Kinney6ceeb1e2016-01-21 19:30:43 +0000885!endif
886
887 #
Michael Kinneyb3036052015-12-15 19:23:57 +0000888 # Performance Application
889 #
890!if $(PERFORMANCE_ENABLE)
891 PerformancePkg/Dp_App/Dp.inf {
892 <LibraryClasses>
893 ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf
894 FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf
895 }
896!endif
897
Michael Kinney96323602016-10-03 11:16:19 -0700898 #
899 # Force Recovery Application
900 #
901 QuarkPlatformPkg/Application/ForceRecovery/ForceRecovery.inf
902
Michael Kinneyb3036052015-12-15 19:23:57 +0000903 ShellPkg/Application/Shell/Shell.inf {
904 <LibraryClasses>
905 ShellCommandLib|ShellPkg/Library/UefiShellCommandLib/UefiShellCommandLib.inf
906 NULL|ShellPkg/Library/UefiShellLevel2CommandsLib/UefiShellLevel2CommandsLib.inf
907 NULL|ShellPkg/Library/UefiShellLevel1CommandsLib/UefiShellLevel1CommandsLib.inf
908 NULL|ShellPkg/Library/UefiShellLevel3CommandsLib/UefiShellLevel3CommandsLib.inf
909 NULL|ShellPkg/Library/UefiShellDriver1CommandsLib/UefiShellDriver1CommandsLib.inf
910 NULL|ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.inf
911 NULL|ShellPkg/Library/UefiShellInstall1CommandsLib/UefiShellInstall1CommandsLib.inf
912 NULL|ShellPkg/Library/UefiShellNetwork1CommandsLib/UefiShellNetwork1CommandsLib.inf
913 HandleParsingLib|ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.inf
914 ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf
915 FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.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
Jiewen Yao8affbb62016-09-21 11:39:24 +0800925!if $(CAPSULE_ENABLE)
926 MdeModulePkg/Universal/EsrtDxe/EsrtDxe.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
Michael Kinneyb3036052015-12-15 19:23:57 +0000943[BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER]
944 MSFT:*_*_*_DLINK_FLAGS = /ALIGN:4096
Jiewen Yao17abe972016-10-23 23:26:20 +0800945
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