VirtualBox

source: vbox/trunk/src/VBox/Devices/EFI/Firmware/OvmfPkg/OvmfPkgX64.dsc@ 98412

Last change on this file since 98412 was 93492, checked in by vboxsync, 3 years ago

EFI: Revert r139958 as it breaks booting from FreeBSD ISO images with EFI enabled, ticketref:19910 (will break ticketref:19862 but there is network boot support now making the iPXE ISO image approach superfluous)

  • Property svn:eol-style set to native
File size: 49.0 KB
Line 
1## @file
2# EFI/Framework Open Virtual Machine Firmware (OVMF) platform
3#
4# Copyright (c) 2006 - 2021, Intel Corporation. All rights reserved.<BR>
5# (C) Copyright 2016 Hewlett Packard Enterprise Development LP<BR>
6# Copyright (c) Microsoft Corporation.
7#
8# SPDX-License-Identifier: BSD-2-Clause-Patent
9#
10##
11
12################################################################################
13#
14# Defines Section - statements that will be processed to create a Makefile.
15#
16################################################################################
17[Defines]
18 PLATFORM_NAME = Ovmf
19 PLATFORM_GUID = 5a9e7754-d81b-49ea-85ad-69eaa7b1539b
20 PLATFORM_VERSION = 0.1
21 DSC_SPECIFICATION = 0x00010005
22!ifndef $(VBOX_OUTPUT_BASE_DIR)
23 OUTPUT_DIRECTORY = Build/OvmfX64
24!else
25 OUTPUT_DIRECTORY = $(VBOX_OUTPUT_BASE_DIR)/amd64
26!endif
27 SUPPORTED_ARCHITECTURES = X64
28 BUILD_TARGETS = NOOPT|DEBUG|RELEASE
29 SKUID_IDENTIFIER = DEFAULT
30 FLASH_DEFINITION = OvmfPkg/OvmfPkgX64.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 DEFINE SMM_REQUIRE = FALSE
38 DEFINE SOURCE_DEBUG_ENABLE = FALSE
39 DEFINE TPM_ENABLE = FALSE
40 DEFINE TPM_CONFIG_ENABLE = FALSE
41
42# DEFINE SOURCE_DEBUG_ENABLE = TRUE
43
44 #
45 # Network definition
46 #
47 DEFINE NETWORK_TLS_ENABLE = FALSE
48 DEFINE NETWORK_IP6_ENABLE = FALSE
49 DEFINE NETWORK_HTTP_BOOT_ENABLE = FALSE
50 DEFINE NETWORK_ALLOW_HTTP_CONNECTIONS = TRUE
51 DEFINE NETWORK_ISCSI_ENABLE = TRUE
52
53!include NetworkPkg/NetworkDefines.dsc.inc
54
55 #
56 # Device drivers
57 #
58 DEFINE PVSCSI_ENABLE = TRUE
59 DEFINE MPT_SCSI_ENABLE = TRUE
60 DEFINE LSI_SCSI_ENABLE = FALSE
61
62 #
63 # Flash size selection. Setting FD_SIZE_IN_KB on the command line directly to
64 # one of the supported values, in place of any of the convenience macros, is
65 # permitted.
66 #
67!ifdef $(FD_SIZE_1MB)
68 DEFINE FD_SIZE_IN_KB = 1024
69!else
70!ifdef $(FD_SIZE_2MB)
71 DEFINE FD_SIZE_IN_KB = 2048
72!else
73!ifdef $(FD_SIZE_4MB)
74 DEFINE FD_SIZE_IN_KB = 4096
75!else
76 DEFINE FD_SIZE_IN_KB = 4096
77!endif
78!endif
79!endif
80
81[BuildOptions]
82 GCC:RELEASE_*_*_CC_FLAGS = -DMDEPKG_NDEBUG
83 INTEL:RELEASE_*_*_CC_FLAGS = /D MDEPKG_NDEBUG
84 MSFT:RELEASE_*_*_CC_FLAGS = /D MDEPKG_NDEBUG
85!if $(TOOL_CHAIN_TAG) != "XCODE5" && $(TOOL_CHAIN_TAG) != "CLANGPDB"
86 GCC:*_*_*_CC_FLAGS = -mno-mmx -mno-sse
87!endif
88!if $(SOURCE_DEBUG_ENABLE) == TRUE
89 MSFT:*_*_X64_GENFW_FLAGS = --keepexceptiontable
90 GCC:*_*_X64_GENFW_FLAGS = --keepexceptiontable
91 INTEL:*_*_X64_GENFW_FLAGS = --keepexceptiontable
92!endif
93!ifndef $(VBOX) # We want some debug information even for release builds, thank you.
94 RELEASE_*_*_GENFW_FLAGS = --zero
95!endif
96
97 #
98 # Disable deprecated APIs.
99 #
100 MSFT:*_*_*_CC_FLAGS = /D DISABLE_NEW_DEPRECATED_INTERFACES
101 INTEL:*_*_*_CC_FLAGS = /D DISABLE_NEW_DEPRECATED_INTERFACES
102 GCC:*_*_*_CC_FLAGS = -D DISABLE_NEW_DEPRECATED_INTERFACES
103
104!include NetworkPkg/NetworkBuildOptions.dsc.inc
105
106[BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER]
107 GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000
108 XCODE:*_*_*_DLINK_FLAGS = -seg1addr 0x1000 -segalign 0x1000
109 XCODE:*_*_*_MTOC_FLAGS = -align 0x1000
110 CLANGPDB:*_*_*_DLINK_FLAGS = /ALIGN:4096
111
112# Force PE/COFF sections to be aligned at 4KB boundaries to support page level
113# protection of DXE_SMM_DRIVER/SMM_CORE modules
114[BuildOptions.common.EDKII.DXE_SMM_DRIVER, BuildOptions.common.EDKII.SMM_CORE]
115 GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000
116 XCODE:*_*_*_DLINK_FLAGS = -seg1addr 0x1000 -segalign 0x1000
117 XCODE:*_*_*_MTOC_FLAGS = -align 0x1000
118 CLANGPDB:*_*_*_DLINK_FLAGS = /ALIGN:4096
119
120!ifdef $(VBOX)
121[BuildOptions.Ia32]
122 GCC:*_*_*_CC_FLAGS = -DVBOX -DIPRT_NO_CRT -DRT_OS_UEFI -DARCH_BITS=32 -DHC_ARCH_BITS=32 -DVBOX_REV=$(VBOX_REV)
123 MSFT:*_*_*_CC_FLAGS = -DVBOX -DIPRT_NO_CRT -DRT_OS_UEFI -DARCH_BITS=32 -DHC_ARCH_BITS=32 -DVBOX_REV=$(VBOX_REV)
124 INTEL:*_*_*_CC_FLAGS = -DVBOX -DIPRT_NO_CRT -DRT_OS_UEFI -DARCH_BITS=32 -DHC_ARCH_BITS=32 -DVBOX_REV=$(VBOX_REV)
125[BuildOptions.X64]
126 GCC:*_*_*_CC_FLAGS = -DVBOX -DIPRT_NO_CRT -DRT_OS_UEFI -DARCH_BITS=64 -DHC_ARCH_BITS=64 -DVBOX_REV=$(VBOX_REV)
127 MSFT:*_*_*_CC_FLAGS = -DVBOX -DIPRT_NO_CRT -DRT_OS_UEFI -DARCH_BITS=64 -DHC_ARCH_BITS=64 -DVBOX_REV=$(VBOX_REV)
128 INTEL:*_*_*_CC_FLAGS = -DVBOX -DIPRT_NO_CRT -DRT_OS_UEFI -DARCH_BITS=64 -DHC_ARCH_BITS=64 -DVBOX_REV=$(VBOX_REV)
129
130!ifdef $(SOURCE_DEBUG_ENABLE)
131 # Get much better source-level debugging
132 GCC:DEBUG_*_*_CC_FLAGS = -DVBOX_SOURCE_DEBUG_ENABLE
133 MSFT:DEBUG_*_*_CC_FLAGS = /Od -DVBOX_SOURCE_DEBUG_ENABLE
134 INTEL:DEBUG_*_*_CC_FLAGS = -DVBOX_SOURCE_DEBUG_ENABLE
135!endif
136
137!endif
138
139
140################################################################################
141#
142# SKU Identification section - list of all SKU IDs supported by this Platform.
143#
144################################################################################
145[SkuIds]
146 0|DEFAULT
147
148################################################################################
149#
150# Library Class section - list of all Library Classes needed by this Platform.
151#
152################################################################################
153
154!include MdePkg/MdeLibs.dsc.inc
155
156[LibraryClasses]
157 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
158 TimerLib|OvmfPkg/Library/AcpiTimerLib/BaseAcpiTimerLib.inf
159 ResetSystemLib|OvmfPkg/Library/ResetSystemLib/BaseResetSystemLib.inf
160 PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
161 BaseMemoryLib|MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf
162 BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
163 SafeIntLib|MdePkg/Library/BaseSafeIntLib/BaseSafeIntLib.inf
164 TimeBaseLib|EmbeddedPkg/Library/TimeBaseLib/TimeBaseLib.inf
165 BmpSupportLib|MdeModulePkg/Library/BaseBmpSupportLib/BaseBmpSupportLib.inf
166 SynchronizationLib|MdePkg/Library/BaseSynchronizationLib/BaseSynchronizationLib.inf
167 CpuLib|MdePkg/Library/BaseCpuLib/BaseCpuLib.inf
168 PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf
169!ifndef $(VBOX)
170 PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf
171!else
172 PeCoffLib|VBoxPkg/Library/VBoxPeCoffLib/VBoxPeCoffLib.inf
173!endif
174 CacheMaintenanceLib|MdePkg/Library/BaseCacheMaintenanceLib/BaseCacheMaintenanceLib.inf
175 UefiDecompressLib|MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLib.inf
176 UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf
177 HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf
178 SortLib|MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf
179 UefiBootManagerLib|MdeModulePkg/Library/UefiBootManagerLib/UefiBootManagerLib.inf
180 BootLogoLib|MdeModulePkg/Library/BootLogoLib/BootLogoLib.inf
181 FileExplorerLib|MdeModulePkg/Library/FileExplorerLib/FileExplorerLib.inf
182 CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibNull/DxeCapsuleLibNull.inf
183 DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf
184 DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf
185 PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
186 PciCf8Lib|MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf
187 PciExpressLib|MdePkg/Library/BasePciExpressLib/BasePciExpressLib.inf
188 PciLib|MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf
189 PciSegmentLib|MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf
190 PciCapLib|OvmfPkg/Library/BasePciCapLib/BasePciCapLib.inf
191 PciCapPciSegmentLib|OvmfPkg/Library/BasePciCapPciSegmentLib/BasePciCapPciSegmentLib.inf
192 PciCapPciIoLib|OvmfPkg/Library/UefiPciCapPciIoLib/UefiPciCapPciIoLib.inf
193 IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsicSev.inf
194 OemHookStatusCodeLib|MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf
195 SerialPortLib|PcAtChipsetPkg/Library/SerialIoLib/SerialIoLib.inf
196 MtrrLib|UefiCpuPkg/Library/MtrrLib/MtrrLib.inf
197 MicrocodeLib|UefiCpuPkg/Library/MicrocodeLib/MicrocodeLib.inf
198 UefiLib|MdePkg/Library/UefiLib/UefiLib.inf
199 UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
200 UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
201 UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
202 UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf
203 DevicePathLib|MdePkg/Library/UefiDevicePathLibDevicePathProtocol/UefiDevicePathLibDevicePathProtocol.inf
204 NvVarsFileLib|OvmfPkg/Library/NvVarsFileLib/NvVarsFileLib.inf
205 FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf
206 UefiCpuLib|UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.inf
207 SecurityManagementLib|MdeModulePkg/Library/DxeSecurityManagementLib/DxeSecurityManagementLib.inf
208 UefiUsbLib|MdePkg/Library/UefiUsbLib/UefiUsbLib.inf
209 SerializeVariablesLib|OvmfPkg/Library/SerializeVariablesLib/SerializeVariablesLib.inf
210 QemuFwCfgLib|OvmfPkg/Library/QemuFwCfgLib/QemuFwCfgDxeLib.inf
211 QemuFwCfgSimpleParserLib|OvmfPkg/Library/QemuFwCfgSimpleParserLib/QemuFwCfgSimpleParserLib.inf
212 VirtioLib|OvmfPkg/Library/VirtioLib/VirtioLib.inf
213 LoadLinuxLib|OvmfPkg/Library/LoadLinuxLib/LoadLinuxLib.inf
214 MemEncryptSevLib|OvmfPkg/Library/BaseMemEncryptSevLib/DxeMemEncryptSevLib.inf
215!if $(SMM_REQUIRE) == FALSE
216 LockBoxLib|OvmfPkg/Library/LockBoxLib/LockBoxBaseLib.inf
217!endif
218 CustomizedDisplayLib|MdeModulePkg/Library/CustomizedDisplayLib/CustomizedDisplayLib.inf
219 FrameBufferBltLib|MdeModulePkg/Library/FrameBufferBltLib/FrameBufferBltLib.inf
220
221!if $(SOURCE_DEBUG_ENABLE) == TRUE
222 PeCoffExtraActionLib|SourceLevelDebugPkg/Library/PeCoffExtraActionLibDebug/PeCoffExtraActionLibDebug.inf
223 DebugCommunicationLib|SourceLevelDebugPkg/Library/DebugCommunicationLibSerialPort/DebugCommunicationLibSerialPort.inf
224!else
225!ifdef $(VBOX)
226 PeCoffExtraActionLib|SourceLevelDebugPkg/Library/PeCoffExtraActionLibDebug/PeCoffExtraActionLibDebug.inf
227 DebugAgentLib|VBoxPkg/Library/VBoxDebugAgentLib/VBoxDebugAgentLib.inf
228!else
229 PeCoffExtraActionLib|MdePkg/Library/BasePeCoffExtraActionLibNull/BasePeCoffExtraActionLibNull.inf
230 DebugAgentLib|MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf
231!endif
232!endif
233
234 LocalApicLib|UefiCpuPkg/Library/BaseXApicX2ApicLib/BaseXApicX2ApicLib.inf
235 DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf
236
237 IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf
238!if $(NETWORK_TLS_ENABLE) == TRUE
239 OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf
240!else
241 OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf
242!endif
243 RngLib|MdePkg/Library/BaseRngLibTimerLib/BaseRngLibTimerLib.inf
244
245!if $(SECURE_BOOT_ENABLE) == TRUE
246 PlatformSecureLib|OvmfPkg/Library/PlatformSecureLib/PlatformSecureLib.inf
247 AuthVariableLib|SecurityPkg/Library/AuthVariableLib/AuthVariableLib.inf
248!else
249 AuthVariableLib|MdeModulePkg/Library/AuthVariableLibNull/AuthVariableLibNull.inf
250!endif
251 VarCheckLib|MdeModulePkg/Library/VarCheckLib/VarCheckLib.inf
252 VariablePolicyLib|MdeModulePkg/Library/VariablePolicyLib/VariablePolicyLib.inf
253 VariablePolicyHelperLib|MdeModulePkg/Library/VariablePolicyHelperLib/VariablePolicyHelperLib.inf
254
255
256 #
257 # Network libraries
258 #
259!include NetworkPkg/NetworkLibs.dsc.inc
260
261!if $(NETWORK_TLS_ENABLE) == TRUE
262 TlsLib|CryptoPkg/Library/TlsLib/TlsLib.inf
263!endif
264
265 ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf
266 ShellCEntryLib|ShellPkg/Library/UefiShellCEntryLib/UefiShellCEntryLib.inf
267 S3BootScriptLib|MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf
268 SmbusLib|MdePkg/Library/BaseSmbusLibNull/BaseSmbusLibNull.inf
269 OrderedCollectionLib|MdePkg/Library/BaseOrderedCollectionRedBlackTreeLib/BaseOrderedCollectionRedBlackTreeLib.inf
270 XenHypercallLib|OvmfPkg/Library/XenHypercallLib/XenHypercallLib.inf
271 XenPlatformLib|OvmfPkg/Library/XenPlatformLib/XenPlatformLib.inf
272
273!if $(TPM_ENABLE) == TRUE
274 Tpm12CommandLib|SecurityPkg/Library/Tpm12CommandLib/Tpm12CommandLib.inf
275 Tpm2CommandLib|SecurityPkg/Library/Tpm2CommandLib/Tpm2CommandLib.inf
276 Tcg2PhysicalPresenceLib|OvmfPkg/Library/Tcg2PhysicalPresenceLibQemu/DxeTcg2PhysicalPresenceLib.inf
277 Tcg2PpVendorLib|SecurityPkg/Library/Tcg2PpVendorLibNull/Tcg2PpVendorLibNull.inf
278 TpmMeasurementLib|SecurityPkg/Library/DxeTpmMeasurementLib/DxeTpmMeasurementLib.inf
279!else
280 Tcg2PhysicalPresenceLib|OvmfPkg/Library/Tcg2PhysicalPresenceLibNull/DxeTcg2PhysicalPresenceLib.inf
281 TpmMeasurementLib|MdeModulePkg/Library/TpmMeasurementLibNull/TpmMeasurementLibNull.inf
282!endif
283
284[LibraryClasses.common]
285 BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf
286 VmgExitLib|OvmfPkg/Library/VmgExitLib/VmgExitLib.inf
287
288[LibraryClasses.common.SEC]
289 TimerLib|OvmfPkg/Library/AcpiTimerLib/BaseRomAcpiTimerLib.inf
290!ifndef $(VBOX)
291 QemuFwCfgLib|OvmfPkg/Library/QemuFwCfgLib/QemuFwCfgSecLib.inf
292!ifdef $(DEBUG_ON_SERIAL_PORT)
293 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
294!else
295 DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformRomDebugLibIoPort.inf
296!endif
297!else
298 DebugLib|VBoxPkg/Library/VBoxDebugLib/VBoxDebugLib.inf
299!endif
300 ReportStatusCodeLib|MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf
301 ExtractGuidedSectionLib|MdePkg/Library/BaseExtractGuidedSectionLib/BaseExtractGuidedSectionLib.inf
302!if $(SOURCE_DEBUG_ENABLE) == TRUE
303 DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/SecPeiDebugAgentLib.inf
304!endif
305 HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
306 PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf
307 PeiServicesTablePointerLib|MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf
308 MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
309!if $(TOOL_CHAIN_TAG) == "XCODE5"
310 CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/Xcode5SecPeiCpuExceptionHandlerLib.inf
311!else
312 CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/SecPeiCpuExceptionHandlerLib.inf
313!endif
314 VmgExitLib|OvmfPkg/Library/VmgExitLib/SecVmgExitLib.inf
315 MemEncryptSevLib|OvmfPkg/Library/BaseMemEncryptSevLib/SecMemEncryptSevLib.inf
316
317[LibraryClasses.common.PEI_CORE]
318 HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
319 PeiServicesTablePointerLib|MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf
320 PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf
321 MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
322 PeiCoreEntryPoint|MdePkg/Library/PeiCoreEntryPoint/PeiCoreEntryPoint.inf
323 ReportStatusCodeLib|MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf
324 OemHookStatusCodeLib|MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf
325 PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
326!ifndef $(VBOX)
327!ifdef $(DEBUG_ON_SERIAL_PORT)
328 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
329!else
330 DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf
331!endif
332 PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf
333!else
334 PeCoffLib|VBoxPkg/Library/VBoxPeCoffLib/VBoxPeCoffLib.inf
335 DebugLib|VBoxPkg/Library/VBoxDebugLib/VBoxDebugLib.inf
336!endif
337
338[LibraryClasses.common.PEIM]
339 HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
340 PeiServicesTablePointerLib|MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf
341 PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf
342 MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
343 PeimEntryPoint|MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf
344 ReportStatusCodeLib|MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf
345 OemHookStatusCodeLib|MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf
346 PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
347!ifndef $(VBOX)
348!ifdef $(DEBUG_ON_SERIAL_PORT)
349 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
350!else
351 DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf
352!endif
353 PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf
354!else
355 DebugLib|VBoxPkg/Library/VBoxDebugLib/VBoxDebugLib.inf
356 PeCoffLib|VBoxPkg/Library/VBoxPeCoffLib/VBoxPeCoffLib.inf
357!endif
358 ResourcePublicationLib|MdePkg/Library/PeiResourcePublicationLib/PeiResourcePublicationLib.inf
359 ExtractGuidedSectionLib|MdePkg/Library/PeiExtractGuidedSectionLib/PeiExtractGuidedSectionLib.inf
360!if $(SOURCE_DEBUG_ENABLE) == TRUE
361 DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/SecPeiDebugAgentLib.inf
362!endif
363 CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/PeiCpuExceptionHandlerLib.inf
364 MpInitLib|UefiCpuPkg/Library/MpInitLib/PeiMpInitLib.inf
365 QemuFwCfgS3Lib|OvmfPkg/Library/QemuFwCfgS3Lib/PeiQemuFwCfgS3LibFwCfg.inf
366 PcdLib|MdePkg/Library/PeiPcdLib/PeiPcdLib.inf
367 QemuFwCfgLib|OvmfPkg/Library/QemuFwCfgLib/QemuFwCfgPeiLib.inf
368
369!if $(TPM_ENABLE) == TRUE
370 BaseCryptLib|CryptoPkg/Library/BaseCryptLib/PeiCryptLib.inf
371 Tpm12DeviceLib|SecurityPkg/Library/Tpm12DeviceLibDTpm/Tpm12DeviceLibDTpm.inf
372 Tpm2DeviceLib|SecurityPkg/Library/Tpm2DeviceLibDTpm/Tpm2DeviceLibDTpm.inf
373!endif
374
375 MemEncryptSevLib|OvmfPkg/Library/BaseMemEncryptSevLib/PeiMemEncryptSevLib.inf
376
377[LibraryClasses.common.DXE_CORE]
378 HobLib|MdePkg/Library/DxeCoreHobLib/DxeCoreHobLib.inf
379 DxeCoreEntryPoint|MdePkg/Library/DxeCoreEntryPoint/DxeCoreEntryPoint.inf
380 MemoryAllocationLib|MdeModulePkg/Library/DxeCoreMemoryAllocationLib/DxeCoreMemoryAllocationLib.inf
381 ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf
382!ifndef $(VBOX)
383!ifdef $(DEBUG_ON_SERIAL_PORT)
384 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
385!else
386 DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf
387!endif
388!else
389 DebugLib|VBoxPkg/Library/VBoxDebugLib/VBoxDebugLib.inf
390!endif
391 ExtractGuidedSectionLib|MdePkg/Library/DxeExtractGuidedSectionLib/DxeExtractGuidedSectionLib.inf
392!if $(SOURCE_DEBUG_ENABLE) == TRUE
393 DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/DxeDebugAgentLib.inf
394!endif
395 CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/DxeCpuExceptionHandlerLib.inf
396 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
397
398[LibraryClasses.common.DXE_RUNTIME_DRIVER]
399 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
400 TimerLib|OvmfPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf
401 ResetSystemLib|OvmfPkg/Library/ResetSystemLib/DxeResetSystemLib.inf
402 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
403 DxeCoreEntryPoint|MdePkg/Library/DxeCoreEntryPoint/DxeCoreEntryPoint.inf
404 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
405 ReportStatusCodeLib|MdeModulePkg/Library/RuntimeDxeReportStatusCodeLib/RuntimeDxeReportStatusCodeLib.inf
406!ifndef $(VBOX)
407!ifdef $(DEBUG_ON_SERIAL_PORT)
408 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
409!else
410 DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf
411!endif
412!else
413 DebugLib|VBoxPkg/Library/VBoxDebugLib/VBoxDebugLib.inf
414!endif
415 UefiRuntimeLib|MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf
416 BaseCryptLib|CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf
417 PciLib|OvmfPkg/Library/DxePciLibI440FxQ35/DxePciLibI440FxQ35.inf
418 QemuFwCfgS3Lib|OvmfPkg/Library/QemuFwCfgS3Lib/DxeQemuFwCfgS3LibFwCfg.inf
419 VariablePolicyLib|MdeModulePkg/Library/VariablePolicyLib/VariablePolicyLibRuntimeDxe.inf
420!if $(SMM_REQUIRE) == TRUE
421 MmUnblockMemoryLib|MdePkg/Library/MmUnblockMemoryLib/MmUnblockMemoryLibNull.inf
422!endif
423
424[LibraryClasses.common.UEFI_DRIVER]
425 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
426 TimerLib|OvmfPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf
427 ResetSystemLib|OvmfPkg/Library/ResetSystemLib/DxeResetSystemLib.inf
428 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
429 DxeCoreEntryPoint|MdePkg/Library/DxeCoreEntryPoint/DxeCoreEntryPoint.inf
430 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
431 ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf
432!ifndef $(VBOX)
433!ifdef $(DEBUG_ON_SERIAL_PORT)
434 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
435!else
436 DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf
437!endif
438!else
439 DebugLib|VBoxPkg/Library/VBoxDebugLib/VBoxDebugLib.inf
440!endif
441 UefiScsiLib|MdePkg/Library/UefiScsiLib/UefiScsiLib.inf
442 PciLib|OvmfPkg/Library/DxePciLibI440FxQ35/DxePciLibI440FxQ35.inf
443
444[LibraryClasses.common.DXE_DRIVER]
445 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
446 TimerLib|OvmfPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf
447 ResetSystemLib|OvmfPkg/Library/ResetSystemLib/DxeResetSystemLib.inf
448 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
449 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
450 ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf
451 UefiScsiLib|MdePkg/Library/UefiScsiLib/UefiScsiLib.inf
452!ifndef $(VBOX)
453!ifdef $(DEBUG_ON_SERIAL_PORT)
454 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
455!else
456 DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf
457!endif
458!else
459 DebugLib|VBoxPkg/Library/VBoxDebugLib/VBoxDebugLib.inf
460!endif
461 PlatformBootManagerLib|OvmfPkg/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf
462 PlatformBmPrintScLib|OvmfPkg/Library/PlatformBmPrintScLib/PlatformBmPrintScLib.inf
463 QemuBootOrderLib|OvmfPkg/Library/QemuBootOrderLib/QemuBootOrderLib.inf
464 CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/DxeCpuExceptionHandlerLib.inf
465!if $(SMM_REQUIRE) == TRUE
466 LockBoxLib|MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf
467!else
468 LockBoxLib|OvmfPkg/Library/LockBoxLib/LockBoxDxeLib.inf
469!endif
470!if $(SOURCE_DEBUG_ENABLE) == TRUE
471 DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/DxeDebugAgentLib.inf
472!endif
473 PciLib|OvmfPkg/Library/DxePciLibI440FxQ35/DxePciLibI440FxQ35.inf
474 MpInitLib|UefiCpuPkg/Library/MpInitLib/DxeMpInitLib.inf
475 QemuFwCfgS3Lib|OvmfPkg/Library/QemuFwCfgS3Lib/DxeQemuFwCfgS3LibFwCfg.inf
476 QemuLoadImageLib|OvmfPkg/Library/X86QemuLoadImageLib/X86QemuLoadImageLib.inf
477!if $(TPM_ENABLE) == TRUE
478 Tpm12DeviceLib|SecurityPkg/Library/Tpm12DeviceLibTcg/Tpm12DeviceLibTcg.inf
479 Tpm2DeviceLib|SecurityPkg/Library/Tpm2DeviceLibTcg2/Tpm2DeviceLibTcg2.inf
480!endif
481
482[LibraryClasses.common.UEFI_APPLICATION]
483 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
484 TimerLib|OvmfPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf
485 ResetSystemLib|OvmfPkg/Library/ResetSystemLib/DxeResetSystemLib.inf
486 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
487 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
488 ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf
489!ifndef $(VBOX)
490!ifdef $(DEBUG_ON_SERIAL_PORT)
491 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
492!else
493 DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf
494!endif
495!else
496 DebugLib|VBoxPkg/Library/VBoxDebugLib/VBoxDebugLib.inf
497!endif
498 PciLib|OvmfPkg/Library/DxePciLibI440FxQ35/DxePciLibI440FxQ35.inf
499
500[LibraryClasses.common.DXE_SMM_DRIVER]
501 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
502 TimerLib|OvmfPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf
503 ResetSystemLib|OvmfPkg/Library/ResetSystemLib/DxeResetSystemLib.inf
504 MemoryAllocationLib|MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf
505 ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf
506 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
507 SmmMemLib|MdePkg/Library/SmmMemLib/SmmMemLib.inf
508 MmServicesTableLib|MdePkg/Library/MmServicesTableLib/MmServicesTableLib.inf
509 SmmServicesTableLib|MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf
510!ifndef $(VBOX)
511!ifdef $(DEBUG_ON_SERIAL_PORT)
512 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
513!else
514 DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf
515!endif
516!else
517 DebugLib|VBoxPkg/Library/VBoxDebugLib/VBoxDebugLib.inf
518!endif
519 CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/SmmCpuExceptionHandlerLib.inf
520!if $(SOURCE_DEBUG_ENABLE) == TRUE
521 DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/SmmDebugAgentLib.inf
522!endif
523 BaseCryptLib|CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf
524 PciLib|OvmfPkg/Library/DxePciLibI440FxQ35/DxePciLibI440FxQ35.inf
525
526[LibraryClasses.common.SMM_CORE]
527 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
528 TimerLib|OvmfPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf
529 ResetSystemLib|OvmfPkg/Library/ResetSystemLib/DxeResetSystemLib.inf
530 SmmCorePlatformHookLib|MdeModulePkg/Library/SmmCorePlatformHookLibNull/SmmCorePlatformHookLibNull.inf
531 MemoryAllocationLib|MdeModulePkg/Library/PiSmmCoreMemoryAllocationLib/PiSmmCoreMemoryAllocationLib.inf
532 ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf
533 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
534 SmmMemLib|MdePkg/Library/SmmMemLib/SmmMemLib.inf
535 SmmServicesTableLib|MdeModulePkg/Library/PiSmmCoreSmmServicesTableLib/PiSmmCoreSmmServicesTableLib.inf
536!ifndef $(VBOX)
537!ifdef $(DEBUG_ON_SERIAL_PORT)
538 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
539!else
540 DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf
541!endif
542!else
543 DebugLib|VBoxPkg/Library/VBoxDebugLib/VBoxDebugLib.inf
544!endif
545 PciLib|OvmfPkg/Library/DxePciLibI440FxQ35/DxePciLibI440FxQ35.inf
546
547################################################################################
548#
549# Pcd Section - list of all EDK II PCD Entries defined by this Platform.
550#
551################################################################################
552[PcdsFeatureFlag]
553 gEfiMdeModulePkgTokenSpaceGuid.PcdHiiOsRuntimeSupport|FALSE
554 gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSupportUefiDecompress|FALSE
555 gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSwitchToLongMode|FALSE
556 gEfiMdeModulePkgTokenSpaceGuid.PcdConOutGopSupport|TRUE
557 gEfiMdeModulePkgTokenSpaceGuid.PcdConOutUgaSupport|FALSE
558 gEfiMdeModulePkgTokenSpaceGuid.PcdInstallAcpiSdtProtocol|TRUE
559!ifdef $(CSM_ENABLE)
560 gUefiOvmfPkgTokenSpaceGuid.PcdCsmEnable|TRUE
561!endif
562!if $(SMM_REQUIRE) == TRUE
563 gUefiOvmfPkgTokenSpaceGuid.PcdSmmSmramRequire|TRUE
564 gUefiCpuPkgTokenSpaceGuid.PcdCpuHotPlugSupport|TRUE
565 gEfiMdeModulePkgTokenSpaceGuid.PcdEnableVariableRuntimeCache|FALSE
566!endif
567
568[PcdsFixedAtBuild]
569 gEfiMdeModulePkgTokenSpaceGuid.PcdStatusCodeMemorySize|1
570!if $(SMM_REQUIRE) == FALSE
571 gEfiMdeModulePkgTokenSpaceGuid.PcdResetOnMemoryTypeInformationChange|FALSE
572!endif
573 gEfiMdePkgTokenSpaceGuid.PcdMaximumGuidedExtractHandler|0x10
574 gEfiMdePkgTokenSpaceGuid.PcdMaximumLinkedListLength|0
575!if ($(FD_SIZE_IN_KB) == 1024) || ($(FD_SIZE_IN_KB) == 2048)
576 gEfiMdeModulePkgTokenSpaceGuid.PcdMaxVariableSize|0x2000
577 gEfiMdeModulePkgTokenSpaceGuid.PcdMaxAuthVariableSize|0x2800
578!if $(NETWORK_TLS_ENABLE) == FALSE
579 # match PcdFlashNvStorageVariableSize purely for convenience
580 gEfiMdeModulePkgTokenSpaceGuid.PcdVariableStoreSize|0xe000
581!endif
582!endif
583!if $(FD_SIZE_IN_KB) == 4096
584 gEfiMdeModulePkgTokenSpaceGuid.PcdMaxVariableSize|0x8400
585 gEfiMdeModulePkgTokenSpaceGuid.PcdMaxAuthVariableSize|0x8400
586!if $(NETWORK_TLS_ENABLE) == FALSE
587 # match PcdFlashNvStorageVariableSize purely for convenience
588 gEfiMdeModulePkgTokenSpaceGuid.PcdVariableStoreSize|0x40000
589!endif
590!endif
591!if $(NETWORK_TLS_ENABLE) == TRUE
592 gEfiMdeModulePkgTokenSpaceGuid.PcdVariableStoreSize|0x80000
593 gEfiMdeModulePkgTokenSpaceGuid.PcdMaxVolatileVariableSize|0x40000
594!endif
595
596 gEfiMdeModulePkgTokenSpaceGuid.PcdVpdBaseAddress|0x0
597 gEfiMdeModulePkgTokenSpaceGuid.PcdStatusCodeUseSerial|FALSE
598 gEfiMdeModulePkgTokenSpaceGuid.PcdStatusCodeUseMemory|TRUE
599
600 gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x07
601
602 # DEBUG_INIT 0x00000001 // Initialization
603 # DEBUG_WARN 0x00000002 // Warnings
604 # DEBUG_LOAD 0x00000004 // Load events
605 # DEBUG_FS 0x00000008 // EFI File system
606 # DEBUG_POOL 0x00000010 // Alloc & Free (pool)
607 # DEBUG_PAGE 0x00000020 // Alloc & Free (page)
608 # DEBUG_INFO 0x00000040 // Informational debug messages
609 # DEBUG_DISPATCH 0x00000080 // PEI/DXE/SMM Dispatchers
610 # DEBUG_VARIABLE 0x00000100 // Variable
611 # DEBUG_BM 0x00000400 // Boot Manager
612 # DEBUG_BLKIO 0x00001000 // BlkIo Driver
613 # DEBUG_NET 0x00004000 // SNP Driver
614 # DEBUG_UNDI 0x00010000 // UNDI Driver
615 # DEBUG_LOADFILE 0x00020000 // LoadFile
616 # DEBUG_EVENT 0x00080000 // Event messages
617 # DEBUG_GCD 0x00100000 // Global Coherency Database changes
618 # DEBUG_CACHE 0x00200000 // Memory range cachability changes
619 # DEBUG_VERBOSE 0x00400000 // Detailed debug messages that may
620 # // significantly impact boot performance
621 # DEBUG_ERROR 0x80000000 // Error
622 gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x8000004F
623
624!if $(SOURCE_DEBUG_ENABLE) == TRUE
625 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x17
626!else
627 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x2F
628!endif
629
630!ifndef $(VBOX)
631 # This PCD is used to set the base address of the PCI express hierarchy. It
632 # is only consulted when OVMF runs on Q35. In that case it is programmed into
633 # the PCIEXBAR register.
634 #
635 # On Q35 machine types that QEMU intends to support in the long term, QEMU
636 # never lets the RAM below 4 GB exceed 2816 MB.
637 gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0xB0000000
638!endif
639
640!if $(SOURCE_DEBUG_ENABLE) == TRUE
641 gEfiSourceLevelDebugPkgTokenSpaceGuid.PcdDebugLoadImageMethod|0x2
642!endif
643
644 #
645 # The NumberOfPages values below are ad-hoc. They are updated sporadically at
646 # best (please refer to git-blame for past updates). The values capture a set
647 # of BIN hints that made sense at a particular time, for some (now likely
648 # unknown) workloads / boot paths.
649 #
650 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiACPIMemoryNVS|0x80
651 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiACPIReclaimMemory|0x10
652 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiReservedMemoryType|0x80
653 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiRuntimeServicesCode|0x100
654 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiRuntimeServicesData|0x100
655
656 #
657 # Network Pcds
658 #
659!include NetworkPkg/NetworkPcds.dsc.inc
660
661 gEfiShellPkgTokenSpaceGuid.PcdShellFileOperationSize|0x20000
662
663!if $(SMM_REQUIRE) == TRUE
664 gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmStackSize|0x4000
665!endif
666
667 # IRQs 5, 9, 10, 11 are level-triggered
668 gUefiOvmfPkgTokenSpaceGuid.Pcd8259LegacyModeEdgeLevel|0x0E20
669
670 # Point to the MdeModulePkg/Application/UiApp/UiApp.inf
671 gEfiMdeModulePkgTokenSpaceGuid.PcdBootManagerMenuFile|{ 0x21, 0xaa, 0x2c, 0x46, 0x14, 0x76, 0x03, 0x45, 0x83, 0x6e, 0x8a, 0xb6, 0xf4, 0x66, 0x23, 0x31 }
672
673################################################################################
674#
675# Pcd Dynamic Section - list of all EDK II PCD Entries defined by this Platform
676#
677################################################################################
678
679[PcdsDynamicDefault]
680 # only set when
681 # ($(SMM_REQUIRE) == FALSE)
682 gEfiMdeModulePkgTokenSpaceGuid.PcdEmuVariableNvStoreReserved|0
683
684!if $(SMM_REQUIRE) == FALSE
685 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase64|0
686 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase|0
687 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase|0
688!endif
689 gEfiMdeModulePkgTokenSpaceGuid.PcdPciDisableBusEnumeration|FALSE
690!ifndef $(VBOX)
691 gEfiMdeModulePkgTokenSpaceGuid.PcdVideoHorizontalResolution|800
692 gEfiMdeModulePkgTokenSpaceGuid.PcdVideoVerticalResolution|600
693!else
694 gEfiMdeModulePkgTokenSpaceGuid.PcdEmuVariableNvModeEnable|FALSE
695 gEfiMdeModulePkgTokenSpaceGuid.PcdVideoHorizontalResolution|1024
696 gEfiMdeModulePkgTokenSpaceGuid.PcdVideoVerticalResolution|768
697 # Override ConOut to use maximum resolution, not the default of 80x25
698 gEfiMdeModulePkgTokenSpaceGuid.PcdConOutColumn|0
699 gEfiMdeModulePkgTokenSpaceGuid.PcdConOutRow|0
700!endif
701 gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiS3Enable|FALSE
702 gUefiOvmfPkgTokenSpaceGuid.PcdOvmfHostBridgePciDevId|0
703 gUefiOvmfPkgTokenSpaceGuid.PcdPciIoBase|0x0
704 gUefiOvmfPkgTokenSpaceGuid.PcdPciIoSize|0x0
705 gUefiOvmfPkgTokenSpaceGuid.PcdPciMmio32Base|0x0
706 gUefiOvmfPkgTokenSpaceGuid.PcdPciMmio32Size|0x0
707 gUefiOvmfPkgTokenSpaceGuid.PcdPciMmio64Base|0x0
708!ifdef $(CSM_ENABLE)
709 gUefiOvmfPkgTokenSpaceGuid.PcdPciMmio64Size|0x0
710!else
711 gUefiOvmfPkgTokenSpaceGuid.PcdPciMmio64Size|0x800000000
712!endif
713
714 gEfiMdePkgTokenSpaceGuid.PcdPlatformBootTimeOut|0
715
716 # Set video resolution for text setup.
717 gEfiMdeModulePkgTokenSpaceGuid.PcdSetupVideoHorizontalResolution|640
718 gEfiMdeModulePkgTokenSpaceGuid.PcdSetupVideoVerticalResolution|480
719
720 gEfiMdeModulePkgTokenSpaceGuid.PcdSmbiosVersion|0x0208
721 gEfiMdeModulePkgTokenSpaceGuid.PcdSmbiosDocRev|0x0
722 gUefiOvmfPkgTokenSpaceGuid.PcdQemuSmbiosValidated|FALSE
723
724 # Noexec settings for DXE.
725 gEfiMdeModulePkgTokenSpaceGuid.PcdSetNxForStack|FALSE
726
727 # UefiCpuPkg PCDs related to initial AP bringup and general AP management.
728 gUefiCpuPkgTokenSpaceGuid.PcdCpuMaxLogicalProcessorNumber|64
729 gUefiCpuPkgTokenSpaceGuid.PcdCpuBootLogicalProcessorNumber|0
730
731 # Set memory encryption mask
732 gEfiMdeModulePkgTokenSpaceGuid.PcdPteMemoryEncryptionAddressOrMask|0x0
733
734 # Set SEV-ES defaults
735 gEfiMdeModulePkgTokenSpaceGuid.PcdGhcbBase|0
736 gEfiMdeModulePkgTokenSpaceGuid.PcdGhcbSize|0
737 gUefiCpuPkgTokenSpaceGuid.PcdSevEsIsEnabled|0
738
739!if $(SMM_REQUIRE) == TRUE
740 gUefiOvmfPkgTokenSpaceGuid.PcdQ35TsegMbytes|8
741 gUefiOvmfPkgTokenSpaceGuid.PcdQ35SmramAtDefaultSmbase|FALSE
742 gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmSyncMode|0x01
743 gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmApSyncTimeout|100000
744!endif
745
746 gEfiSecurityPkgTokenSpaceGuid.PcdOptionRomImageVerificationPolicy|0x00
747
748!if $(TPM_ENABLE) == TRUE
749 gEfiSecurityPkgTokenSpaceGuid.PcdTpmInstanceGuid|{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
750!endif
751
752 # IPv4 and IPv6 PXE Boot support.
753 gEfiNetworkPkgTokenSpaceGuid.PcdIPv4PXESupport|0x01
754 gEfiNetworkPkgTokenSpaceGuid.PcdIPv6PXESupport|0x01
755
756!ifdef $(VBOX)
757 # This PCD is used to set the base address of the PCI express hierarchy. It
758 # is only consulted when OVMF runs on Q35. In that case it is programmed into
759 # the PCIEXBAR register.
760 #
761 # On VirtualBox it is dynamic.
762 gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x80000000
763!endif
764
765[PcdsDynamicHii]
766!if $(TPM_ENABLE) == TRUE && $(TPM_CONFIG_ENABLE) == TRUE
767 gEfiSecurityPkgTokenSpaceGuid.PcdTcgPhysicalPresenceInterfaceVer|L"TCG2_VERSION"|gTcg2ConfigFormSetGuid|0x0|"1.3"|NV,BS
768 gEfiSecurityPkgTokenSpaceGuid.PcdTpm2AcpiTableRev|L"TCG2_VERSION"|gTcg2ConfigFormSetGuid|0x8|3|NV,BS
769!endif
770
771################################################################################
772#
773# Components Section - list of all EDK II Modules needed by this Platform.
774#
775################################################################################
776[Components]
777 OvmfPkg/ResetVector/ResetVector.inf
778
779 #
780 # SEC Phase modules
781 #
782 OvmfPkg/Sec/SecMain.inf {
783 <LibraryClasses>
784 NULL|MdeModulePkg/Library/LzmaCustomDecompressLib/LzmaCustomDecompressLib.inf
785 }
786
787 #
788 # PEI Phase modules
789 #
790 MdeModulePkg/Core/Pei/PeiMain.inf
791 MdeModulePkg/Universal/PCD/Pei/Pcd.inf {
792 <LibraryClasses>
793 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
794 }
795 MdeModulePkg/Universal/ReportStatusCodeRouter/Pei/ReportStatusCodeRouterPei.inf {
796 <LibraryClasses>
797 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
798 }
799 MdeModulePkg/Universal/StatusCodeHandler/Pei/StatusCodeHandlerPei.inf {
800 <LibraryClasses>
801 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
802 }
803 MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf
804
805 OvmfPkg/PlatformPei/PlatformPei.inf
806 UefiCpuPkg/Universal/Acpi/S3Resume2Pei/S3Resume2Pei.inf {
807 <LibraryClasses>
808!if $(SMM_REQUIRE) == TRUE
809 LockBoxLib|MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxPeiLib.inf
810!endif
811 }
812!if $(SMM_REQUIRE) == TRUE
813 MdeModulePkg/Universal/FaultTolerantWritePei/FaultTolerantWritePei.inf
814 MdeModulePkg/Universal/Variable/Pei/VariablePei.inf
815 OvmfPkg/SmmAccess/SmmAccessPei.inf
816!endif
817 UefiCpuPkg/CpuMpPei/CpuMpPei.inf
818
819!if $(TPM_ENABLE) == TRUE
820 OvmfPkg/Tcg/TpmMmioSevDecryptPei/TpmMmioSevDecryptPei.inf
821 OvmfPkg/Tcg/Tcg2Config/Tcg2ConfigPei.inf
822 SecurityPkg/Tcg/TcgPei/TcgPei.inf
823 SecurityPkg/Tcg/Tcg2Pei/Tcg2Pei.inf {
824 <LibraryClasses>
825 HashLib|SecurityPkg/Library/HashLibBaseCryptoRouter/HashLibBaseCryptoRouterPei.inf
826 NULL|SecurityPkg/Library/HashInstanceLibSha1/HashInstanceLibSha1.inf
827 NULL|SecurityPkg/Library/HashInstanceLibSha256/HashInstanceLibSha256.inf
828 NULL|SecurityPkg/Library/HashInstanceLibSha384/HashInstanceLibSha384.inf
829 NULL|SecurityPkg/Library/HashInstanceLibSha512/HashInstanceLibSha512.inf
830 NULL|SecurityPkg/Library/HashInstanceLibSm3/HashInstanceLibSm3.inf
831 }
832!endif
833
834 #
835 # DXE Phase modules
836 #
837 MdeModulePkg/Core/Dxe/DxeMain.inf {
838 <LibraryClasses>
839 NULL|MdeModulePkg/Library/LzmaCustomDecompressLib/LzmaCustomDecompressLib.inf
840 DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
841 }
842
843 MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.inf
844 MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf
845 MdeModulePkg/Universal/PCD/Dxe/Pcd.inf {
846 <LibraryClasses>
847 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
848 }
849
850 MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf
851
852 MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf {
853 <LibraryClasses>
854!if $(SECURE_BOOT_ENABLE) == TRUE
855 NULL|SecurityPkg/Library/DxeImageVerificationLib/DxeImageVerificationLib.inf
856!endif
857!if $(TPM_ENABLE) == TRUE
858 NULL|SecurityPkg/Library/DxeTpmMeasureBootLib/DxeTpmMeasureBootLib.inf
859 NULL|SecurityPkg/Library/DxeTpm2MeasureBootLib/DxeTpm2MeasureBootLib.inf
860!endif
861 }
862
863 MdeModulePkg/Universal/EbcDxe/EbcDxe.inf
864 OvmfPkg/8259InterruptControllerDxe/8259.inf
865 UefiCpuPkg/CpuIo2Dxe/CpuIo2Dxe.inf
866 UefiCpuPkg/CpuDxe/CpuDxe.inf
867 OvmfPkg/8254TimerDxe/8254Timer.inf
868 OvmfPkg/IncompatiblePciDeviceSupportDxe/IncompatiblePciDeviceSupport.inf
869 OvmfPkg/PciHotPlugInitDxe/PciHotPlugInit.inf
870 MdeModulePkg/Bus/Pci/PciHostBridgeDxe/PciHostBridgeDxe.inf {
871 <LibraryClasses>
872 PciHostBridgeLib|OvmfPkg/Library/PciHostBridgeLib/PciHostBridgeLib.inf
873 PciHostBridgeUtilityLib|OvmfPkg/Library/PciHostBridgeUtilityLib/PciHostBridgeUtilityLib.inf
874 NULL|OvmfPkg/Library/PlatformHasIoMmuLib/PlatformHasIoMmuLib.inf
875 }
876 MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf {
877 <LibraryClasses>
878 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
879 }
880 MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystemRuntimeDxe.inf
881 MdeModulePkg/Universal/Metronome/Metronome.inf
882 PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcatRealTimeClockRuntimeDxe.inf
883 MdeModulePkg/Universal/DriverHealthManagerDxe/DriverHealthManagerDxe.inf
884 MdeModulePkg/Universal/BdsDxe/BdsDxe.inf {
885 <LibraryClasses>
886!ifdef $(CSM_ENABLE)
887 NULL|OvmfPkg/Csm/CsmSupportLib/CsmSupportLib.inf
888 NULL|OvmfPkg/Csm/LegacyBootManagerLib/LegacyBootManagerLib.inf
889!endif
890 }
891!ifndef $(VBOX)
892 MdeModulePkg/Logo/LogoDxe.inf
893!else
894 VBoxPkg/Logo/LogoDxe.inf
895!endif
896 MdeModulePkg/Application/UiApp/UiApp.inf {
897 <LibraryClasses>
898 NULL|MdeModulePkg/Library/DeviceManagerUiLib/DeviceManagerUiLib.inf
899 NULL|MdeModulePkg/Library/BootManagerUiLib/BootManagerUiLib.inf
900 NULL|MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootMaintenanceManagerUiLib.inf
901!ifdef $(CSM_ENABLE)
902 NULL|OvmfPkg/Csm/LegacyBootManagerLib/LegacyBootManagerLib.inf
903 NULL|OvmfPkg/Csm/LegacyBootMaintUiLib/LegacyBootMaintUiLib.inf
904!endif
905 }
906 OvmfPkg/QemuKernelLoaderFsDxe/QemuKernelLoaderFsDxe.inf
907 OvmfPkg/VirtioPciDeviceDxe/VirtioPciDeviceDxe.inf
908 OvmfPkg/Virtio10Dxe/Virtio10.inf
909!ifndef $(VBOX)
910 OvmfPkg/VirtioBlkDxe/VirtioBlk.inf
911!endif
912 OvmfPkg/VirtioScsiDxe/VirtioScsi.inf
913!ifndef $(VBOX)
914 OvmfPkg/VirtioRngDxe/VirtioRng.inf
915 OvmfPkg/XenIoPciDxe/XenIoPciDxe.inf
916 OvmfPkg/XenBusDxe/XenBusDxe.inf
917 OvmfPkg/XenPvBlkDxe/XenPvBlkDxe.inf
918!endif
919!if $(PVSCSI_ENABLE) == TRUE
920 OvmfPkg/PvScsiDxe/PvScsiDxe.inf
921!endif
922!if $(MPT_SCSI_ENABLE) == TRUE
923 OvmfPkg/MptScsiDxe/MptScsiDxe.inf
924!endif
925!if $(LSI_SCSI_ENABLE) == TRUE
926 OvmfPkg/LsiScsiDxe/LsiScsiDxe.inf
927!endif
928 MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf
929 MdeModulePkg/Universal/MonotonicCounterRuntimeDxe/MonotonicCounterRuntimeDxe.inf
930 MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf
931 MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf
932 MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf
933 MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.inf {
934 <LibraryClasses>
935 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
936 }
937 MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf
938 MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf {
939 <LibraryClasses>
940 DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
941 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
942 }
943 MdeModulePkg/Universal/PrintDxe/PrintDxe.inf
944 MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf
945 MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf
946 MdeModulePkg/Universal/Disk/RamDiskDxe/RamDiskDxe.inf
947 MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf
948 FatPkg/EnhancedFatDxe/Fat.inf
949 MdeModulePkg/Universal/Disk/UdfDxe/UdfDxe.inf
950 OvmfPkg/VirtioFsDxe/VirtioFsDxe.inf
951 MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf
952 MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf
953 OvmfPkg/SataControllerDxe/SataControllerDxe.inf
954 MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.inf
955 MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBusDxe.inf
956 MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpressDxe.inf
957 MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf
958 MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf
959 MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf
960 MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf
961
962!ifndef $(VBOX)
963!ifndef $(CSM_ENABLE)
964 OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf
965!endif
966 OvmfPkg/QemuRamfbDxe/QemuRamfbDxe.inf
967 OvmfPkg/VirtioGpuDxe/VirtioGpu.inf
968!else
969 MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.inf
970 MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBusDxe.inf
971 MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpressDxe.inf
972 VBoxPkg/VBoxVgaMiniPortDxe/VBoxVgaMiniPortDxe.inf
973 VBoxPkg/VBoxVgaDxe/VBoxVgaDxe.inf {
974 <LibraryClasses>
975 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
976 }
977 VBoxPkg/VBoxFsDxe/VBoxHfs.inf
978 VBoxPkg/VBoxSysTables/VBoxSysTables.inf
979 VBoxPkg/VBoxAppleSim/VBoxAppleSim.inf
980 VBoxPkg/VBoxApfsJmpStartDxe/VBoxApfsJmpStartDxe.inf
981!endif
982
983 #
984 # ISA Support
985 #
986 OvmfPkg/SioBusDxe/SioBusDxe.inf
987 MdeModulePkg/Bus/Pci/PciSioSerialDxe/PciSioSerialDxe.inf
988 MdeModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2KeyboardDxe.inf
989
990 #
991 # SMBIOS Support
992 #
993 MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf {
994 <LibraryClasses>
995 NULL|OvmfPkg/Library/SmbiosVersionLib/DetectSmbiosVersionLib.inf
996 }
997 OvmfPkg/SmbiosPlatformDxe/SmbiosPlatformDxe.inf
998
999 #
1000 # ACPI Support
1001 #
1002 MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf
1003!ifndef $(VBOX)
1004 OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf
1005 OvmfPkg/AcpiTables/AcpiTables.inf
1006 MdeModulePkg/Universal/Acpi/S3SaveStateDxe/S3SaveStateDxe.inf
1007 MdeModulePkg/Universal/Acpi/BootScriptExecutorDxe/BootScriptExecutorDxe.inf
1008!else
1009 MdeModulePkg/Universal/Acpi/AcpiPlatformDxe/AcpiPlatformDxe.inf
1010!endif
1011 MdeModulePkg/Universal/Acpi/BootGraphicsResourceTableDxe/BootGraphicsResourceTableDxe.inf
1012
1013 #
1014 # Network Support
1015 #
1016!include NetworkPkg/NetworkComponents.dsc.inc
1017
1018 NetworkPkg/UefiPxeBcDxe/UefiPxeBcDxe.inf {
1019 <LibraryClasses>
1020 NULL|OvmfPkg/Library/PxeBcPcdProducerLib/PxeBcPcdProducerLib.inf
1021 }
1022
1023!if $(NETWORK_TLS_ENABLE) == TRUE
1024 NetworkPkg/TlsAuthConfigDxe/TlsAuthConfigDxe.inf {
1025 <LibraryClasses>
1026 NULL|OvmfPkg/Library/TlsAuthConfigLib/TlsAuthConfigLib.inf
1027 }
1028!endif
1029 OvmfPkg/VirtioNetDxe/VirtioNet.inf
1030!ifdef $(VBOX)
1031 VBoxPkg/E1kNetDxe/E1kNet.inf
1032!endif
1033
1034 #
1035 # Usb Support
1036 #
1037 MdeModulePkg/Bus/Pci/UhciDxe/UhciDxe.inf
1038 MdeModulePkg/Bus/Pci/EhciDxe/EhciDxe.inf
1039 MdeModulePkg/Bus/Pci/XhciDxe/XhciDxe.inf
1040 MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf
1041 MdeModulePkg/Bus/Usb/UsbKbDxe/UsbKbDxe.inf
1042 MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassStorageDxe.inf
1043
1044!ifdef $(CSM_ENABLE)
1045 OvmfPkg/Csm/BiosThunk/VideoDxe/VideoDxe.inf {
1046 <LibraryClasses>
1047 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
1048 }
1049 OvmfPkg/Csm/LegacyBiosDxe/LegacyBiosDxe.inf
1050 OvmfPkg/Csm/Csm16/Csm16.inf
1051!endif
1052
1053!if $(TOOL_CHAIN_TAG) != "XCODE5"
1054 ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf {
1055 <PcdsFixedAtBuild>
1056 gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
1057 }
1058 ShellPkg/DynamicCommand/HttpDynamicCommand/HttpDynamicCommand.inf {
1059 <PcdsFixedAtBuild>
1060 gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
1061 }
1062 OvmfPkg/LinuxInitrdDynamicShellCommand/LinuxInitrdDynamicShellCommand.inf {
1063 <PcdsFixedAtBuild>
1064 gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
1065 }
1066!endif
1067 ShellPkg/Application/Shell/Shell.inf {
1068 <LibraryClasses>
1069 ShellCommandLib|ShellPkg/Library/UefiShellCommandLib/UefiShellCommandLib.inf
1070 NULL|ShellPkg/Library/UefiShellLevel2CommandsLib/UefiShellLevel2CommandsLib.inf
1071 NULL|ShellPkg/Library/UefiShellLevel1CommandsLib/UefiShellLevel1CommandsLib.inf
1072 NULL|ShellPkg/Library/UefiShellLevel3CommandsLib/UefiShellLevel3CommandsLib.inf
1073 NULL|ShellPkg/Library/UefiShellDriver1CommandsLib/UefiShellDriver1CommandsLib.inf
1074 NULL|ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.inf
1075 NULL|ShellPkg/Library/UefiShellInstall1CommandsLib/UefiShellInstall1CommandsLib.inf
1076 NULL|ShellPkg/Library/UefiShellNetwork1CommandsLib/UefiShellNetwork1CommandsLib.inf
1077!if $(NETWORK_IP6_ENABLE) == TRUE
1078 NULL|ShellPkg/Library/UefiShellNetwork2CommandsLib/UefiShellNetwork2CommandsLib.inf
1079!endif
1080 HandleParsingLib|ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.inf
1081 PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
1082 BcfgCommandLib|ShellPkg/Library/UefiShellBcfgCommandLib/UefiShellBcfgCommandLib.inf
1083
1084 <PcdsFixedAtBuild>
1085 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0xFF
1086 gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
1087 gEfiMdePkgTokenSpaceGuid.PcdUefiLibMaxPrintBufferSize|8000
1088 }
1089
1090!if $(SECURE_BOOT_ENABLE) == TRUE
1091 SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConfigDxe.inf
1092 OvmfPkg/EnrollDefaultKeys/EnrollDefaultKeys.inf
1093!endif
1094
1095 OvmfPkg/PlatformDxe/Platform.inf
1096!ifndef $(VBOX)
1097 OvmfPkg/AmdSevDxe/AmdSevDxe.inf
1098!endif
1099 OvmfPkg/IoMmuDxe/IoMmuDxe.inf
1100
1101!if $(SMM_REQUIRE) == TRUE
1102 OvmfPkg/SmmAccess/SmmAccess2Dxe.inf
1103 OvmfPkg/SmmControl2Dxe/SmmControl2Dxe.inf
1104 OvmfPkg/CpuS3DataDxe/CpuS3DataDxe.inf
1105
1106 #
1107 # SMM Initial Program Load (a DXE_RUNTIME_DRIVER)
1108 #
1109 MdeModulePkg/Core/PiSmmCore/PiSmmIpl.inf
1110
1111 #
1112 # SMM_CORE
1113 #
1114 MdeModulePkg/Core/PiSmmCore/PiSmmCore.inf
1115
1116 #
1117 # Privileged drivers (DXE_SMM_DRIVER modules)
1118 #
1119 OvmfPkg/CpuHotplugSmm/CpuHotplugSmm.inf
1120 UefiCpuPkg/CpuIo2Smm/CpuIo2Smm.inf
1121 MdeModulePkg/Universal/LockBox/SmmLockBox/SmmLockBox.inf {
1122 <LibraryClasses>
1123 LockBoxLib|MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf
1124 }
1125 UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf {
1126 <LibraryClasses>
1127 SmmCpuPlatformHookLib|OvmfPkg/Library/SmmCpuPlatformHookLibQemu/SmmCpuPlatformHookLibQemu.inf
1128 SmmCpuFeaturesLib|OvmfPkg/Library/SmmCpuFeaturesLib/SmmCpuFeaturesLib.inf
1129 }
1130
1131 #
1132 # Variable driver stack (SMM)
1133 #
1134 OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesSmm.inf
1135 MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmm.inf
1136 MdeModulePkg/Universal/Variable/RuntimeDxe/VariableSmm.inf {
1137 <LibraryClasses>
1138 NULL|MdeModulePkg/Library/VarCheckUefiLib/VarCheckUefiLib.inf
1139 NULL|MdeModulePkg/Library/VarCheckPolicyLib/VarCheckPolicyLib.inf
1140 }
1141 MdeModulePkg/Universal/Variable/RuntimeDxe/VariableSmmRuntimeDxe.inf
1142
1143!else
1144
1145 #
1146 # Variable driver stack (non-SMM)
1147 #
1148 OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesRuntimeDxe.inf
1149 OvmfPkg/EmuVariableFvbRuntimeDxe/Fvb.inf {
1150 <LibraryClasses>
1151 PlatformFvbLib|OvmfPkg/Library/EmuVariableFvbLib/EmuVariableFvbLib.inf
1152 }
1153 MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteDxe.inf
1154 MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf {
1155 <LibraryClasses>
1156 NULL|MdeModulePkg/Library/VarCheckUefiLib/VarCheckUefiLib.inf
1157 }
1158!endif
1159
1160 #
1161 # TPM support
1162 #
1163!if $(TPM_ENABLE) == TRUE
1164 SecurityPkg/Tcg/Tcg2Dxe/Tcg2Dxe.inf {
1165 <LibraryClasses>
1166 Tpm2DeviceLib|SecurityPkg/Library/Tpm2DeviceLibRouter/Tpm2DeviceLibRouterDxe.inf
1167 NULL|SecurityPkg/Library/Tpm2DeviceLibDTpm/Tpm2InstanceLibDTpm.inf
1168 HashLib|SecurityPkg/Library/HashLibBaseCryptoRouter/HashLibBaseCryptoRouterDxe.inf
1169 NULL|SecurityPkg/Library/HashInstanceLibSha1/HashInstanceLibSha1.inf
1170 NULL|SecurityPkg/Library/HashInstanceLibSha256/HashInstanceLibSha256.inf
1171 NULL|SecurityPkg/Library/HashInstanceLibSha384/HashInstanceLibSha384.inf
1172 NULL|SecurityPkg/Library/HashInstanceLibSha512/HashInstanceLibSha512.inf
1173 NULL|SecurityPkg/Library/HashInstanceLibSm3/HashInstanceLibSm3.inf
1174 }
1175!if $(TPM_CONFIG_ENABLE) == TRUE
1176 SecurityPkg/Tcg/Tcg2Config/Tcg2ConfigDxe.inf
1177!endif
1178 SecurityPkg/Tcg/TcgDxe/TcgDxe.inf {
1179 <LibraryClasses>
1180 Tpm12DeviceLib|SecurityPkg/Library/Tpm12DeviceLibDTpm/Tpm12DeviceLibDTpm.inf
1181 }
1182!endif
Note: See TracBrowser for help on using the repository browser.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette