]> git.proxmox.com Git - mirror_edk2.git/blob - OvmfPkg/OvmfPkgIa32X64.dsc
OvmfPkg: Add custom SecureBootConfigDxe that doesn't reset
[mirror_edk2.git] / OvmfPkg / OvmfPkgIa32X64.dsc
1 ## @file
2 # EFI/Framework Open Virtual Machine Firmware (OVMF) platform
3 #
4 # Copyright (c) 2006 - 2012, Intel Corporation. All rights reserved.<BR>
5 #
6 # This program and the accompanying materials
7 # are licensed and made available under the terms and conditions of the BSD License
8 # which accompanies this distribution. 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 # Defines Section - statements that will be processed to create a Makefile.
19 #
20 ################################################################################
21 [Defines]
22 PLATFORM_NAME = Ovmf
23 PLATFORM_GUID = 5a9e7754-d81b-49ea-85ad-69eaa7b1539b
24 PLATFORM_VERSION = 0.1
25 DSC_SPECIFICATION = 0x00010005
26 OUTPUT_DIRECTORY = Build/Ovmf3264
27 SUPPORTED_ARCHITECTURES = IA32|X64
28 BUILD_TARGETS = DEBUG|RELEASE
29 SKUID_IDENTIFIER = DEFAULT
30 FLASH_DEFINITION = OvmfPkg/OvmfPkgIa32X64.fdf
31
32 #
33 # Defines for default states. These can be changed on the command line.
34 # -D FLAG=VALUE
35 #
36 DEFINE SECURE_BOOT_ENABLE = FALSE
37
38 [BuildOptions]
39 GCC:*_UNIXGCC_*_CC_FLAGS = -DMDEPKG_NDEBUG
40 GCC:RELEASE_*_*_CC_FLAGS = -DMDEPKG_NDEBUG
41 INTEL:RELEASE_*_*_CC_FLAGS = /D MDEPKG_NDEBUG
42 MSFT:RELEASE_*_*_CC_FLAGS = /D MDEPKG_NDEBUG
43 GCC:*_*_*_CC_FLAGS = -mno-mmx -mno-sse
44
45 ################################################################################
46 #
47 # SKU Identification section - list of all SKU IDs supported by this Platform.
48 #
49 ################################################################################
50 [SkuIds]
51 0|DEFAULT
52
53 ################################################################################
54 #
55 # Library Class section - list of all Library Classes needed by this Platform.
56 #
57 ################################################################################
58 [LibraryClasses]
59 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
60 TimerLib|OvmfPkg/Library/AcpiTimerLib/AcpiTimerLib.inf
61 PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
62 BaseMemoryLib|MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf
63 BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
64 SynchronizationLib|MdePkg/Library/BaseSynchronizationLib/BaseSynchronizationLib.inf
65 CpuLib|MdePkg/Library/BaseCpuLib/BaseCpuLib.inf
66 PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf
67 PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf
68 CacheMaintenanceLib|MdePkg/Library/BaseCacheMaintenanceLib/BaseCacheMaintenanceLib.inf
69 UefiDecompressLib|MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLib.inf
70 UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf
71 HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf
72 GenericBdsLib|IntelFrameworkModulePkg/Library/GenericBdsLib/GenericBdsLib.inf
73 CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibNull/DxeCapsuleLibNull.inf
74 DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf
75 DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf
76 PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
77 PciCf8Lib|MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf
78 PciLib|MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf
79 IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
80 OemHookStatusCodeLib|MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf
81 SerialPortLib|PcAtChipsetPkg/Library/SerialIoLib/SerialIoLib.inf
82 MtrrLib|UefiCpuPkg/Library/MtrrLib/MtrrLib.inf
83 UefiLib|MdePkg/Library/UefiLib/UefiLib.inf
84 UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
85 UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
86 UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
87 UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf
88 DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
89 NvVarsFileLib|OvmfPkg/Library/NvVarsFileLib/NvVarsFileLib.inf
90 FileHandleLib|ShellPkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf
91 UefiCpuLib|UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.inf
92 SecurityManagementLib|MdeModulePkg/Library/DxeSecurityManagementLib/DxeSecurityManagementLib.inf
93 NetLib|MdeModulePkg/Library/DxeNetLib/DxeNetLib.inf
94 IpIoLib|MdeModulePkg/Library/DxeIpIoLib/DxeIpIoLib.inf
95 UdpIoLib|MdeModulePkg/Library/DxeUdpIoLib/DxeUdpIoLib.inf
96 DpcLib|MdeModulePkg/Library/DxeDpcLib/DxeDpcLib.inf
97 UefiUsbLib|MdePkg/Library/UefiUsbLib/UefiUsbLib.inf
98 SerializeVariablesLib|OvmfPkg/Library/SerializeVariablesLib/SerializeVariablesLib.inf
99 QemuFwCfgLib|OvmfPkg/Library/QemuFwCfgLib/QemuFwCfgLib.inf
100 LockBoxLib|MdeModulePkg/Library/LockBoxNullLib/LockBoxNullLib.inf
101
102 !ifdef $(SOURCE_DEBUG_ENABLE)
103 PeCoffExtraActionLib|SourceLevelDebugPkg/Library/PeCoffExtraActionLibDebug/PeCoffExtraActionLibDebug.inf
104 DebugCommunicationLib|SourceLevelDebugPkg/Library/DebugCommunicationLibSerialPort/DebugCommunicationLibSerialPort.inf
105 !else
106 PeCoffExtraActionLib|MdePkg/Library/BasePeCoffExtraActionLibNull/BasePeCoffExtraActionLibNull.inf
107 DebugAgentLib|MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf
108 !endif
109
110 ResetSystemLib|OvmfPkg/Library/ResetSystemLib/ResetSystemLib.inf
111 LocalApicLib|UefiCpuPkg/Library/BaseXApicLib/BaseXApicLib.inf
112 DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf
113 CpuExceptionHandlerLib|MdeModulePkg/Library/CpuExceptionHandlerLibNull/CpuExceptionHandlerLibNull.inf
114
115 !if $(SECURE_BOOT_ENABLE) == TRUE
116 PlatformSecureLib|OvmfPkg/Library/PlatformSecureLib/PlatformSecureLib.inf
117 IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf
118 OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf
119 !endif
120
121 [LibraryClasses.common]
122 !if $(SECURE_BOOT_ENABLE) == TRUE
123 BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf
124 !endif
125
126 [LibraryClasses.common.SEC]
127 !ifdef $(DEBUG_ON_SERIAL_PORT)
128 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
129 !else
130 DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf
131 !endif
132 ReportStatusCodeLib|MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf
133 ExtractGuidedSectionLib|MdePkg/Library/BaseExtractGuidedSectionLib/BaseExtractGuidedSectionLib.inf
134 !ifdef $(SOURCE_DEBUG_ENABLE)
135 DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/SecPeiDebugAgentLib.inf
136 !endif
137 HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
138 PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf
139 PeiServicesTablePointerLib|MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf
140 MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
141
142 [LibraryClasses.common.PEI_CORE]
143 HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
144 PeiServicesTablePointerLib|MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf
145 PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf
146 MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
147 PeiCoreEntryPoint|MdePkg/Library/PeiCoreEntryPoint/PeiCoreEntryPoint.inf
148 ReportStatusCodeLib|MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf
149 OemHookStatusCodeLib|MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf
150 PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
151 !ifdef $(DEBUG_ON_SERIAL_PORT)
152 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
153 !else
154 DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf
155 !endif
156 PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf
157
158 [LibraryClasses.common.PEIM]
159 HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
160 PeiServicesTablePointerLib|MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf
161 PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf
162 MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
163 PeimEntryPoint|MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf
164 ReportStatusCodeLib|MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf
165 OemHookStatusCodeLib|MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf
166 PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
167 !ifdef $(DEBUG_ON_SERIAL_PORT)
168 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
169 !else
170 DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf
171 !endif
172 PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf
173 PeiResourcePublicationLib|MdePkg/Library/PeiResourcePublicationLib/PeiResourcePublicationLib.inf
174 ExtractGuidedSectionLib|MdePkg/Library/PeiExtractGuidedSectionLib/PeiExtractGuidedSectionLib.inf
175 !ifdef $(SOURCE_DEBUG_ENABLE)
176 DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/SecPeiDebugAgentLib.inf
177 !endif
178
179 [LibraryClasses.common.DXE_CORE]
180 HobLib|MdePkg/Library/DxeCoreHobLib/DxeCoreHobLib.inf
181 DxeCoreEntryPoint|MdePkg/Library/DxeCoreEntryPoint/DxeCoreEntryPoint.inf
182 MemoryAllocationLib|MdeModulePkg/Library/DxeCoreMemoryAllocationLib/DxeCoreMemoryAllocationLib.inf
183 ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf
184 !ifdef $(DEBUG_ON_SERIAL_PORT)
185 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
186 !else
187 DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf
188 !endif
189 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
190 ExtractGuidedSectionLib|MdePkg/Library/DxeExtractGuidedSectionLib/DxeExtractGuidedSectionLib.inf
191 !ifdef $(SOURCE_DEBUG_ENABLE)
192 DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/DxeDebugAgentLib.inf
193 !endif
194
195 [LibraryClasses.common.DXE_RUNTIME_DRIVER]
196 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
197 DxeCoreEntryPoint|MdePkg/Library/DxeCoreEntryPoint/DxeCoreEntryPoint.inf
198 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
199 ReportStatusCodeLib|MdeModulePkg/Library/RuntimeDxeReportStatusCodeLib/RuntimeDxeReportStatusCodeLib.inf
200 !ifdef $(DEBUG_ON_SERIAL_PORT)
201 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
202 !else
203 DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf
204 !endif
205 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
206 UefiRuntimeLib|MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf
207 !if $(SECURE_BOOT_ENABLE) == TRUE
208 BaseCryptLib|CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf
209 !endif
210
211 [LibraryClasses.common.UEFI_DRIVER]
212 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
213 DxeCoreEntryPoint|MdePkg/Library/DxeCoreEntryPoint/DxeCoreEntryPoint.inf
214 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
215 ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf
216 !ifdef $(DEBUG_ON_SERIAL_PORT)
217 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
218 !else
219 DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf
220 !endif
221 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
222 UefiScsiLib|MdePkg/Library/UefiScsiLib/UefiScsiLib.inf
223
224 [LibraryClasses.common.DXE_DRIVER]
225 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
226 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
227 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
228 ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf
229 UefiScsiLib|MdePkg/Library/UefiScsiLib/UefiScsiLib.inf
230 !ifdef $(DEBUG_ON_SERIAL_PORT)
231 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
232 !else
233 DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf
234 !endif
235 NetLib|MdeModulePkg/Library/DxeNetLib/DxeNetLib.inf
236 IpIoLib|MdeModulePkg/Library/DxeIpIoLib/DxeIpIoLib.inf
237 UdpIoLib|MdeModulePkg/Library/DxeUdpIoLib/DxeUdpIoLib.inf
238 DpcLib|MdeModulePkg/Library/DxeDpcLib/DxeDpcLib.inf
239 PlatformBdsLib|OvmfPkg/Library/PlatformBdsLib/PlatformBdsLib.inf
240
241 [LibraryClasses.common.UEFI_APPLICATION]
242 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
243 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
244 !ifdef $(DEBUG_ON_SERIAL_PORT)
245 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
246 !else
247 DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf
248 !endif
249
250 ################################################################################
251 #
252 # Pcd Section - list of all EDK II PCD Entries defined by this Platform.
253 #
254 ################################################################################
255 [PcdsFeatureFlag]
256 gEfiMdeModulePkgTokenSpaceGuid.PcdStatusCodeUseSerial|FALSE
257 gEfiMdeModulePkgTokenSpaceGuid.PcdStatusCodeUseMemory|TRUE
258 gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSupportUefiDecompress|FALSE
259 gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSwitchToLongMode|TRUE
260 gEfiMdeModulePkgTokenSpaceGuid.PcdConOutGopSupport|TRUE
261 gEfiMdeModulePkgTokenSpaceGuid.PcdConOutUgaSupport|FALSE
262 !if $(SECURE_BOOT_ENABLE) == TRUE
263 gUefiOvmfPkgTokenSpaceGuid.PcdSecureBootEnable|TRUE
264 !endif
265
266 [PcdsFixedAtBuild]
267 gEfiMdeModulePkgTokenSpaceGuid.PcdStatusCodeMemorySize|1
268 gEfiMdeModulePkgTokenSpaceGuid.PcdResetOnMemoryTypeInformationChange|FALSE
269 gEfiMdePkgTokenSpaceGuid.PcdMaximumGuidedExtractHandler|0x10
270 gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreMaxFvSupported|6
271 gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreMaxPeimPerFv|32
272 !if $(SECURE_BOOT_ENABLE) == TRUE
273 gEfiMdeModulePkgTokenSpaceGuid.PcdMaxVariableSize|0x10000
274 !else
275 gEfiMdeModulePkgTokenSpaceGuid.PcdMaxVariableSize|0x400
276 !endif
277 gEfiMdeModulePkgTokenSpaceGuid.PcdMaxHardwareErrorVariableSize|0x8000
278 gEfiMdeModulePkgTokenSpaceGuid.PcdVariableStoreSize|0xc000
279 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableSize|0xc000
280 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingSize|0x2000
281 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareSize|0x10000
282
283 gEfiMdeModulePkgTokenSpaceGuid.PcdVpdBaseAddress|0x0
284
285 gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x07
286 gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x8000004F
287 !ifdef $(SOURCE_DEBUG_ENABLE)
288 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x17
289 !else
290 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x2F
291 !endif
292
293 !ifdef $(SOURCE_DEBUG_ENABLE)
294 gEfiSourceLevelDebugPkgTokenSpaceGuid.PcdDebugLoadImageMethod|0x2
295 !endif
296
297 !if $(BUILD_NEW_SHELL)
298 gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdShellFile|{ 0x83, 0xA5, 0x04, 0x7C, 0x3E, 0x9E, 0x1C, 0x4F, 0xAD, 0x65, 0xE0, 0x52, 0x68, 0xD0, 0xB4, 0xD1 }
299 !else
300 !if $(USE_NEW_SHELL)
301 gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdShellFile|{ 0x83, 0xA5, 0x04, 0x7C, 0x3E, 0x9E, 0x1C, 0x4F, 0xAD, 0x65, 0xE0, 0x52, 0x68, 0xD0, 0xB4, 0xD1 }
302 !endif
303 !endif
304
305 # IRQs 5, 9, 10, 11 are level-triggered
306 gPcAtChipsetPkgTokenSpaceGuid.Pcd8259LegacyModeEdgeLevel|0x0E20
307
308 [PcdsFixedAtBuild.X64]
309 !if $(SECURE_BOOT_ENABLE) == TRUE
310 # override the default values from SecurityPkg to ensure images from all sources are verified in secure boot
311 gEfiSecurityPkgTokenSpaceGuid.PcdOptionRomImageVerificationPolicy|0x05
312 gEfiSecurityPkgTokenSpaceGuid.PcdFixedMediaImageVerificationPolicy|0x05
313 gEfiSecurityPkgTokenSpaceGuid.PcdRemovableMediaImageVerificationPolicy|0x05
314 !endif
315
316 ################################################################################
317 #
318 # Pcd Dynamic Section - list of all EDK II PCD Entries defined by this Platform
319 #
320 ################################################################################
321
322 [PcdsDynamicDefault]
323 gEfiMdeModulePkgTokenSpaceGuid.PcdEmuVariableNvStoreReserved|0
324 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase64|0
325 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase|0
326 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase|0
327
328
329 ################################################################################
330 #
331 # Components Section - list of all EDK II Modules needed by this Platform.
332 #
333 ################################################################################
334 [Components.IA32]
335 #
336 # SEC Phase modules
337 #
338 OvmfPkg/Sec/SecMain.inf {
339 <LibraryClasses>
340 NULL|IntelFrameworkModulePkg/Library/LzmaCustomDecompressLib/LzmaCustomDecompressLib.inf
341 }
342
343 #
344 # PEI Phase modules
345 #
346 MdeModulePkg/Core/Pei/PeiMain.inf
347 MdeModulePkg/Universal/PCD/Pei/Pcd.inf {
348 <LibraryClasses>
349 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
350 }
351 IntelFrameworkModulePkg/Universal/StatusCode/Pei/StatusCodePei.inf
352 MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf
353
354 OvmfPkg/PlatformPei/PlatformPei.inf {
355 <LibraryClasses>
356 PcdLib|MdePkg/Library/PeiPcdLib/PeiPcdLib.inf
357 }
358
359 [Components.X64]
360 #
361 # DXE Phase modules
362 #
363 MdeModulePkg/Core/Dxe/DxeMain.inf {
364 <LibraryClasses>
365 NULL|IntelFrameworkModulePkg/Library/LzmaCustomDecompressLib/LzmaCustomDecompressLib.inf
366 }
367
368 IntelFrameworkModulePkg/Universal/StatusCode/RuntimeDxe/StatusCodeRuntimeDxe.inf
369 MdeModulePkg/Universal/PCD/Dxe/Pcd.inf {
370 <LibraryClasses>
371 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
372 }
373
374 MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf
375
376 !if $(SECURE_BOOT_ENABLE) == TRUE
377 MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf {
378 <LibraryClasses>
379 NULL|SecurityPkg/Library/DxeImageVerificationLib/DxeImageVerificationLib.inf
380 }
381 !else
382 MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf
383 !endif
384
385 MdeModulePkg/Universal/EbcDxe/EbcDxe.inf
386 PcAtChipsetPkg/8259InterruptControllerDxe/8259.inf
387 UefiCpuPkg/CpuIo2Dxe/CpuIo2Dxe.inf
388 UefiCpuPkg/CpuDxe/CpuDxe.inf
389 PcAtChipsetPkg/8254TimerDxe/8254Timer.inf
390 PcAtChipsetPkg/PciHostBridgeDxe/PciHostBridgeDxe.inf
391 MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf
392 PcAtChipsetPkg/KbcResetDxe/Reset.inf
393 MdeModulePkg/Universal/Metronome/Metronome.inf {
394 <LibraryClasses>
395 TimerLib|OvmfPkg/Library/AcpiTimerLib/AcpiTimerLib.inf
396 }
397
398 PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcatRealTimeClockRuntimeDxe.inf {
399 <LibraryClasses>
400 TimerLib|OvmfPkg/Library/AcpiTimerLib/AcpiTimerLib.inf
401 }
402
403 IntelFrameworkModulePkg/Universal/BdsDxe/BdsDxe.inf {
404 <LibraryClasses>
405 TimerLib|OvmfPkg/Library/AcpiTimerLib/AcpiTimerLib.inf
406 !ifdef $(CSM_ENABLE)
407 NULL|OvmfPkg/Csm/CsmSupportLib/CsmSupportLib.inf
408 !endif
409 }
410
411 OvmfPkg/BlockMmioToBlockIoDxe/BlockIo.inf
412 OvmfPkg/EmuVariableFvbRuntimeDxe/Fvb.inf {
413 <LibraryClasses>
414 PlatformFvbLib|OvmfPkg/Library/EmuVariableFvbLib/EmuVariableFvbLib.inf
415 }
416 MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteDxe.inf
417 MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf
418 MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf
419 MdeModulePkg/Universal/MonotonicCounterRuntimeDxe/MonotonicCounterRuntimeDxe.inf
420 MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf
421 MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf
422 MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf
423 MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.inf
424 MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf
425 MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf
426 MdeModulePkg/Universal/PrintDxe/PrintDxe.inf
427 MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf
428 MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf
429 MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf
430 MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf
431 MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf
432 IntelFrameworkModulePkg/Bus/Pci/IdeBusDxe/IdeBusDxe.inf
433 PcAtChipsetPkg/Bus/Pci/IdeControllerDxe/IdeControllerDxe.inf
434 MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf
435 MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf
436 MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf
437
438 OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf {
439 <LibraryClasses>
440 BltLib|OptionRomPkg/Library/FrameBufferBltLib/FrameBufferBltLib.inf
441 }
442
443 #
444 # ISA Support
445 #
446 PcAtChipsetPkg/IsaAcpiDxe/IsaAcpi.inf
447 IntelFrameworkModulePkg/Bus/Isa/IsaBusDxe/IsaBusDxe.inf
448 IntelFrameworkModulePkg/Bus/Isa/IsaSerialDxe/IsaSerialDxe.inf
449 IntelFrameworkModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2keyboardDxe.inf
450 IntelFrameworkModulePkg/Bus/Isa/IsaFloppyDxe/IsaFloppyDxe.inf
451
452 #
453 # SMBIOS Support
454 #
455 MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf
456 OvmfPkg/SmbiosPlatformDxe/SmbiosPlatformDxe.inf
457
458 #
459 # ACPI Support
460 #
461 MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf
462 OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf
463 OvmfPkg/AcpiTables/AcpiTables.inf
464
465 #
466 # Network Support
467 #
468 !if $(NETWORK_ENABLE)
469 MdeModulePkg/Universal/Network/SnpDxe/SnpDxe.inf
470 MdeModulePkg/Universal/Network/DpcDxe/DpcDxe.inf
471 MdeModulePkg/Universal/Network/MnpDxe/MnpDxe.inf
472 MdeModulePkg/Universal/Network/VlanConfigDxe/VlanConfigDxe.inf
473 MdeModulePkg/Universal/Network/ArpDxe/ArpDxe.inf
474 MdeModulePkg/Universal/Network/Dhcp4Dxe/Dhcp4Dxe.inf
475 MdeModulePkg/Universal/Network/Ip4ConfigDxe/Ip4ConfigDxe.inf
476 MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Dxe.inf
477 MdeModulePkg/Universal/Network/Mtftp4Dxe/Mtftp4Dxe.inf
478 MdeModulePkg/Universal/Network/Tcp4Dxe/Tcp4Dxe.inf
479 MdeModulePkg/Universal/Network/Udp4Dxe/Udp4Dxe.inf
480 MdeModulePkg/Universal/Network/UefiPxeBcDxe/UefiPxeBcDxe.inf
481 MdeModulePkg/Universal/Network/IScsiDxe/IScsiDxe.inf
482 !endif
483
484 #
485 # Usb Support
486 #
487 MdeModulePkg/Bus/Pci/UhciDxe/UhciDxe.inf
488 MdeModulePkg/Bus/Pci/EhciDxe/EhciDxe.inf
489 MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf
490 MdeModulePkg/Bus/Usb/UsbKbDxe/UsbKbDxe.inf
491 MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassStorageDxe.inf
492
493 !ifdef $(CSM_ENABLE)
494 IntelFrameworkModulePkg/Csm/BiosThunk/VideoDxe/VideoDxe.inf
495 IntelFrameworkModulePkg/Csm/LegacyBiosDxe/LegacyBiosDxe.inf
496 OvmfPkg/Csm/Csm16/Csm16.inf
497 !endif
498
499 !if $(BUILD_NEW_SHELL)
500 ShellPkg/Application/Shell/Shell.inf {
501 <LibraryClasses>
502 ShellCommandLib|ShellPkg/Library/UefiShellCommandLib/UefiShellCommandLib.inf
503 NULL|ShellPkg/Library/UefiShellLevel2CommandsLib/UefiShellLevel2CommandsLib.inf
504 NULL|ShellPkg/Library/UefiShellLevel1CommandsLib/UefiShellLevel1CommandsLib.inf
505 NULL|ShellPkg/Library/UefiShellLevel3CommandsLib/UefiShellLevel3CommandsLib.inf
506 NULL|ShellPkg/Library/UefiShellDriver1CommandsLib/UefiShellDriver1CommandsLib.inf
507 NULL|ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.inf
508 NULL|ShellPkg/Library/UefiShellInstall1CommandsLib/UefiShellInstall1CommandsLib.inf
509 NULL|ShellPkg/Library/UefiShellNetwork1CommandsLib/UefiShellNetwork1CommandsLib.inf
510 HandleParsingLib|ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.inf
511 FileHandleLib|ShellPkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf
512 ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf
513 SortLib|ShellPkg/Library/UefiSortLib/UefiSortLib.inf
514 PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
515 PathLib|ShellPkg/Library/BasePathLib/BasePathLib.inf
516 # SafeBlockIoLib|ShellPkg/Library/SafeBlockIoLib/SafeBlockIoLib.inf
517 # SafeOpenProtocolLib|ShellPkg/Library/SafeOpenProtocolLib/SafeOpenProtocolLib.inf
518
519 <PcdsFixedAtBuild>
520 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0xFF
521 gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
522 gEfiMdePkgTokenSpaceGuid.PcdUefiLibMaxPrintBufferSize|8000
523 }
524 !endif
525
526 !if $(SECURE_BOOT_ENABLE) == TRUE
527 SecurityPkg/VariableAuthenticated/RuntimeDxe/VariableRuntimeDxe.inf {
528 <LibraryClasses>
529 BaseCryptLib|CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf
530 OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf
531 }
532 OvmfPkg/SecureBootConfigDxe/SecureBootConfigDxe.inf
533 !endif