1#/** @file
2# Platform description.
3#
4# Copyright (c) 2012  - 2015, Intel Corporation. All rights reserved.<BR>
5#
6# This program and the accompanying materials are licensed and made available under
7# the terms and conditions of the BSD License that accompanies this distribution.
8# The full text of the license may be found at
9# http://opensource.org/licenses/bsd-license.php.
10#
11# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
12# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
13#
14#
15#**/
16
17################################################################################
18#
19# Defines Section - statements that will be processed to create a Makefile.
20#
21################################################################################
22[Defines]
23  PLATFORM_NAME                       = Vlv2TbltDevicePkg
24  PLATFORM_GUID                       = 465B0A0B-7AC1-443b-8F67-7B8DEC145F90
25  PLATFORM_VERSION                    = 0.1
26  DSC_SPECIFICATION                   = 0x00010005
27
28  #
29  # Set platform specific package/folder name, same as passed from PREBUILD script.
30  # PLATFORM_PACKAGE would be the same as PLATFORM_NAME as well as package build folder
31  # DEFINE only takes effect at R9 DSC and FDF.
32  #
33  DEFINE      PLATFORM_PACKAGE                = Vlv2TbltDevicePkg
34  DEFINE      PLATFORM_RC_PACKAGE             = Vlv2DeviceRefCodePkg
35  DEFINE      PLATFORM_BINARY_PACKAGE         = Vlv2BinaryPkg
36  OUTPUT_DIRECTORY                    = Build/$(PLATFORM_PACKAGE)
37  SUPPORTED_ARCHITECTURES             = IA32
38  BUILD_TARGETS                       = DEBUG|RELEASE
39  SKUID_IDENTIFIER                    = DEFAULT
40
41  DEFINE CPU_ARCH                 =ValleyView2
42  DEFINE PROJECT_SC_FAMILY        =IntelPch
43  DEFINE PROJECT_SC_ROOT          =../$(PLATFORM_RC_PACKAGE)/ValleyView2Soc/SouthCluster
44  DEFINE PROJECT_VLV_ROOT          =../$(PLATFORM_RC_PACKAGE)/ValleyView2Soc/NorthCluster
45
46  DEFINE RC_BINARY_RELEASE        = TRUE
47  #
48  # Platform On/Off features are defined here
49  #
50  #
51  # Platform Support:: Set only one token except Crestview Hills
52  #
53  #   3.BayleyBay
54  #     ENBDT_PF_ENABLE  = TRUE
55  #
56  !include $(PLATFORM_PACKAGE)/AutoPlatformCFG.txt
57  !include $(PLATFORM_PACKAGE)/PlatformPkgConfig.dsc
58
59!if $(X64_CONFIG) == TRUE
60  DEFINE      DXE_ARCHITECTURE        = X64
61  DEFINE      EDK_DXE_ARCHITECTURE    = X64
62  DEFINE      UNDI_DXE_ARCHITECTURE   = 64
63!else
64  DEFINE      DXE_ARCHITECTURE        = IA32
65  DEFINE      EDK_DXE_ARCHITECTURE    = Ia32
66  DEFINE      UNDI_DXE_ARCHITECTURE   = 32
67!endif
68
69  FLASH_DEFINITION                    = $(PLATFORM_PACKAGE)/PlatformPkg.fdf
70!if $(LFMA_ENABLE) == TRUE
71  FIX_LOAD_TOP_MEMORY_ADDRESS         = 0xFFFFFFFFFFFFFFFF
72  DEFINE   TOP_MEMORY_ADDRESS         = 0xFFFFFFFFFFFFFFFF
73!else
74  FIX_LOAD_TOP_MEMORY_ADDRESS         = 0x0
75  DEFINE   TOP_MEMORY_ADDRESS         = 0x0
76!endif
77
78  DEFINE   PLATFORM_PCIEXPRESS_BASE   = 0E0000000
79
80  DEFINE SEC_ENABLE = TRUE
81  DEFINE SEC_DEBUG_INFO_ENABLE = TRUE
82  DEFINE FTPM_ENABLE = TRUE
83
84################################################################################
85#
86# SKU Identification section - list of all SKU IDs supported by this
87#                              Platform.
88#
89################################################################################
90[SkuIds]
91  0|DEFAULT              # The entry: 0|DEFAULT is reserved and always required.
92
93################################################################################
94#
95# Library Class section - list of all Library Classes needed by this Platform.
96#
97################################################################################
98[LibraryClasses.common]
99  #
100  # Entry point
101  #
102  PeiCoreEntryPoint|MdePkg/Library/PeiCoreEntryPoint/PeiCoreEntryPoint.inf
103  PeimEntryPoint|MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf
104  DxeCoreEntryPoint|MdePkg/Library/DxeCoreEntryPoint/DxeCoreEntryPoint.inf
105  UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
106  UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf
107  DxeSmmDriverEntryPoint|IntelFrameworkPkg/Library/DxeSmmDriverEntryPoint/DxeSmmDriverEntryPoint.inf
108
109  #
110  # Basic
111  #
112  BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
113!if $(SSE2_ENABLE) == TRUE
114  BaseMemoryLib|MdePkg/Library/BaseMemoryLibSse2/BaseMemoryLibSse2.inf
115!else
116  BaseMemoryLib|MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf
117!endif
118  PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
119  CpuLib|MdePkg/Library/BaseCpuLib/BaseCpuLib.inf
120  IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
121  PciLib|MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf
122  PciCf8Lib|MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf
123  PciExpressLib|MdePkg/Library/BasePciExpressLib/BasePciExpressLib.inf
124  CacheMaintenanceLib|MdePkg/Library/BaseCacheMaintenanceLib/BaseCacheMaintenanceLib.inf
125  PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf
126  PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
127!if $(RC_BINARY_RELEASE) == TRUE
128  PchPlatformLib|Vlv2TbltDevicePkg/Library/PchPlatformLib/PchPlatformLib.inf
129!endif
130  #
131  # UEFI & PI
132  #
133  UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
134  UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
135  UefiRuntimeLib|MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf
136  UefiLib|MdePkg/Library/UefiLib/UefiLib.inf
137  HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf
138  UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf
139  DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
140  UefiDecompressLib|IntelFrameworkModulePkg/Library/BaseUefiTianoCustomDecompressLib/BaseUefiTianoCustomDecompressLib.inf
141  PeiServicesTablePointerLib|MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf
142  PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf
143  DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf
144  DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf
145  UefiCpuLib|UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.inf
146  UefiUsbLib|MdePkg/Library/UefiUsbLib/UefiUsbLib.inf
147  GenericBdsLib|$(PLATFORM_PACKAGE)/Override/IntelFrameworkModulePkg/Library/GenericBdsLib/GenericBdsLib.inf
148  PlatformBdsLib|$(PLATFORM_PACKAGE)/Library/PlatformBdsLib/PlatformBdsLib.inf
149  NetLib|MdeModulePkg/Library/DxeNetLib/DxeNetLib.inf
150  DpcLib|MdeModulePkg/Library/DxeDpcLib/DxeDpcLib.inf
151  FlashDeviceLib|$(PLATFORM_PACKAGE)/Library/FlashDeviceLib/FlashDeviceLib.inf
152  #
153  # Framework
154  #
155!if $(S3_ENABLE) == TRUE
156  S3BootScriptLib|MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf
157!else
158  S3BootScriptLib|MdePkg/Library/BaseS3BootScriptLibNull/BaseS3BootScriptLibNull.inf
159!endif
160  S3IoLib|MdePkg/Library/BaseS3IoLib/BaseS3IoLib.inf
161  S3PciLib|MdePkg/Library/BaseS3PciLib/BaseS3PciLib.inf
162
163  #
164  # Generic Modules
165  #
166!if $(USB_ENABLE) == TRUE
167  UefiUsbLib|MdePkg/Library/UefiUsbLib/UefiUsbLib.inf
168!endif
169!if $(SCSI_ENABLE) == TRUE
170  UefiScsiLib|MdePkg/Library/UefiScsiLib/UefiScsiLib.inf
171!endif
172!if $(NETWORK_ENABLE) == TRUE
173  NetLib|MdeModulePkg/Library/DxeNetLib/DxeNetLib.inf
174  IpIoLib|MdeModulePkg/Library/DxeIpIoLib/DxeIpIoLib.inf
175  UdpIoLib|MdeModulePkg/Library/DxeUdpIoLib/DxeUdpIoLib.inf
176  TcpIoLib|MdeModulePkg/Library/DxeTcpIoLib/DxeTcpIoLib.inf
177  DpcLib|MdeModulePkg/Library/DxeDpcLib/DxeDpcLib.inf
178!endif
179!if $(S3_ENABLE) == TRUE
180  S3Lib|IntelFrameworkModulePkg/Library/PeiS3Lib/PeiS3Lib.inf
181!endif
182
183  OemHookStatusCodeLib|MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf
184!if $(CAPSULE_ENABLE) == TRUE
185 CapsuleLib|IntelFrameworkModulePkg/Library/DxeCapsuleLib/DxeCapsuleLib.inf
186!else
187  CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibNull/DxeCapsuleLibNull.inf
188!endif
189  LanguageLib|EdkCompatibilityPkg/Compatibility/Library/UefiLanguageLib/UefiLanguageLib.inf
190  SynchronizationLib|MdePkg/Library/BaseSynchronizationLib/BaseSynchronizationLib.inf
191  SecurityManagementLib|MdeModulePkg/Library/DxeSecurityManagementLib/DxeSecurityManagementLib.inf
192  IoApicLib|PcAtChipsetPkg/Library/BaseIoApicLib/BaseIoApicLib.inf
193  DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf
194
195  #
196  # CPU
197  #
198  MtrrLib|UefiCpuPkg/Library/MtrrLib/MtrrLib.inf
199  LocalApicLib|UefiCpuPkg/Library/BaseXApicX2ApicLib/BaseXApicX2ApicLib.inf
200  CpuExceptionHandlerLib|MdeModulePkg/Library/CpuExceptionHandlerLibNull/CpuExceptionHandlerLibNull.inf
201
202  #
203  # ICH
204  #
205  SmbusLib|$(PLATFORM_PACKAGE)/Library/SmbusLib/SmbusLib.inf
206  SmmLib|$(PLATFORM_PACKAGE)/Library/PchSmmLib/PchSmmLib.inf
207
208  #
209  # Platform
210  #
211  TimerLib|$(PLATFORM_PACKAGE)/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf
212  ResetSystemLib|$(PLATFORM_PACKAGE)/Library/ResetSystemLib/ResetSystemLib.inf
213
214  PlatformCmosLib|$(PLATFORM_PACKAGE)/Library/PlatformCmosLib/PlatformCmosLib.inf
215
216  #
217  # Misc
218  #
219  MonoStatusCodeLib|$(PLATFORM_PACKAGE)/MonoStatusCode/MonoStatusCode.inf
220!if $(TARGET) == RELEASE
221  DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
222  SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf
223!else
224  DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
225  SerialPortLib|$(PLATFORM_PACKAGE)/Library/SerialPortLib/SerialPortLib.inf
226!endif
227
228  PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf
229  PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
230!if $(TPM_ENABLED) == TRUE
231  TpmCommLib|SecurityPkg/Library/TpmCommLib/TpmCommLib.inf
232  Tpm12CommandLib|SecurityPkg/Library/Tpm12CommandLib/Tpm12CommandLib.inf
233  Tpm12DeviceLib|SecurityPkg/Library/Tpm12DeviceLibDTpm/Tpm12DeviceLibDTpm.inf
234
235!endif
236
237!if $(SOURCE_DEBUG_ENABLE) == TRUE
238  PeCoffExtraActionLib|SourceLevelDebugPkg/Library/PeCoffExtraActionLibDebug/PeCoffExtraActionLibDebug.inf
239  DebugCommunicationLib|SourceLevelDebugPkg/Library/DebugCommunicationLibSerialPort/DebugCommunicationLibSerialPort.inf
240  PlatformHookLib|MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf
241  SerialPortLib|MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf
242!else
243  PeCoffExtraActionLib|MdePkg/Library/BasePeCoffExtraActionLibNull/BasePeCoffExtraActionLibNull.inf
244  DebugAgentLib|MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf
245!endif
246
247  #
248  # CryptLib
249  #
250!if $(TPM_ENABLED) == TRUE
251  IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf
252  OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf
253!endif
254
255 BiosIdLib|$(PLATFORM_PACKAGE)/Library/BiosIdLib/BiosIdLib.inf
256 CpuIA32Lib|$(PLATFORM_PACKAGE)/Library/CpuIA32Lib/CpuIA32Lib.inf
257
258  StallSmmLib|$(PLATFORM_PACKAGE)/Library/StallSmmLib/StallSmmLib.inf
259
260!if $(SECURE_BOOT_ENABLE) == TRUE
261  OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf
262  IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf
263  PlatformSecureLib|SecurityPkg/Library/PlatformSecureLibNull/PlatformSecureLibNull.inf
264  TpmMeasurementLib|SecurityPkg/Library/DxeTpmMeasurementLib/DxeTpmMeasurementLib.inf
265  AuthVariableLib|SecurityPkg/Library/AuthVariableLib/AuthVariableLib.inf
266!else
267  TpmMeasurementLib|MdeModulePkg/Library/TpmMeasurementLibNull/TpmMeasurementLibNull.inf
268  AuthVariableLib|MdeModulePkg/Library/AuthVariableLibNull/AuthVariableLibNull.inf
269!endif
270  VarCheckLib|MdeModulePkg/Library/VarCheckLib/VarCheckLib.inf
271!if $(RC_BINARY_RELEASE) == TRUE
272  I2cLib|Vlv2TbltDevicePkg/Library/I2CLib/I2CLibNull.inf
273!endif
274  ShellCEntryLib|ShellPkg/Library/UefiShellCEntryLib/UefiShellCEntryLib.inf
275  ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf
276  FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf
277  SortLib|MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf
278!if $(FTPM_ENABLE) == TRUE
279  BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf
280  OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf
281  IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf
282!endif
283  TpmMeasurementLib|SecurityPkg/Library/DxeTpmMeasurementLib/DxeTpmMeasurementLib.inf
284  TrEEPhysicalPresenceLib|SecurityPkg/Library/DxeTrEEPhysicalPresenceLib/DxeTrEEPhysicalPresenceLib.inf
285!if $(FTPM_ENABLE) == TRUE
286  TrEEPpVendorLib|SecurityPkg/Library/TrEEPpVendorLibNull/TrEEPpVendorLibNull.inf
287!endif
288
289
290  Tpm2CommandLib|SecurityPkg/Library/Tpm2CommandLib/Tpm2CommandLib.inf
291!if $(MINNOW2_FSP_BUILD) == TRUE
292  FspApiLib|IntelFspWrapperPkg/Library/BaseFspApiLib/BaseFspApiLib.inf
293  FspPlatformInfoLib|IntelFspWrapperPkg/Library/BaseFspPlatformInfoLibSample/BaseFspPlatformInfoLibSample.inf
294  FspPlatformSecLib|Vlv2TbltDevicePkg/FspSupport/Library/SecFspPlatformSecLibVlv2/FspPlatformSecLibVlv2.inf
295  FspHobProcessLib|Vlv2TbltDevicePkg/FspSupport/Library/PeiFspHobProcessLibVlv2/FspHobProcessLibVlv2.inf
296!endif
297
298[LibraryClasses.IA32.SEC]
299!if $(PERFORMANCE_ENABLE) == TRUE
300  PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf
301!endif
302  DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
303  PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
304
305[LibraryClasses.IA32.PEIM, LibraryClasses.IA32.PEI_CORE, LibraryClasses.IA32.SEC]
306  #
307  # PEI phase common
308  #
309
310  PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
311  HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
312  MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
313  ReportStatusCodeLib|MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf
314  ExtractGuidedSectionLib|MdePkg/Library/PeiExtractGuidedSectionLib/PeiExtractGuidedSectionLib.inf
315  MultiPlatformLib|$(PLATFORM_PACKAGE)/Library/MultiPlatformLib/MultiPlatformLib.inf
316  BaseCryptLib|CryptoPkg/Library/BaseCryptLib/PeiCryptLib.inf
317
318
319!if $(PERFORMANCE_ENABLE) == TRUE
320  PerformanceLib|MdeModulePkg/Library/PeiPerformanceLib/PeiPerformanceLib.inf
321  TimerLib|$(PLATFORM_PACKAGE)/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf
322!endif
323
324!if $(TARGET) == RELEASE
325  DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
326  SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf
327!else
328  DebugLib|IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf
329  SerialPortLib|$(PLATFORM_PACKAGE)/Library/SerialPortLib/SerialPortLib.inf
330!endif
331
332  LockBoxLib|MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxPeiLib.inf
333  HashLib|SecurityPkg/Library/HashLibBaseCryptoRouter/HashLibBaseCryptoRouterPei.inf
334  PeCoffExtraActionLib|MdePkg/Library/BasePeCoffExtraActionLibNull/BasePeCoffExtraActionLibNull.inf
335  DebugAgentLib|MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf
336
337 !if $(MINNOW2_FSP_BUILD) == TRUE
338 PlatformFspLib|Vlv2TbltDevicePkg/Library/PlatformFspLib/PlatformFspLib.inf
339 !endif
340!if $(FTPM_ENABLE) == TRUE
341  Tpm2DeviceLib|Vlv2TbltDevicePkg/Library/Tpm2DeviceLibSeCPei/Tpm2DeviceLibSeC.inf
342!endif
343
344[LibraryClasses.IA32]
345  #
346  # DXE phase common
347  #
348  HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
349  PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
350  MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
351  ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf
352  ExtractGuidedSectionLib|MdePkg/Library/DxeExtractGuidedSectionLib/DxeExtractGuidedSectionLib.inf
353
354  TcgPhysicalPresenceLib|SecurityPkg/Library/DxeTcgPhysicalPresenceLib/DxeTcgPhysicalPresenceLib.inf
355!if $(TPM_ENABLED) == TRUE
356  BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf
357!endif
358
359  LockBoxLib|MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf
360  EfiRegTableLib|$(PLATFORM_PACKAGE)/Library/EfiRegTableLib/EfiRegTableLib.inf
361
362!if $(SECURE_BOOT_ENABLE) == TRUE
363  BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf
364!endif
365
366  HashLib|SecurityPkg/Library/HashLibBaseCryptoRouter/HashLibBaseCryptoRouterDxe.inf
367
368[LibraryClasses.IA32.DXE_DRIVER]
369  DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
370  PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
371  PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf
372  CustomizedDisplayLib|MdeModulePkg/Library/CustomizedDisplayLib/CustomizedDisplayLib.inf
373!if $(PERFORMANCE_ENABLE) == TRUE
374  PerformanceLib|MdeModulePkg/Library/DxePerformanceLib/DxePerformanceLib.inf
375  TimerLib|$(PLATFORM_PACKAGE)/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf
376!endif
377
378!if $(SOURCE_DEBUG_ENABLE) == TRUE
379  DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/DxeDebugAgentLib.inf
380!endif
381
382[LibraryClasses.IA32.DXE_CORE]
383  HobLib|MdePkg/Library/DxeCoreHobLib/DxeCoreHobLib.inf
384  MemoryAllocationLib|MdeModulePkg/Library/DxeCoreMemoryAllocationLib/DxeCoreMemoryAllocationLib.inf
385  PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
386!if $(PERFORMANCE_ENABLE) == TRUE
387  PerformanceLib|MdeModulePkg/Library/DxeCorePerformanceLib/DxeCorePerformanceLib.inf
388  TimerLib|$(PLATFORM_PACKAGE)/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf
389!endif
390
391!if $(SOURCE_DEBUG_ENABLE) == TRUE
392  DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/DxeDebugAgentLib.inf
393!endif
394
395[LibraryClasses.IA32.DXE_SMM_DRIVER]
396  SmmServicesTableLib|MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf
397  ReportStatusCodeLib|MdeModulePkg/Library/SmmReportStatusCodeLib/SmmReportStatusCodeLib.inf
398  MemoryAllocationLib|MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf
399  LockBoxLib|MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf
400  PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf
401  SmmMemLib|MdePkg/Library/SmmMemLib/SmmMemLib.inf
402
403  BaseCryptLib|CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf
404  !if $(TARGET) != RELEASE
405  DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
406  !endif
407
408!if $(SOURCE_DEBUG_ENABLE) == TRUE
409  DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/SmmDebugAgentLib.inf
410  TimerLib|$(PLATFORM_PACKAGE)/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf
411!endif
412  CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/SmmCpuExceptionHandlerLib.inf
413
414[LibraryClasses.IA32.SMM_CORE]
415  MemoryAllocationLib|MdeModulePkg/Library/PiSmmCoreMemoryAllocationLib/PiSmmCoreMemoryAllocationLib.inf
416  SmmServicesTableLib|MdeModulePkg/Library/PiSmmCoreSmmServicesTableLib/PiSmmCoreSmmServicesTableLib.inf
417  ReportStatusCodeLib|MdeModulePkg/Library/SmmReportStatusCodeLib/SmmReportStatusCodeLib.inf
418  SmmCorePlatformHookLib|MdeModulePkg/Library/SmmCorePlatformHookLibNull/SmmCorePlatformHookLibNull.inf
419  SmmMemLib|MdePkg/Library/SmmMemLib/SmmMemLib.inf
420
421!if $(TPM_ENABLED) == TRUE
422  BaseCryptLib|CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf
423!endif
424
425  PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf
426
427!if $(TARGET) != RELEASE
428      DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
429!endif
430
431!if $(SOURCE_DEBUG_ENABLE) == TRUE
432  DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/DxeDebugAgentLib.inf
433  TimerLib|$(PLATFORM_PACKAGE)/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf
434!endif
435
436[LibraryClasses.IA32.DXE_RUNTIME_DRIVER]
437  ReportStatusCodeLib|MdeModulePkg/Library/RuntimeDxeReportStatusCodeLib/RuntimeDxeReportStatusCodeLib.inf
438!if $(SECURE_BOOT_ENABLE) == TRUE
439  BaseCryptLib|CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf
440!endif
441!if $(TPM_ENABLED) == TRUE
442  BaseCryptLib|CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf
443!endif
444
445!if $(SOURCE_DEBUG_ENABLE) == TRUE
446  DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/DxeDebugAgentLib.inf
447!endif
448
449[LibraryClasses.common.UEFI_DRIVER]
450  PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
451
452!if $(SOURCE_DEBUG_ENABLE) == TRUE
453  DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/DxeDebugAgentLib.inf
454!endif
455
456[LibraryClasses.IA32.UEFI_APPLICATION]
457  PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
458
459!if $(SOURCE_DEBUG_ENABLE) == TRUE
460  DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/DxeDebugAgentLib.inf
461!endif
462
463
464################################################################################
465#
466# Library Section - list of all EDK/Framework libraries
467#
468################################################################################
469[Libraries.common]
470  EdkCompatibilityPkg/Foundation/Library/EdkIIGlueLib/Library/BaseLib/BaseLib.inf
471  EdkCompatibilityPkg/Foundation/Library/EdkIIGlueLib/Library/BaseMemoryLib/BaseMemoryLib.inf
472  EdkCompatibilityPkg/Foundation/Library/EdkIIGlueLib/Library/BasePrintLib/BasePrintLib.inf
473  EdkCompatibilityPkg/Foundation/Library/EdkIIGlueLib/Library/BaseDebugLibNull/BaseDebugLibNull.inf
474  EdkCompatibilityPkg/Foundation/Library/EdkIIGlueLib/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
475  EdkCompatibilityPkg/Foundation/Library/EdkIIGlueLib/Library/BaseCacheMaintenanceLib/BaseCacheMaintenanceLib.inf
476  EdkCompatibilityPkg/Foundation/Library/EdkIIGlueLib/Library/BasePciCf8Lib/BasePciCf8Lib.inf
477  EdkCompatibilityPkg/Foundation/Library/EdkIIGlueLib/Library/BasePciExpressLib/BasePciExpressLib.inf
478  EdkCompatibilityPkg/Foundation/Library/EdkIIGlueLib/Library/BasePciLibCf8/BasePciLibCf8.inf
479  EdkCompatibilityPkg/Foundation/Library/EdkIIGlueLib/Library/BasePciLibPciExpress/BasePciLibPciExpress.inf
480  EdkCompatibilityPkg/Foundation/Library/EdkIIGlueLib/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
481  EdkCompatibilityPkg/Foundation/Library/EdkIIGlueLib/Library/BasePeCoffLib/BasePeCoffLib.inf
482  EdkCompatibilityPkg/Foundation/Library/EdkIIGlueLib/Library/SmmRuntimeDxeReportStatusCodeLib/SmmRuntimeDxeReportStatusCodeLib.inf
483  EdkCompatibilityPkg/Foundation/Library/EdkIIGlueLib/Library/PeiHobLib/PeiHobLib.inf
484  EdkCompatibilityPkg/Foundation/Ppi/EdkPpiLib.inf
485  EdkCompatibilityPkg/Foundation/Library/Pei/PeiLib/PeiLib.inf
486  EdkCompatibilityPkg/Compatibility/Library/UefiLanguageLib/UefiLanguageLib.inf
487  EdkCompatibilityPkg/Foundation/Guid/EdkGuidLib.inf
488  EdkCompatibilityPkg/Foundation/Efi/Protocol/EfiProtocolLib.inf
489  EdkCompatibilityPkg/Foundation/Library/Dxe/EfiDriverLib/EfiDriverLib.inf
490  EdkCompatibilityPkg/Foundation/Protocol/EdkProtocolLib.inf
491  EdkCompatibilityPkg/Foundation/Framework/Protocol/EdkFrameworkProtocolLib.inf
492[Libraries.IA32]
493  EdkCompatibilityPkg/Foundation/Efi/Guid/EfiGuidLib.inf
494  EdkCompatibilityPkg/Foundation/Framework/Guid/EdkFrameworkGuidLib.inf
495  EdkCompatibilityPkg/Foundation/Library/EfiCommonLib/EfiCommonLib.inf
496  EdkCompatibilityPkg/Foundation/Cpu/Pentium/CpuIA32Lib/CpuIA32Lib.inf
497  EdkCompatibilityPkg/Foundation/Library/CompilerStub/CompilerStubLib.inf
498  EdkCompatibilityPkg/Foundation/Framework/Ppi/EdkFrameworkPpiLib.inf
499  EdkCompatibilityPkg/Foundation/Library/Pei/Hob/PeiHobLib.inf
500  EdkCompatibilityPkg/Foundation/Library/EdkIIGlueLib/Library/PeiServicesTablePointerLibMm7/PeiServicesTablePointerLibMm7.inf
501  EdkCompatibilityPkg/Foundation/Library/EdkIIGlueLib/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
502  EdkCompatibilityPkg/Foundation/Library/EdkIIGlueLib/Library/PeiServicesLib/PeiServicesLib.inf
503  EdkCompatibilityPkg/Foundation/Library/EdkIIGlueLib/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf
504  EdkCompatibilityPkg/Foundation/Core/Dxe/ArchProtocol/ArchProtocolLib.inf
505
506  $(PLATFORM_PACKAGE)/Library/MultiPlatformLib/MultiPlatformLib.inf
507[Libraries.IA32]
508
509  EdkCompatibilityPkg/Foundation/Efi/Guid/EfiGuidLib.inf
510  EdkCompatibilityPkg/Foundation/Framework/Guid/EdkFrameworkGuidLib.inf
511  EdkCompatibilityPkg/Foundation/Library/EfiCommonLib/EfiCommonLib.inf
512  EdkCompatibilityPkg/Foundation/Cpu/Pentium/CpuIA32Lib/CpuIA32Lib.inf
513  EdkCompatibilityPkg/Foundation/Library/CompilerStub/CompilerStubLib.inf
514  EdkCompatibilityPkg/Foundation/Framework/Ppi/EdkFrameworkPpiLib.inf
515  EdkCompatibilityPkg/Foundation/Core/Dxe/ArchProtocol/ArchProtocolLib.inf
516  EdkCompatibilityPkg/Foundation/Library/Dxe/Hob/HobLib.inf
517  EdkCompatibilityPkg/Foundation/Library/RuntimeDxe/EfiRuntimeLib/EfiRuntimeLib.inf
518  EdkCompatibilityPkg/Foundation/Library/Dxe/EfiIfrSupportLib/EfiIfrSupportLib.inf
519  EdkCompatibilityPkg/Foundation/Library/Dxe/Print/PrintLib.inf
520  EdkCompatibilityPkg/Foundation/Library/Dxe/EfiScriptLib/EfiScriptLib.inf
521  EdkCompatibilityPkg/Foundation/Library/Dxe/PrintLite/PrintLib.inf
522  EdkCompatibilityPkg/Foundation/Library/Dxe/GraphicsLite/Graphics.inf
523  EdkCompatibilityPkg/Foundation/Library/EdkIIGlueLib/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
524  EdkCompatibilityPkg/Foundation/Library/EdkIIGlueLib/Library/DxeMemoryAllocationLib/DxeMemoryAllocationLib.inf
525  EdkCompatibilityPkg/Foundation/Library/EdkIIGlueLib/Library/UefiLib/UefiLib.inf
526  EdkCompatibilityPkg/Foundation/Library/EdkIIGlueLib/Library/DxeHobLib/DxeHobLib.inf
527  EdkCompatibilityPkg/Foundation/Library/EdkIIGlueLib/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
528  EdkCompatibilityPkg/Foundation/Library/EdkIIGlueLib/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf
529  EdkCompatibilityPkg/Foundation/Library/EdkIIGlueLib/Library/HiiLib/HiiLib.inf
530  EdkCompatibilityPkg/Foundation/Library/EdkIIGlueLib/Library/UefiDevicePathLib/UefiDevicePathLib.inf
531  EdkCompatibilityPkg/Foundation/Library/EdkIIGlueLib/Library/UefiDriverModelLib/UefiDriverModelLib.inf
532  EdkCompatibilityPkg/Foundation/Library/EdkIIGlueLib/Library/DxeServicesTableLib/DxeServicesTableLib.inf
533  EdkCompatibilityPkg/Foundation/Library/EdkIIGlueLib/Library/EdkDxeRuntimeDriverLib/EdkDxeRuntimeDriverLib.inf
534
535
536################################################################################
537#
538# Pcd Section - list of all EDK II PCD Entries defined by this Platform
539#
540################################################################################
541[PcdsFeatureFlag.common]
542!if $(MINI_BIOS_ENABLE) == FALSE
543  gPlatformModuleTokenSpaceGuid.PcdBdsDispatchAdditionalOprom|TRUE
544!else
545  gPlatformModuleTokenSpaceGuid.PcdBdsDispatchAdditionalOprom|FALSE
546!endif
547#
548# If PcdDxeIplSwitchToLongMode is TRUE, DxeIpl will load a 64-bit DxeCore and switch to long mode to hand over to DxeCore.
549#
550  gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSwitchToLongMode|FALSE
551
552  gEfiMdeModulePkgTokenSpaceGuid.PcdBrowserGrayOutTextStatement|TRUE
553
554!if $(CAPSULE_RESET_ENABLE) == TRUE
555  gEfiMdeModulePkgTokenSpaceGuid.PcdSupportUpdateCapsuleReset|TRUE
556!else
557  gEfiMdeModulePkgTokenSpaceGuid.PcdSupportUpdateCapsuleReset|FALSE
558!endif
559  gEfiMdeModulePkgTokenSpaceGuid.PcdFrameworkCompatibilitySupport|TRUE
560  gEfiCpuTokenSpaceGuid.PcdCpuSmmEnableBspElection|FALSE
561!if $(DATAHUB_STATUS_CODE_ENABLE) == TRUE
562  gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdStatusCodeUseDataHub|TRUE
563!else
564  gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdStatusCodeUseDataHub|FALSE
565!endif
566  gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreImageLoaderSearchTeSectionFirst|FALSE
567!if $(TARGET) == RELEASE
568  gEfiMdeModulePkgTokenSpaceGuid.PcdStatusCodeUseSerial|FALSE
569!else
570  gEfiMdeModulePkgTokenSpaceGuid.PcdStatusCodeUseSerial|FALSE
571!endif
572  gEfiMdeModulePkgTokenSpaceGuid.PcdStatusCodeUseMemory|FALSE
573!if $(ISA_SERIAL_STATUS_CODE_ENABLE) == TRUE
574  gEfiSerialPortTokenSpaceGuid.PcdStatusCodeUseIsaSerial|TRUE
575!else
576  gEfiSerialPortTokenSpaceGuid.PcdStatusCodeUseIsaSerial|FALSE
577!endif
578!if $(USB_SERIAL_STATUS_CODE_ENABLE) == TRUE
579  gEfiSerialPortTokenSpaceGuid.PcdStatusCodeUseUsbSerial|TRUE
580!else
581  gEfiSerialPortTokenSpaceGuid.PcdStatusCodeUseUsbSerial|FALSE
582!endif
583!if $(RAM_SERIAL_STATUS_CODE_ENABLE) == TRUE
584  gEfiSerialPortTokenSpaceGuid.PcdStatusCodeUseRam|TRUE
585!else
586  gEfiSerialPortTokenSpaceGuid.PcdStatusCodeUseRam|FALSE
587!endif
588
589
590  ## This PCD specifies whether PS2 keyboard does a extended verification during start.
591  gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdPs2KbdExtendedVerification|FALSE
592
593  ## This PCD specifies whether PS2 mouse does a extended verification during start.
594  gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdPs2MouseExtendedVerification|FALSE
595
596!if $(VARIABLE_INFO_ENABLE) == TRUE
597  gEfiMdeModulePkgTokenSpaceGuid.PcdVariableCollectStatistics|TRUE
598!else
599  gEfiMdeModulePkgTokenSpaceGuid.PcdVariableCollectStatistics|FALSE
600!endif
601
602  gEfiCpuTokenSpaceGuid.PcdCpuSmmBlockStartupThisAp|TRUE
603
604[PcdsFixedAtBuild.common]
605!if $(MINNOW2_FSP_BUILD) == TRUE
606# $(FLASH_REGION_VLVMICROCODE_BASE)
607  gFspWrapperTokenSpaceGuid.PcdCpuMicrocodePatchAddress|0xFFC00000
608# $(FLASH_REGION_VLVMICROCODE_SIZE)
609  gFspWrapperTokenSpaceGuid.PcdCpuMicrocodePatchRegionSize|0x00040000
610  gFspWrapperTokenSpaceGuid.PcdFlashMicroCodeOffset|0x60
611# $(FLASH_AREA_BASE_ADDRESS)
612  gFspWrapperTokenSpaceGuid.PcdFlashCodeCacheAddress|0xFF800000
613# $(FLASH_AREA_SIZE)
614  gFspWrapperTokenSpaceGuid.PcdFlashCodeCacheSize|0x00800000
615# $(FLASH_REGION_FSPBIN_BASE)
616  gFspWrapperTokenSpaceGuid.PcdFlashFvFspBase|0xFFDB0000
617!endif
618
619!if $(PERFORMANCE_ENABLE) == TRUE
620!if $(MINNOW2_FSP_BUILD) == TRUE
621  # in FSP, when this got used, the memory already is up
622  gEfiCpuTokenSpaceGuid.PcdTemporaryRamBase|0x00080000
623!else
624  gEfiCpuTokenSpaceGuid.PcdTemporaryRamBase|0xFEF80000
625!endif
626  gEfiCpuTokenSpaceGuid.PcdTemporaryRamSize|0x00010000
627
628!else
629  !if $(MINNOW2_FSP_BUILD) == TRUE
630    gEfiCpuTokenSpaceGuid.PcdTemporaryRamBase|0x00080000
631  !else
632    gEfiCpuTokenSpaceGuid.PcdTemporaryRamBase|0xFEF80000
633  !endif
634  gEfiCpuTokenSpaceGuid.PcdTemporaryRamSize|0x00010000
635  gEfiCpuTokenSpaceGuid.PcdPeiTemporaryRamStackSize|0x3C00
636!endif
637
638
639!if $(SECURE_BOOT_ENABLE) == TRUE
640  gEfiMdeModulePkgTokenSpaceGuid.PcdMaxVariableSize|0x22000
641!else
642  gEfiMdeModulePkgTokenSpaceGuid.PcdMaxVariableSize|0x4000
643!endif
644  gEfiMdeModulePkgTokenSpaceGuid.PcdHwErrStorageSize|0x00000800
645  gEfiMdeModulePkgTokenSpaceGuid.PcdMaxHardwareErrorVariableSize|0x400
646  gEfiCpuTokenSpaceGuid.PcdCpuIEDRamSize|0x400000
647  gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdS3AcpiReservedMemorySize|0x10000
648  gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreMaxPeimPerFv|50
649  gEfiMdeModulePkgTokenSpaceGuid.PcdSrIovSupport|FALSE
650  gEfiMdeModulePkgTokenSpaceGuid.PcdAriSupport|FALSE
651  gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreMaxPpiSupported|128
652  gEfiCpuTokenSpaceGuid.PcdCpuSmmApSyncTimeout|1000
653!if $(S4_ENABLE) == TRUE
654  gEfiMdeModulePkgTokenSpaceGuid.PcdResetOnMemoryTypeInformationChange|TRUE
655!else
656  gEfiMdeModulePkgTokenSpaceGuid.PcdResetOnMemoryTypeInformationChange|FALSE
657!endif
658!if $(TARGET) == RELEASE
659  gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x0
660  gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x3
661!else
662  gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x2F
663  gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x07
664!endif
665!if $(PERFORMANCE_ENABLE) == TRUE
666  gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask|0x1
667  gEfiMdeModulePkgTokenSpaceGuid.PcdMaxPeiPerformanceLogEntries|60
668!endif
669
670  gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdEbdaReservedMemorySize|0x10000
671  gEfiMdeModulePkgTokenSpaceGuid.PcdLoadModuleAtFixAddressEnable|$(TOP_MEMORY_ADDRESS)
672  gEfiMdeModulePkgTokenSpaceGuid.PcdBrowserSubtitleTextColor|0x0
673  gEfiMdeModulePkgTokenSpaceGuid.PcdBrowserFieldTextColor|0x01
674  gEfiCpuTokenSpaceGuid.PcdCpuIEDEnabled|TRUE
675  gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdBiosVideoCheckVbeEnable|TRUE
676  gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdBiosVideoCheckVgaEnable|TRUE
677
678!if $(SOURCE_DEBUG_ENABLE) == TRUE
679  gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x17
680  gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x07
681  gEfiMdeModulePkgTokenSpaceGuid.PcdSerialUseHardwareFlowControl|FALSE
682!endif
683
684[PcdsFixedAtBuild.IA32.PEIM, PcdsFixedAtBuild.IA32.PEI_CORE, PcdsFixedAtBuild.IA32.SEC]
685!if $(TARGET) == RELEASE
686  gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x0
687  gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x3
688!else
689  gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x2E
690  gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x07
691!endif
692
693[PcdsPatchableInModule.common]
694  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6
695  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x$(PLATFORM_PCIEXPRESS_BASE)
696  gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdLegacyBiosCacheLegacyRegion|FALSE
697
698  ## This PCD specifies whether to use the optimized timing for best PS2 detection performance.
699  #  Note this PCD could be set to TRUE for best boot performance and set to FALSE for best device compatibility.
700  gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdFastPS2Detection|TRUE
701
702  #######################################################################################################
703  #
704  # Begin of MRC parameters
705  #
706
707  ## Memory Parameter Patchable.
708  #  FALSE - MRC Parameters are fixed for MinnowBoard Max<BR>
709  #  TRUE  - MRC Parameters are patchable by following PCDs<BR>
710  # @Prompt Memory Parameter Patchable.
711  # @ValidList 0x80000001 | 0, 1
712  gVlvRefCodePkgTokenSpaceGuid.PcdMemoryParameterPatchable|FALSE
713
714  ## Memory Down or DIMM slot.
715  #  0 - DIMM<BR>
716  #  1 - Memory Down<BR>
717  # @Prompt Enable Memory Down
718  # @ValidList 0x80000001 | 0, 1
719  gVlvRefCodePkgTokenSpaceGuid.PcdEnableMemoryDown|1
720
721  ## The speed of DRAM.
722  #  0 - 800 MHz<BR>
723  #  1 - 1066 MHz<BR>
724  #  2 - 1333 MHz<BR>
725  #  3 - 1600 MHz<BR>
726  # @Prompt DRAM Speed
727  # @ValidList 0x80000001 | 0, 1, 2, 3
728  gVlvRefCodePkgTokenSpaceGuid.PcdDramSpeed|1
729
730  ## DRAM Type.
731  #  0 - DDR3<BR>
732  #  1 - DDR3L<BR>
733  #  2 - DDR3U<BR>
734  #  3 - DDR3All<BR>
735  #  4 - LPDDR2<BR>
736  #  5 - LPDDR3<BR>
737  #  6 - DDR4<BR>
738  # @Prompt DRAM Type
739  # @ValidList 0x80000001 | 0, 1, 2, 3, 4, 5, 6
740  gVlvRefCodePkgTokenSpaceGuid.PcdDramType|1
741
742  ## Please populate DIMM slot 0 if only one DIMM is supported.
743  #  0 - Disable<BR>
744  #  1 - Enable<BR>
745  # @Prompt DIMM 0 Enable
746  # @ValidList 0x80000001 | 0, 1
747  gVlvRefCodePkgTokenSpaceGuid.PcdEnableDimm0|1
748
749  ## DIMM 1 has to be identical to DIMM 0.
750  #  0 - Disable<BR>
751  #  1 - Enable<BR>
752  # @Prompt DIMM 1 Enable Type
753  # @ValidList 0x80000001 | 0, 1
754  gVlvRefCodePkgTokenSpaceGuid.PcdEnableDimm1|0
755
756  ## DRAM device data width.
757  #  0 - x8<BR>
758  #  1 - x16<BR>
759  #  2 - x32<BR>
760  # @Prompt DIMM_DWIDTH
761  # @ValidList 0x80000001 | 0, 1, 2
762  gVlvRefCodePkgTokenSpaceGuid.PcdDimmDataWidth|1
763
764  ## DRAM device data density.
765  #  0 - 1 Gbit<BR>
766  #  1 - 2 Gbit<BR>
767  #  2 - 4 Gbit<BR>
768  #  3 - 8 Gbit<BR>
769  # @Prompt DIMM_Density
770  # @ValidList 0x80000001 | 0, 1, 2, 3
771  gVlvRefCodePkgTokenSpaceGuid.PcdDimmDensity|2
772
773  ## DRAM device data bus width.
774  #  0 - 8 bits<BR>
775  #  1 - 16 bits<BR>
776  #  2 - 32 bits<BR>
777  #  3 - 64 bits<BR>
778  # @Prompt DIMM_BusWidth
779  # @ValidList 0x80000001 | 0, 1, 2, 3
780  gVlvRefCodePkgTokenSpaceGuid.PcdDimmBusWidth|3
781
782  ## Ranks Per DIMM or Sides Per DIMM.
783  #  0 - 1 Rank<BR>
784  #  1 - 2 Ranks<BR>
785  # @Prompt DIMM_Sides
786  # @ValidList 0x80000001 | 0, 1
787  gVlvRefCodePkgTokenSpaceGuid.PcdRankPerDimm|0
788
789  ## tCL.<BR><BR>
790  # @Prompt tCL
791  gVlvRefCodePkgTokenSpaceGuid.PcdTcl|11
792
793  ## tRP and tRCD in DRAM clk - 5:12.5ns, 6:15ns, etc.
794  # @Prompt tRP_tRCD
795  gVlvRefCodePkgTokenSpaceGuid.PcdTrpTrcd|11
796
797  ## tWR in DRAM clk.
798  # @Prompt tWR
799  gVlvRefCodePkgTokenSpaceGuid.PcdTwr|12
800
801  ## tWTR in DRAM clk.
802  # @Prompt tWTR
803  gVlvRefCodePkgTokenSpaceGuid.PcdTwtr|6
804
805  ## tRRD in DRAM clk.
806  # @Prompt tRRD
807  gVlvRefCodePkgTokenSpaceGuid.PcdTrrd|6
808
809  ## tRTP in DRAM clk.
810  # @Prompt tRTP
811  gVlvRefCodePkgTokenSpaceGuid.PcdTrtp|6
812
813  ## tFAW in DRAM clk.
814  # @Prompt tFAW
815  gVlvRefCodePkgTokenSpaceGuid.PcdTfaw|32
816
817  #
818  # End of MRC parameters.
819  #
820  ###############################################################################################
821
822[PcdsDynamicHii.common.DEFAULT]
823  gEfiMdePkgTokenSpaceGuid.PcdPlatformBootTimeOut|L"Timeout"|gEfiGlobalVariableGuid|0x0|5 # Variable: L"Timeout"
824  gEfiMdePkgTokenSpaceGuid.PcdHardwareErrorRecordLevel|L"HwErrRecSupport"|gEfiGlobalVariableGuid|0x0|1 # Variable: L"HwErrRecSupport"
825  gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdBootState|L"BootState"|gEfiBootStateGuid|0x0|TRUE
826
827[PcdsDynamicDefault.common.DEFAULT]
828  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr|0x0
829  !if $(TPM_ENABLED) == TRUE
830    gEfiSecurityPkgTokenSpaceGuid.PcdTpmInstanceGuid|{0x7b, 0x3a, 0xcd, 0x72, 0xA5, 0xFE, 0x5e, 0x4f, 0x91, 0x65, 0x4d, 0xd1, 0x21, 0x87, 0xbb, 0x13}
831  !endif
832  !if $(FTPM_ENABLE) == TRUE
833    gEfiSecurityPkgTokenSpaceGuid.PcdTpmInstanceGuid|{0x7b, 0x3a, 0xcd, 0x72, 0xA5, 0xFE, 0x5e, 0x4f, 0x91, 0x65, 0x4d, 0xd1, 0x21, 0x87, 0xbb, 0x13}
834  !endif
835
836  ## This PCD defines the video horizontal resolution.
837  #  This PCD could be set to 0 then video resolution could be at highest resolution.
838  #gEfiMdeModulePkgTokenSpaceGuid.PcdVideoHorizontalResolution|0
839  gEfiMdeModulePkgTokenSpaceGuid.PcdVideoHorizontalResolution|800
840  ## This PCD defines the video vertical resolution.
841  #  This PCD could be set to 0 then video resolution could be at highest resolution.
842  #gEfiMdeModulePkgTokenSpaceGuid.PcdVideoVerticalResolution|0
843  gEfiMdeModulePkgTokenSpaceGuid.PcdVideoVerticalResolution|600
844
845  ## This PCD defines the Console output column and the default value is 25 according to UEFI spec.
846  #  This PCD could be set to 0 then console output could be at max column and max row.
847  gEfiMdeModulePkgTokenSpaceGuid.PcdConOutRow|31
848  ## This PCD defines the Console output row and the default value is 80 according to UEFI spec.
849  #  This PCD could be set to 0 then console output could be at max column and max row.
850  gEfiMdeModulePkgTokenSpaceGuid.PcdConOutColumn|100
851
852  ## The PCD is used to specify the video horizontal resolution of text setup.
853  gEfiMdeModulePkgTokenSpaceGuid.PcdSetupVideoHorizontalResolution|800
854  ## The PCD is used to specify the video vertical resolution of text setup.
855  gEfiMdeModulePkgTokenSpaceGuid.PcdSetupVideoVerticalResolution|600
856  ## The PCD is used to specify the console output column of text setup.
857  gEfiMdeModulePkgTokenSpaceGuid.PcdSetupConOutColumn|100
858  ## The PCD is used to specify the console output column of text setup.
859  gEfiMdeModulePkgTokenSpaceGuid.PcdSetupConOutRow|31
860
861!if $(TPM_ENABLED) == TRUE
862  gEfiSecurityPkgTokenSpaceGuid.PcdTpmInitializationPolicy|1
863  gEfiSecurityPkgTokenSpaceGuid.PcdTpmScrtmPolicy|1
864!endif
865
866[PcdsDynamicExDefault.common.DEFAULT]
867  gEfiVLVTokenSpaceGuid.PcdTCSmbaIoBaseAddress|0x1040
868  gEfiVLVTokenSpaceGuid.PcdEmmcManufacturerId|0
869  gEfiVLVTokenSpaceGuid.PcdProductSerialNumber|0
870  gEfiVLVTokenSpaceGuid.PcdMeasuredBootEnable|TRUE
871  gEfiVLVTokenSpaceGuid.PcdFTPMErrorOccur|FALSE
872  gEfiVLVTokenSpaceGuid.PcdFTPMErrorSkip|FALSE
873  gEfiVLVTokenSpaceGuid.PcdFTPMCommand|0
874  gEfiVLVTokenSpaceGuid.PcdFTPMResponse|0
875  gEfiVLVTokenSpaceGuid.PcdFTPMNotRespond|FALSE
876  gEfiVLVTokenSpaceGuid.PcdFTPMStatus|0
877  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateSmmDataPtr|0
878  gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr|0
879  gEfiCpuTokenSpaceGuid.PcdCpuS3DataAddress|0
880  gEfiCpuTokenSpaceGuid.PcdCpuHotPlugDataAddress|0
881  gEfiCpuTokenSpaceGuid.PcdCpuCallbackSignal|0
882  gEfiCpuTokenSpaceGuid.PcdCpuConfigContextBuffer|0
883  gEfiVLVTokenSpaceGuid.PcdCpuLockBoxDataAddress|0
884  gEfiVLVTokenSpaceGuid.PcdCpuSmramCpuDataAddress|0
885  gEfiVLVTokenSpaceGuid.PcdCpuLockBoxSize|0
886
887[Components.IA32]
888
889  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/SecCore.inf
890
891  !if $(MINNOW2_FSP_BUILD) == TRUE
892  IntelFspWrapperPkg/FspWrapperSecCore/FspWrapperSecCore.inf {
893    !if $(TARGET) == DEBUG
894
895    <LibraryClasses>
896      DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
897    !endif
898  }
899  Vlv2TbltDevicePkg/FspSupport/BootModePei/BootModePei.inf
900  IntelFspWrapperPkg/FspInitPei/FspInitPei.inf {
901    !if $(TARGET) == DEBUG
902    <LibraryClasses>
903      DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
904    !endif
905  }
906  !endif
907
908  MdeModulePkg/Core/Pei/PeiMain.inf {
909!if $(TARGET) == DEBUG
910    <PcdsFixedAtBuild>
911      gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x2E
912!endif
913    <PcdsPatchableInModule>
914      gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80000046
915  }
916
917  $(PLATFORM_PACKAGE)/MonoStatusCode/MonoStatusCode.inf {
918!if $(TARGET) == DEBUG
919    <PcdsFixedAtBuild>
920      gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x2E
921!endif
922  }
923  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/MemoryInit.inf {
924    <PcdsPatchableInModule>
925      gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80000046
926    <BuildOptions>
927      !if $(FTPM_ENABLE)==TRUE
928        *_*_IA32_CC_FLAGS = /D FTPM_ENABLE
929      !endif
930  }
931
932!if $(RC_BINARY_RELEASE) == TRUE
933  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/SeCUma.inf
934!endif
935
936!if $(FTPM_ENABLE) == TRUE
937$(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/fTPMInitPeim.inf
938!endif
939
940!if $(RC_BINARY_RELEASE) == TRUE
941  $(PLATFORM_PACKAGE)/PlatformPei/PlatformPei.inf {
942    <BuildOptions>
943      *_*_IA32_CC_FLAGS      = /DRC_BINARY_RELEASE
944  !if $(TARGET) == DEBUG
945      <PcdsFixedAtBuild>
946        gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x2E
947  !endif
948  }
949!endif
950
951!if $(SOURCE_DEBUG_ENABLE) == TRUE
952  SourceLevelDebugPkg/DebugAgentPei/DebugAgentPei.inf{
953    <LibraryClasses>
954      PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
955      DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/SecPeiDebugAgentLib.inf
956      PlatformHookLib|MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf
957      SerialPortLib|MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf
958    }
959!endif
960
961!if $(FTPM_ENABLE) == TRUE
962  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/Tpm2DeviceSeCPei.inf
963!endif
964
965!if $(TPM_ENABLED) == TRUE
966  SecurityPkg/Tcg/PhysicalPresencePei/PhysicalPresencePei.inf
967  SecurityPkg/Tcg/TcgPei/TcgPei.inf {
968    <LibraryClasses>
969      NULL|SecurityPkg/Library/HashInstanceLibSha1/HashInstanceLibSha1.inf
970      NULL|SecurityPkg/Library/HashInstanceLibSha256/HashInstanceLibSha256.inf
971      PcdLib|MdePkg/Library/PeiPcdLib/PeiPcdLib.inf
972}
973!endif
974
975 $(PLATFORM_PACKAGE)/PlatformInitPei/PlatformInitPei.inf {
976    <PcdsPatchableInModule>
977      gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803805c6
978    <LibraryClasses>
979!if $(TARGET) != RELEASE
980      DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
981!endif
982      PcdLib|MdePkg/Library/PeiPcdLib/PeiPcdLib.inf
983  }
984  $(PLATFORM_PACKAGE)/FvInfoPei/FvInfoPei.inf
985
986  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/VlvInitPeim.inf
987!if $(PCIESC_ENABLE) == TRUE
988  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/PchEarlyInitPeim.inf {
989    <PcdsPatchableInModule>
990      gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80000046
991  }
992!endif
993  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/PchInitPeim.inf
994
995
996  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/PchSmbusArpDisabled.inf
997  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/PchSpiPeim.inf
998  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/PeiSmmAccess.inf
999  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/PeiSmmControl.inf
1000  MdeModulePkg/Universal/PCD/Pei/Pcd.inf
1001  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/CpuPeim.inf
1002  UefiCpuPkg/CpuIoPei/CpuIoPei.inf
1003  UefiCpuPkg/Universal/Acpi/S3Resume2Pei/S3Resume2Pei.inf
1004  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/MpS3.inf
1005  EdkCompatibilityPkg/Compatibility/AcpiVariableHobOnSmramReserveHobThunk/AcpiVariableHobOnSmramReserveHobThunk.inf
1006  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/PiSmmCommunicationPei.inf
1007!if $(CAPSULE_ENABLE) == TRUE
1008  MdeModulePkg/Universal/CapsulePei/CapsulePei.inf
1009!endif
1010  MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf {
1011    <LibraryClasses>
1012!if $(LZMA_ENABLE) == TRUE
1013    NULL|IntelFrameworkModulePkg/Library/LzmaCustomDecompressLib/LzmaCustomDecompressLib.inf
1014!endif
1015  }
1016
1017 MdeModulePkg/Universal/Variable/Pei/VariablePei.inf
1018 MdeModulePkg/Universal/FaultTolerantWritePei/FaultTolerantWritePei.inf
1019
1020!if $(FTPM_ENABLE) == TRUE
1021   SecurityPkg/Tcg/TrEEPei/TrEEPei.inf {
1022    <PcdsPatchableInModule>
1023      gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80000046
1024    <LibraryClasses>
1025      DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
1026      NULL|SecurityPkg/Library\HashInstanceLibSha1/HashInstanceLibSha1.inf
1027      NULL|SecurityPkg/Library/HashInstanceLibSha256/HashInstanceLibSha256.inf
1028      PcdLib|MdePkg/Library/PeiPcdLib/PeiPcdLib.inf
1029  }
1030!endif
1031!if $(TPM_ENABLED) == TRUE
1032  SecurityPkg/Tcg/TrEEConfig/TrEEConfigPei.inf {
1033    <LibraryClasses>
1034      PcdLib|MdePkg/Library/PeiPcdLib/PeiPcdLib.inf
1035  }
1036!endif
1037!if $(ACPI50_ENABLE) == TRUE
1038  MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTablePei/FirmwarePerformancePei.inf{
1039    <LibraryClasses>
1040      TimerLib|$(PLATFORM_PACKAGE)/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf
1041  }
1042
1043!endif
1044!if $(PERFORMANCE_ENABLE) == TRUE
1045  MdeModulePkg/Universal/ReportStatusCodeRouter/Pei/ReportStatusCodeRouterPei.inf
1046!endif
1047[Components.IA32]
1048  !if $(MINNOW2_FSP_BUILD) == TRUE
1049  IntelFspWrapperPkg/FspNotifyDxe/FspNotifyDxe.inf {
1050    !if $(TARGET) == DEBUG
1051    <PcdsPatchableInModule>
1052      gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80000046
1053    <LibraryClasses>
1054      DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
1055    !endif
1056  }
1057
1058  !endif
1059  #
1060  # EDK II Related Platform codes
1061  #
1062  MdeModulePkg/Core/Dxe/DxeMain.inf {
1063    <PcdsPatchableInModule>
1064      gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80000046
1065    <LibraryClasses>
1066!if $(DXE_CRC32_SECTION_ENABLE) == TRUE
1067      NULL|MdeModulePkg/Library/DxeCrc32GuidedSectionExtractLib/DxeCrc32GuidedSectionExtractLib.inf
1068!endif
1069!if $(LZMA_ENABLE) == TRUE
1070      NULL|IntelFrameworkModulePkg/Library/LzmaCustomDecompressLib/LzmaCustomDecompressLib.inf
1071!endif
1072!if $(TARGET) != RELEASE
1073      DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
1074!endif
1075  }
1076  IntelFrameworkModulePkg/Universal/Acpi/AcpiS3SaveDxe/AcpiS3SaveDxe.inf {
1077    <PcdsPatchableInModule>
1078        gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0xF0000043
1079    <PcdsFixedAtBuild>
1080        gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x27
1081    <LibraryClasses>
1082    !if $(TARGET) != RELEASE
1083          DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
1084    !endif
1085       <BuildOptions>
1086        ICC:*_*_*_CC_FLAGS = /D MDEPKG_NDEBUG
1087        GCC:*_*_*_CC_FLAGS = -D MDEPKG_NDEBUG
1088  }
1089  MdeModulePkg/Universal/PCD/Dxe/Pcd.inf {
1090    <LibraryClasses>
1091      PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
1092  }
1093  IntelFrameworkModulePkg/Universal/CpuIoDxe/CpuIoDxe.inf
1094  UefiCpuPkg/CpuIo2Dxe/CpuIo2Dxe.inf
1095
1096  MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.inf
1097  MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf  {
1098    <LibraryClasses>
1099!if $(TARGET) != RELEASE
1100      DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
1101!endif
1102  }
1103
1104  MdeModulePkg/Universal/ReportStatusCodeRouter/Smm/ReportStatusCodeRouterSmm.inf
1105  MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf{
1106    <LibraryClasses>
1107!if $(SECURE_BOOT_ENABLE) == TRUE
1108      NULL|SecurityPkg/Library/DxeImageVerificationLib/DxeImageVerificationLib.inf
1109!endif
1110!if $(USER_IDENTIFICATION_ENABLE)
1111      NULL|SecurityPkg/Library/DxeDeferImageLoadLib/DxeDeferImageLoadLib.inf
1112!endif
1113!if $(TPM_ENABLED) == TRUE
1114      NULL|SecurityPkg/Library/DxeTpmMeasureBootLib/DxeTpmMeasureBootLib.inf
1115!endif
1116!if $(FTPM_ENABLE) == TRUE
1117      NULL|SecurityPkg/Library/DxeTpm2MeasureBootLib/DxeTpm2MeasureBootLib.inf
1118!endif
1119  }
1120  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/MpCpu.inf
1121  $(PLATFORM_PACKAGE)/Metronome/Metronome.inf
1122
1123  IntelFrameworkModulePkg/Universal/BdsDxe/BdsDxe.inf{
1124    <LibraryClasses>
1125      OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf
1126      IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf
1127      BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf
1128      PlatformBdsLib|$(PLATFORM_PACKAGE)/Library/PlatformBdsLib/PlatformBdsLib.inf
1129      DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
1130      PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
1131      SerialPortLib|$(PLATFORM_PACKAGE)/Library/SerialPortLib/SerialPortLib.inf
1132    !if $(FTPM_ENABLE) == TRUE
1133      Tpm2DeviceLib|Vlv2TbltDevicePkg/Library/Tpm2DeviceLibSeCDxe/Tpm2DeviceLibSeC.inf
1134    !else
1135      TrEEPhysicalPresenceLib|$(PLATFORM_PACKAGE)/Library/DxeTrEEPhysicalPresenceLibNull/DxeTrEEPhysicalPresenceLibNull.inf
1136    !endif
1137  }
1138
1139  $(PLATFORM_PACKAGE)/UiApp/UiApp.inf
1140
1141  MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf
1142  MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf
1143  MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteDxe.inf
1144  MdeModulePkg/Universal/Variable/RuntimeDxe/VariableSmmRuntimeDxe.inf
1145  MdeModulePkg/Universal/Variable/RuntimeDxe/VariableSmm.inf {
1146    <LibraryClasses>
1147      NULL|MdeModulePkg/Library/VarCheckUefiLib/VarCheckUefiLib.inf
1148      SerialPortLib|$(PLATFORM_PACKAGE)/Library/SerialPortLib/SerialPortLib.inf
1149  }
1150  $(PLATFORM_PACKAGE)/FvbRuntimeDxe/FvbSmm.inf
1151  MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmm.inf
1152  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PchSpiSmm.inf
1153!if $(SECURE_BOOT_ENABLE) == TRUE
1154  SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConfigDxe.inf {
1155    <LibraryClasses>
1156      PlatformSecureLib|SecurityPkg/Library/PlatformSecureLibNull/PlatformSecureLibNull.inf
1157    <BuildOptions>
1158      #
1159      # Specify GUID gEfiIfrBootMaintenanceGuid, to install Secure Boot Configuration menu
1160      # into Boot Maintenance Manager menu
1161      #
1162      *_*_*_VFR_FLAGS   = -g b2dedc91-d59f-48d2-898a-12490c74a4e0
1163  }
1164!endif
1165   MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf {
1166    <LibraryClasses>
1167      FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf
1168  }
1169
1170  MdeModulePkg/Universal/MonotonicCounterRuntimeDxe/MonotonicCounterRuntimeDxe.inf
1171  PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcatRealTimeClockRuntimeDxe.inf
1172  MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf
1173
1174  $(PLATFORM_PACKAGE)/FvbRuntimeDxe/FvbRuntimeDxe.inf
1175
1176  $(PLATFORM_PACKAGE)/PlatformSetupDxe/PlatformSetupDxe.inf
1177
1178!if $(DATAHUB_ENABLE) == TRUE
1179  IntelFrameworkModulePkg/Universal/DataHubDxe/DataHubDxe.inf {
1180    <PcdsFixedAtBuild>
1181      gEfiMdePkgTokenSpaceGuid.PcdMaximumLinkedListLength|0
1182  }
1183!endif
1184  IntelFrameworkModulePkg/Universal/StatusCode/DatahubStatusCodeHandlerDxe/DatahubStatusCodeHandlerDxe.inf
1185  MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf
1186  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PchS3SupportDxe.inf
1187  !if $(USE_HPET_TIMER) == TRUE
1188    PcAtChipsetPkg/HpetTimerDxe/HpetTimerDxe.inf
1189  !else
1190  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/SmartTimer.inf
1191  !endif
1192  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/SmmControl.inf
1193
1194  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PchSmbusDxe.inf
1195  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/IntelPchLegacyInterrupt.inf
1196  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PchReset.inf
1197  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PchInitDxe.inf{
1198    <PcdsPatchableInModule>
1199        gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0xF0000043
1200  }
1201  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PchSmiDispatcher.inf
1202
1203!if $(PCIESC_ENABLE) == TRUE
1204  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PchPcieSmm.inf
1205!endif
1206  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PchSpiRuntime.inf
1207  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PchPolicyInitDxe.inf
1208  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PchBiosWriteProtect.inf
1209  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/SmmAccess.inf
1210  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PciHostBridge.inf
1211  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/VlvInitDxe.inf
1212
1213  IntelFrameworkModulePkg/Universal/LegacyRegionDxe/LegacyRegionDxe.inf
1214
1215  PerformancePkg/Dp_App/Dp.inf {
1216  <LibraryClasses>
1217  !if $(PERFORMANCE_ENABLE) == TRUE
1218    PerformanceLib|MdeModulePkg/Library/DxePerformanceLib/DxePerformanceLib.inf
1219    TimerLib|$(PLATFORM_PACKAGE)/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf
1220  !endif
1221  }
1222
1223  Vlv2TbltDevicePkg/VlvPlatformInitDxe/VlvPlatformInitDxe.inf{
1224    <LibraryClasses>
1225!if $(TARGET) != RELEASE
1226      DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
1227!endif
1228      PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
1229  }
1230
1231  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/Dptf.inf
1232  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PnpDxe.inf
1233
1234!if $(SEC_ENABLE) == TRUE
1235  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/HeciDrv.inf {
1236!if $(SEC_DEBUG_INFO_ENABLE) == TRUE
1237    <BuildOptions>
1238      *_*_X64_CC_FLAGS      = /DSEC_DEBUG_INFO=1
1239!else
1240    <BuildOptions>
1241      *_*_X64_CC_FLAGS      = /DSEC_DEBUG_INFO=0
1242!endif
1243  }
1244
1245  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/SeCPolicyInitDxe.inf
1246!endif
1247
1248!if $(FTPM_ENABLE) == TRUE
1249  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/Tpm2DeviceSeCDxe.inf
1250  SecurityPkg/Tcg/MemoryOverwriteControl/TcgMor.inf
1251  SecurityPkg/Tcg/TrEEDxe/TrEEDxe.inf{
1252    <LibraryClasses>
1253      NULL|SecurityPkg/Library/HashInstanceLibSha1/HashInstanceLibSha1.inf
1254      NULL|SecurityPkg/Library/HashInstanceLibSha256/HashInstanceLibSha256.inf
1255      PcdLib|MdePkg/Library\DxePcdLib/DxePcdLib.inf
1256      Tpm2DeviceLib|Vlv2TbltDevicePkg/Library/Tpm2DeviceLibSeCDxe/Tpm2DeviceLibSeC.inf
1257  }
1258  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/FtpmSmm.inf
1259!endif
1260!if $(TPM_ENABLED) == TRUE
1261  SecurityPkg/Tcg/TrEEConfig/TrEEConfigPei.inf {
1262    <LibraryClasses>
1263      PcdLib|MdePkg/Library/PeiPcdLib/PeiPcdLib.inf
1264  }
1265
1266  SecurityPkg/Tcg/TcgConfigDxe/TcgConfigDxe.inf {
1267    <LibraryClasses>
1268      PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
1269    <BuildOptions>
1270      #
1271      # specify GUID gEfiIfrNotInTPVPageGuid, this page will not
1272      # be showed in TPV page.
1273      #
1274      *_*_*_VFR_FLAGS   = -g e58809f8-fbc1-48e2-883a-a30fdc4b441e
1275  }
1276
1277  SecurityPkg/Tcg/TcgDxe/TcgDxe.inf {
1278    <LibraryClasses>
1279      PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
1280  }
1281  SecurityPkg/Tcg/TcgSmm/TcgSmm.inf
1282!endif
1283  #
1284  # EDK II Related Platform codes
1285  #
1286  $(PLATFORM_PACKAGE)/PlatformSmm/PlatformSmm.inf{
1287    <LibraryClasses>
1288    !if $(TARGET) != RELEASE
1289          DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
1290    !endif
1291          PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
1292  }
1293  $(PLATFORM_PACKAGE)/PlatformInfoDxe/PlatformInfoDxe.inf
1294  $(PLATFORM_PACKAGE)/PlatformCpuInfoDxe/PlatformCpuInfoDxe.inf
1295  $(PLATFORM_PACKAGE)/PlatformDxe/PlatformDxe.inf
1296
1297  $(PLATFORM_PACKAGE)/PciPlatform/PciPlatform.inf
1298  $(PLATFORM_PACKAGE)/SaveMemoryConfig/SaveMemoryConfig.inf
1299  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PlatformCpuPolicy.inf
1300  $(PLATFORM_PACKAGE)/PpmPolicy/PpmPolicy.inf
1301  $(PLATFORM_PACKAGE)/SmramSaveInfoHandlerSmm/SmramSaveInfoHandlerSmm.inf
1302!if $(GOP_DRIVER_ENABLE) == TRUE
1303  $(PLATFORM_PACKAGE)/PlatformGopPolicy/PlatformGopPolicy.inf
1304
1305!endif
1306
1307
1308  #
1309  # SMM
1310  #
1311  MdeModulePkg/Core/PiSmmCore/PiSmmIpl.inf
1312  MdeModulePkg/Core/PiSmmCore/PiSmmCore.inf
1313  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PiSmmCpuDxeSmm.inf
1314  UefiCpuPkg/CpuIo2Smm/CpuIo2Smm.inf
1315  MdeModulePkg/Universal/LockBox/SmmLockBox/SmmLockBox.inf
1316  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PiSmmCommunicationSmm.inf
1317  $(PLATFORM_PACKAGE)/SmmSwDispatch2OnSmmSwDispatchThunk/SmmSwDispatch2OnSmmSwDispatchThunk.inf
1318  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PowerManagement2.inf
1319  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/DigitalThermalSensor.inf
1320
1321  #
1322  # ACPI
1323  #
1324   MdeModulePkg/Universal/Acpi/BootScriptExecutorDxe/BootScriptExecutorDxe.inf {
1325    <PcdsPatchableInModule>
1326      gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0xF0000043
1327    <PcdsFixedAtBuild>
1328      gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x27
1329    <LibraryClasses>
1330      PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
1331  }
1332
1333  $(PLATFORM_PACKAGE)/BootScriptSaveDxe/BootScriptSaveDxe.inf
1334  IntelFrameworkModulePkg/Universal/Acpi/AcpiSupportDxe/AcpiSupportDxe.inf
1335  Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/AcpiTables/PowerManagementAcpiTables.inf
1336
1337  $(PLATFORM_RC_PACKAGE)/AcpiTablesPCAT/AcpiTables.inf
1338
1339  $(PLATFORM_PACKAGE)/AcpiPlatform/AcpiPlatform.inf
1340
1341  #
1342  # PCI
1343  #
1344  MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf
1345
1346
1347  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/ISPDxe.inf
1348
1349
1350#
1351# ISA
1352#
1353  $(PLATFORM_PACKAGE)/Wpce791/Wpce791.inf
1354  IntelFrameworkModulePkg/Bus/Isa/IsaBusDxe/IsaBusDxe.inf
1355  IntelFrameworkModulePkg/Bus/Isa/IsaIoDxe/IsaIoDxe.inf
1356  IntelFrameworkModulePkg/Bus/Isa/IsaSerialDxe/IsaSerialDxe.inf
1357  IntelFrameworkModulePkg/Bus/Isa/Ps2MouseDxe/Ps2MouseDxe.inf
1358  IntelFrameworkModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2keyboardDxe.inf
1359#
1360# SDIO
1361#
1362  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/MmcHost.inf
1363  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/MmcMediaDevice.inf
1364!if $(ACPI50_ENABLE) == TRUE
1365  MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTableDxe/FirmwarePerformanceDxe.inf {
1366    <LibraryClasses>
1367      TimerLib|$(PLATFORM_PACKAGE)/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf
1368  }
1369  MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTableSmm/FirmwarePerformanceSmm.inf {
1370    <LibraryClasses>
1371      TimerLib|$(PLATFORM_PACKAGE)/Library/IntelPchAcpiTimerLib/IntelPchAcpiTimerLib.inf
1372  }
1373!endif
1374
1375#
1376# IDE/SCSI/AHCI
1377#
1378  MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.inf
1379  IntelFrameworkModulePkg/Bus/Pci/IdeBusDxe/IdeBusDxe.inf
1380  MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf
1381  MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf
1382  MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf
1383!if $(SATA_ENABLE) == TRUE
1384  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/SataController.inf
1385!endif
1386  MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBusDxe.inf
1387!if $(SCSI_ENABLE) == TRUE
1388  MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf
1389  MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf
1390!endif
1391#
1392# Console
1393#
1394  MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf
1395  MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf
1396  MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.inf
1397  IntelFrameworkModulePkg/Universal/Console/VgaClassDxe/VgaClassDxe.inf
1398  MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf
1399  MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf
1400  MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf
1401  MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf
1402
1403  #
1404  # USB
1405  #
1406!if $(USB_ENABLE) == TRUE
1407  MdeModulePkg/Bus/Pci/EhciDxe/EhciDxe.inf
1408  MdeModulePkg/Bus/Pci/UhciDxe/UhciDxe.inf
1409  MdeModulePkg/Bus/Pci/XhciDxe/XhciDxe.inf
1410  MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf
1411  MdeModulePkg/Bus/Usb/UsbKbDxe/UsbKbDxe.inf
1412  MdeModulePkg/Bus/Usb/UsbMouseDxe/UsbMouseDxe.inf
1413  MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassStorageDxe.inf
1414
1415!endif
1416
1417  #
1418  #  ECP
1419  #
1420  EdkCompatibilityPkg/Compatibility/FrameworkHiiOnUefiHiiThunk/FrameworkHiiOnUefiHiiThunk.inf
1421  EdkCompatibilityPkg/Compatibility/LegacyRegion2OnLegacyRegionThunk/LegacyRegion2OnLegacyRegionThunk.inf
1422  EdkCompatibilityPkg/Compatibility/SmmBaseOnSmmBase2Thunk/SmmBaseOnSmmBase2Thunk.inf
1423  EdkCompatibilityPkg/Compatibility/SmmBaseHelper/SmmBaseHelper.inf
1424  EdkCompatibilityPkg/Compatibility/SmmAccess2OnSmmAccessThunk/SmmAccess2OnSmmAccessThunk.inf
1425  EdkCompatibilityPkg/Compatibility/SmmControl2OnSmmControlThunk/SmmControl2OnSmmControlThunk.inf
1426  EdkCompatibilityPkg/Compatibility/FrameworkSmmStatusCodeOnPiSmmStatusCodeThunk/FrameworkSmmStatusCodeOnPiSmmStatusCodeThunk.inf
1427  EdkCompatibilityPkg/Compatibility/FvOnFv2Thunk/FvOnFv2Thunk.inf
1428  #
1429  # SMBIOS
1430  #
1431  MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf
1432  $(PLATFORM_PACKAGE)/SmBiosMiscDxe/SmBiosMiscDxe.inf
1433
1434  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/SmbiosMemory.inf
1435  #
1436  # CPU/FW Microde
1437  #
1438  Vlv2MiscBinariesPkg/Microcode/MicrocodeUpdates.inf {
1439    <BuildOptions>
1440      *_*_*_GENFW_FLAGS = -a 0x800 -p 0xFF
1441  }
1442
1443
1444  PcAtChipsetPkg/8259InterruptControllerDxe/8259.inf
1445
1446
1447!if $(NETWORK_ENABLE) == TRUE
1448  !if $(NETWORK_ISCSI_ENABLE) == TRUE
1449    !if $(NETWORK_IP6_ENABLE) == TRUE
1450      NetworkPkg/IScsiDxe/IScsiDxe.inf
1451    !else
1452      MdeModulePkg/Universal/Network/IScsiDxe/IScsiDxe.inf
1453    !endif
1454  !endif
1455  !if $(NETWORK_VLAN_ENABLE) == TRUE
1456    MdeModulePkg/Universal/Network/VlanConfigDxe/VlanConfigDxe.inf
1457  !endif
1458  !if $(CSM_ENABLE) == TRUE
1459    IntelFrameworkModulePkg/Csm/BiosThunk/Snp16Dxe/Snp16Dxe.inf
1460  !endif
1461!endif
1462
1463!if $(NETWORK_ENABLE) == TRUE
1464  #
1465  # UEFI network modules
1466  #
1467    MdeModulePkg/Universal/Network/DpcDxe/DpcDxe.inf
1468    MdeModulePkg/Universal/Network/SnpDxe/SnpDxe.inf
1469
1470    MdeModulePkg/Universal/Network/MnpDxe/MnpDxe.inf
1471    MdeModulePkg/Universal/Network/ArpDxe/ArpDxe.inf
1472    MdeModulePkg/Universal/Network/Dhcp4Dxe/Dhcp4Dxe.inf
1473    MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Dxe.inf
1474    MdeModulePkg/Universal/Network/Mtftp4Dxe/Mtftp4Dxe.inf
1475    MdeModulePkg/Universal/Network/Tcp4Dxe/Tcp4Dxe.inf {
1476      <PcdsPatchableInModule>
1477      gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80000000
1478    }
1479    MdeModulePkg/Universal/Network/Udp4Dxe/Udp4Dxe.inf
1480    !if $(NETWORK_IP6_ENABLE) == TRUE
1481      NetworkPkg/Ip6Dxe/Ip6Dxe.inf
1482      NetworkPkg/Dhcp6Dxe/Dhcp6Dxe.inf
1483      NetworkPkg/IpSecDxe/IpSecDxe.inf
1484      NetworkPkg/TcpDxe/TcpDxe.inf
1485      NetworkPkg/Udp6Dxe/Udp6Dxe.inf
1486      NetworkPkg/Mtftp6Dxe/Mtftp6Dxe.inf
1487    !endif
1488    !if $(NETWORK_IP6_ENABLE) == TRUE
1489      NetworkPkg/UefiPxeBcDxe/UefiPxeBcDxe.inf
1490    !else
1491      MdeModulePkg/Universal/Network/UefiPxeBcDxe/UefiPxeBcDxe.inf
1492    !endif
1493!endif
1494
1495  Vlv2TbltDevicePkg/Application/FirmwareUpdate/FirmwareUpdate.inf
1496
1497[BuildOptions]
1498#
1499# Define Build Options both for EDK and EDKII drivers.
1500#
1501
1502#
1503# Define token for different Platform
1504#
1505!if $(MINNOW2_FSP_BUILD) == TRUE
1506  DEFINE MINNOW2_FSP_OPTION = /DMINNOW2_FSP_BUILD
1507!else
1508  DEFINE MINNOW2_FSP_OPTION =
1509!endif
1510
1511!if $(ENBDT_PF_BUILD) == TRUE
1512  DEFINE ENBDT_PF_ENABLE = /DENBDT_PF_ENABLE=1
1513!else
1514  DEFINE ENBDT_PF_ENABLE = /DENBDT_PF_ENABLE=0
1515!endif
1516
1517
1518!if $(CLKGEN_CONFIG_EXTRA_ENABLE) == TRUE
1519  DEFINE CLKGEN_CONFIG_EXTRA_BUILD_OPTION = /DCLKGEN_CONFIG_EXTRA=1
1520!else
1521  DEFINE CLKGEN_CONFIG_EXTRA_BUILD_OPTION =
1522!endif
1523
1524
1525
1526!if $(PCIESC_ENABLE) == TRUE
1527  DEFINE PCIESC_SUPPORT_BUILD_OPTION = /DPCIESC_SUPPORT=1
1528!else
1529  DEFINE PCIESC_SUPPORT_BUILD_OPTION =
1530!endif
1531!if $(SATA_ENABLE) == TRUE
1532  DEFINE SATA_SUPPORT_BUILD_OPTION = /DSATA_SUPPORT=1
1533!else
1534  DEFINE SATA_SUPPORT_BUILD_OPTION =
1535!endif
1536!if $(ENBDT_S3_SUPPORT) == TRUE
1537  DEFINE ENBDT_S3_SUPPORT_OPTIONS = /DNOCS_S3_SUPPORT
1538!else
1539  DEFINE ENBDT_S3_SUPPORT_OPTIONS =
1540!endif
1541
1542!if $(X64_CONFIG) == TRUE
1543  DEFINE X64_BUILD_ENABLE = /DX64_BUILD_ENABLE=1
1544!else
1545  DEFINE X64_BUILD_ENABLE =
1546!endif
1547
1548!if $(FTPM_ENABLE) == TRUE
1549  DEFINE DSC_FTPM_BUILD_OPTIONS = /DFTPM_ENABLE
1550!else
1551  DEFINE DSC_FTPM_BUILD_OPTIONS =
1552!endif
1553!if $(TPM_ENABLED) == TRUE
1554  DEFINE DSC_TPM_BUILD_OPTIONS = /DTPM_ENABLED
1555!else
1556  DEFINE DSC_TPM_BUILD_OPTIONS =
1557!endif
1558
1559
1560  DEFINE EDK_EDKII_DSC_FEATURE_BUILD_OPTIONS = $(MINNOW2_FSP_OPTION) $(MINNOW2_BUILD_OPTION) $(ENBDT_PF_ENABLE) $(EXTERNAL_VGA_BUILD_OPTION) $(PCIE_ENUM_WA_BUILD_OPTION) $(X0_WA_ENABLE_BUILD_OPTION) $(A0_WA_ENABLE_BUILD_OPTION) $(MICROCODE_FREE_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(SYSCTL_ID_BUILD_OPTION) $(CLKGEN_CONFIG_EXTRA_BUILD_OPTION) $(SYSCTL_X0_CONVERT_BOARD_OPTION) $(ENBDT_S3_SUPPORT_OPTIONS) $(SATA_SUPPORT_BUILD_OPTION) $(PCIESC_SUPPORT_BUILD_OPTION) $(DSC_FTPM_BUILD_OPTIONS) $(DSC_FTPM_ERROR_WR_BUILD_OPTIONS) $(DSC_TPM_BUILD_OPTIONS) $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS)
1561!if $(PERFORMANCE_ENABLE) == TRUE
1562  DEFINE PDB_BUILD_OPTION = /Zi
1563!endif
1564
1565!if $(SOURCE_DEBUG_ENABLE) == TRUE
1566  MSFT:*_*_X64_GENFW_FLAGS  = --keepexceptiontable
1567  GCC:*_*_X64_GENFW_FLAGS   = --keepexceptiontable
1568  INTEL:*_*_X64_GENFW_FLAGS = --keepexceptiontable
1569!if $(TARGET) == DEBUG
1570  DEFINE SOURCE_LEVEL_DEBUG_BUILD_OPTIONS = /Od /Oy-
1571!endif
1572!else
1573  DEFINE SOURCE_LEVEL_DEBUG_BUILD_OPTIONS =
1574
1575!endif
1576
1577[BuildOptions.Common.EDK]
1578
1579#
1580# Define token for different Platform
1581#
1582!if $(ENBDT_PF_BUILD) == TRUE
1583  DEFINE ENBDT_PF_ENABLE = /DENBDT_PF_ENABLE=1
1584!else
1585  DEFINE ENBDT_PF_ENABLE = /DENBDT_PF_ENABLE=0
1586!endif
1587
1588!if $(PERFORMANCE_ENABLE) == TRUE
1589  RELEASE_*_*_DLINK_FLAGS = /DEBUG
1590!endif
1591
1592!if $(S3_ENABLE) == TRUE
1593  DEFINE DSC_S3_BUILD_OPTIONS = /DEFI_S3_RESUME
1594!else
1595  DEFINE DSC_S3_BUILD_OPTIONS =
1596!endif
1597
1598!if $(ENBDT_S3_SUPPORT) == TRUE
1599  DEFINE ENBDT_S3_SUPPORT_OPTIONS = /DNOCS_S3_SUPPORT
1600!else
1601  DEFINE ENBDT_S3_SUPPORT_OPTIONS =
1602!endif
1603
1604!if $(X64_CONFIG) == TRUE
1605  DEFINE X64_BUILD_ENABLE = /DX64_BUILD_ENABLE=1
1606!else
1607  DEFINE X64_BUILD_ENABLE =
1608!endif
1609
1610
1611  DEFINE EDK_GLUE_LIB_DEBUG  =
1612  DEFINE DEBUG_BUILD_OPTIONS = /D EFI_DEBUG /D DEBUG_MODE=1  /GL- $(EDK_GLUE_LIB_DEBUG) /DEDKII_GLUE_DebugPrintErrorLevel=(EFI_D_ERROR)
1613  DEFINE EDK_DSC_FEATURE_BUILD_OPTIONS = $(DSC_S3_BUILD_OPTIONS) $(DSC_ACPI_BUILD_OPTIONS) $(DSC_SEC_BUILD_OPTIONS) $(DSC_FTPM_BUILD_OPTIONS) $(DSC_FTPM_ERROR_WR_BUILD_OPTIONS) $(DSC_TPM_BUILD_OPTIONS) $(SOFTSDV_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(HYBRID_BUILD_OPTIONS) $(COMPACT_BUILD_OPTIONS) $(VP_BUILD_OPTIONS) $(QT_BUILD_OPTIONS) $(DSC_BYTI_SECURE_BOOT_BUILD_OPTIONS) /D$(PROJECT_SC_CHIPSET)
1614
1615  DEFINE EDK_DSC_OTHER_BUILD_OPTIONS = $(EDK_EDKII_DSC_FEATURE_BUILD_OPTIONS) $(SV_BUILD_OPTIONS) $(INTEL_FASTBOOT_BUILD_OPTION)
1616  DEFINE EDK_DSC_GLOBAL_BUILD_OPTIONS = $(ENBDT_PF_ENABLE) $(EDK_DSC_FEATURE_BUILD_OPTIONS) $(EDK_DSC_OTHER_BUILD_OPTIONS) /D EFI_SPECIFICATION_VERSION=0x00020000  /D PI_SPECIFICATION_VERSION=0x00000009  /D TIANO_RELEASE_VERSION=0x00080006 /D SUPPORT_DEPRECATED_PCI_CFG_PPI /D CSM_SMMENTRY_PORT8DATA8 /D EDKII_GLUE_PciExpressBaseAddress=0x$(PLATFORM_PCIEXPRESS_BASE) /D MAX_VARIABLE_SIZE=0x2000 /D EFI_FIRMWARE_VENDOR="L/"INTEL/"" /D EFI_BUILD_VERSION="L/"EDKII/"" /DEFI_PEI_REPORT_STATUS_CODE_ON $(ENBDT_S3_SUPPORT_OPTIONS)
1617
1618  *_*_IA32_ASM_FLAGS         = /DEFI32 /D EDKII_GLUE_PciExpressBaseAddress=$(PLATFORM_PCIEXPRESS_BASE)h /DNOCS_S3_SUPPORT
1619  DEBUG_*_IA32_CC_FLAGS      = /D EFI32 $(EDK_DSC_GLOBAL_BUILD_OPTIONS) $(DEBUG_BUILD_OPTIONS)
1620  RELEASE_*_IA32_CC_FLAGS    = /D EFI32 $(EDK_DSC_GLOBAL_BUILD_OPTIONS)
1621  DEBUG_*_IA32_VFRPP_FLAGS   = /D EFI32 $(EDK_DSC_GLOBAL_BUILD_OPTIONS) $(DEBUG_BUILD_OPTIONS)
1622  RELEASE_*_IA32_VFRPP_FLAGS = /D EFI32 $(EDK_DSC_GLOBAL_BUILD_OPTIONS)
1623  DEBUG_*_IA32_APP_FLAGS     = /D EFI32 $(EDK_DSC_GLOBAL_BUILD_OPTIONS) $(DEBUG_BUILD_OPTIONS)
1624  RELEASE_*_IA32_APP_FLAGS   = /D EFI32 $(EDK_DSC_GLOBAL_BUILD_OPTIONS)
1625  DEBUG_*_IA32_PP_FLAGS      = /D EFI32 $(EDK_DSC_GLOBAL_BUILD_OPTIONS) $(DEBUG_BUILD_OPTIONS)
1626  RELEASE_*_IA32_PP_FLAGS    = /D EFI32 $(EDK_DSC_GLOBAL_BUILD_OPTIONS)
1627  *_*_IA32_ASLPP_FLAGS       = /D EDKII_GLUE_PciExpressBaseAddress=0x$(PLATFORM_PCIEXPRESS_BASE)
1628  *_*_IA32_ASLCC_FLAGS       = /D EDKII_GLUE_PciExpressBaseAddress=0x$(PLATFORM_PCIEXPRESS_BASE)
1629  *_*_IA32_ASM16_FLAGS       = /D EDKII_GLUE_PciExpressBaseAddress=$(PLATFORM_PCIEXPRESS_BASE)h
1630
1631  *_*_X64_ASM_FLAGS          = /DEFIX64 /D EDKII_GLUE_PciExpressBaseAddress=$(PLATFORM_PCIEXPRESS_BASE)h /DNOCS_S3_SUPPORT
1632  DEBUG_*_X64_CC_FLAGS       = /D EFIX64 $(EDK_DSC_GLOBAL_BUILD_OPTIONS) $(DEBUG_BUILD_OPTIONS)
1633  RELEASE_*_X64_CC_FLAGS     = /D EFIX64 $(EDK_DSC_GLOBAL_BUILD_OPTIONS)
1634  DEBUG_*_X64_VFRPP_FLAGS    = /D EFIX64 $(EDK_DSC_GLOBAL_BUILD_OPTIONS) $(DEBUG_BUILD_OPTIONS)
1635  RELEASE_*_X64_VFRPP_FLAGS  = /D EFIX64 $(EDK_DSC_GLOBAL_BUILD_OPTIONS)
1636  DEBUG_*_X64_APP_FLAGS      = /D EFIX64 $(EDK_DSC_GLOBAL_BUILD_OPTIONS) $(DEBUG_BUILD_OPTIONS)
1637  RELEASE_*_X64_APP_FLAGS    = /D EFIX64 $(EDK_DSC_GLOBAL_BUILD_OPTIONS)
1638  DEBUG_*_X64_PP_FLAGS       = /D EFIX64 $(EDK_DSC_GLOBAL_BUILD_OPTIONS) $(DEBUG_BUILD_OPTIONS)
1639  RELEASE_*_X64_PP_FLAGS     = /D EFIX64 $(EDK_DSC_GLOBAL_BUILD_OPTIONS)
1640  *_*_X64_ASLPP_FLAGS        = /D EDKII_GLUE_PciExpressBaseAddress=0x$(PLATFORM_PCIEXPRESS_BASE)
1641  *_*_X64_ASLCC_FLAGS        = /D EDKII_GLUE_PciExpressBaseAddress=0x$(PLATFORM_PCIEXPRESS_BASE)
1642  *_*_X64_ASM16_FLAGS        = /D EDKII_GLUE_PciExpressBaseAddress=$(PLATFORM_PCIEXPRESS_BASE)h
1643 # *_*_*_BUILD_FLAGS = -s
1644  *_*_*_VFR_FLAGS   = -c
1645  *_*_*_BUILD_FLAGS = -c
1646
1647[BuildOptions.Common.EDKII]
1648  *_*_IA32_ASM_FLAGS     = $(VP_BUILD_OPTIONS) /D EDKII_GLUE_PciExpressBaseAddress=$(PLATFORM_PCIEXPRESS_BASE)h /DNOCS_S3_SUPPORT
1649
1650  *_*_IA32_CC_FLAGS      = $(EDK_EDKII_DSC_FEATURE_BUILD_OPTIONS)
1651  *_*_IA32_VFRPP_FLAGS   = $(EDK_EDKII_DSC_FEATURE_BUILD_OPTIONS)
1652  *_*_IA32_APP_FLAGS     = $(EDK_EDKII_DSC_FEATURE_BUILD_OPTIONS)
1653  *_*_IA32_PP_FLAGS      = $(EDK_EDKII_DSC_FEATURE_BUILD_OPTIONS)
1654  *_*_IA32_ASLPP_FLAGS   = $(EDK_EDKII_DSC_FEATURE_BUILD_OPTIONS)
1655
1656  *_*_X64_CC_FLAGS       = $(EDK_EDKII_DSC_FEATURE_BUILD_OPTIONS) $(SOURCE_LEVEL_DEBUG_BUILD_OPTIONS)
1657  *_*_X64_VFRPP_FLAGS    = $(EDK_EDKII_DSC_FEATURE_BUILD_OPTIONS)
1658  *_*_X64_APP_FLAGS      = $(EDK_EDKII_DSC_FEATURE_BUILD_OPTIONS)
1659  *_*_X64_PP_FLAGS       = $(EDK_EDKII_DSC_FEATURE_BUILD_OPTIONS)
1660  *_*_X64_ASLPP_FLAGS    = $(EDK_EDKII_DSC_FEATURE_BUILD_OPTIONS)
1661
1662
1663[Components.IA32]
1664 $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/SysFwUpdateCapsuleDxe.inf
1665
1666  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/I2cBus.inf {
1667    <PcdsPatchableInModule>
1668      gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0xF0000043
1669  }
1670
1671  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/I2cHost.inf {
1672    <PcdsPatchableInModule>
1673      gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0xF0000043
1674  }
1675  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/I2cPortA0Pio.inf {
1676    <PcdsPatchableInModule>
1677      gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x00000043
1678  }
1679
1680  $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/I2cMmioDeviceDxe.inf {
1681    <PcdsPatchableInModule>
1682      gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x00000043
1683  }
1684