VirtualBox

source: vbox/trunk/src/VBox/Devices/EFI/FirmwareNew/OvmfPkg/Microvm/MicrovmX64.dsc@ 108794

Last change on this file since 108794 was 108794, checked in by vboxsync, 2 weeks ago

Devices/EFI/FirmwareNew: Merge edk2-stable202502 from the vendor branch and make it build for the important platforms, bugref:4643

  • Property svn:eol-style set to native
File size: 39.3 KB
Line 
1## @file
2# EFI/Framework Open Virtual Machine Firmware (OVMF) platform
3#
4# Copyright (c) 2006 - 2023, 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 = Microvm
19 PLATFORM_GUID = 55a5d2cc-6ca6-47d1-8f4f-5588d7705194
20 PLATFORM_VERSION = 0.1
21 DSC_SPECIFICATION = 0x00010005
22 OUTPUT_DIRECTORY = Build/MicrovmX64
23 SUPPORTED_ARCHITECTURES = X64
24 BUILD_TARGETS = NOOPT|DEBUG|RELEASE
25 SKUID_IDENTIFIER = DEFAULT
26 FLASH_DEFINITION = OvmfPkg/Microvm/MicrovmX64.fdf
27
28 #
29 # Defines for default states. These can be changed on the command line.
30 # -D FLAG=VALUE
31 #
32 DEFINE SECURE_BOOT_ENABLE = FALSE
33 DEFINE SMM_REQUIRE = FALSE
34 DEFINE SOURCE_DEBUG_ENABLE = FALSE
35
36 #
37 # Shell can be useful for debugging but should not be enabled for production
38 #
39 DEFINE BUILD_SHELL = TRUE
40
41 #
42 # Network definition
43 #
44 DEFINE NETWORK_TLS_ENABLE = FALSE
45 DEFINE NETWORK_IP6_ENABLE = FALSE
46 DEFINE NETWORK_HTTP_BOOT_ENABLE = FALSE
47 DEFINE NETWORK_ALLOW_HTTP_CONNECTIONS = TRUE
48 DEFINE NETWORK_ISCSI_ENABLE = TRUE
49 DEFINE NETWORK_PXE_BOOT_ENABLE = TRUE
50
51!include NetworkPkg/NetworkDefines.dsc.inc
52
53 #
54 # Device drivers
55 #
56 DEFINE PVSCSI_ENABLE = FALSE
57 DEFINE MPT_SCSI_ENABLE = FALSE
58 DEFINE LSI_SCSI_ENABLE = FALSE
59
60 #
61 # Flash size selection. Setting FD_SIZE_IN_KB on the command line directly to
62 # one of the supported values, in place of any of the convenience macros, is
63 # permitted.
64 #
65!ifdef $(FD_SIZE_1MB)
66 DEFINE FD_SIZE_IN_KB = 1024
67!else
68!ifdef $(FD_SIZE_2MB)
69 DEFINE FD_SIZE_IN_KB = 2048
70!else
71!ifdef $(FD_SIZE_4MB)
72 DEFINE FD_SIZE_IN_KB = 4096
73!else
74 DEFINE FD_SIZE_IN_KB = 4096
75!endif
76!endif
77!endif
78
79[BuildOptions]
80 GCC:RELEASE_*_*_CC_FLAGS = -DMDEPKG_NDEBUG
81 INTEL:RELEASE_*_*_CC_FLAGS = /D MDEPKG_NDEBUG
82 MSFT:RELEASE_*_*_CC_FLAGS = /D MDEPKG_NDEBUG
83!if $(TOOL_CHAIN_TAG) != "XCODE5" && $(TOOL_CHAIN_TAG) != "CLANGPDB"
84 GCC:*_*_*_CC_FLAGS = -mno-mmx -mno-sse
85!endif
86!if $(SOURCE_DEBUG_ENABLE) == TRUE
87 MSFT:*_*_X64_GENFW_FLAGS = --keepexceptiontable
88 GCC:*_*_X64_GENFW_FLAGS = --keepexceptiontable
89 INTEL:*_*_X64_GENFW_FLAGS = --keepexceptiontable
90!endif
91 RELEASE_*_*_GENFW_FLAGS = --zero
92
93 #
94 # Disable deprecated APIs.
95 #
96 MSFT:*_*_*_CC_FLAGS = /D DISABLE_NEW_DEPRECATED_INTERFACES
97 INTEL:*_*_*_CC_FLAGS = /D DISABLE_NEW_DEPRECATED_INTERFACES
98 GCC:*_*_*_CC_FLAGS = -D DISABLE_NEW_DEPRECATED_INTERFACES
99
100!include NetworkPkg/NetworkBuildOptions.dsc.inc
101
102[BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER]
103 GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000
104 XCODE:*_*_*_DLINK_FLAGS = -seg1addr 0x1000 -segalign 0x1000
105 XCODE:*_*_*_MTOC_FLAGS = -align 0x1000
106 CLANGPDB:*_*_*_DLINK_FLAGS = /ALIGN:4096
107
108# Force PE/COFF sections to be aligned at 4KB boundaries to support page level
109# protection of DXE_SMM_DRIVER/SMM_CORE modules
110[BuildOptions.common.EDKII.DXE_SMM_DRIVER, BuildOptions.common.EDKII.SMM_CORE]
111 GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000
112 XCODE:*_*_*_DLINK_FLAGS = -seg1addr 0x1000 -segalign 0x1000
113 XCODE:*_*_*_MTOC_FLAGS = -align 0x1000
114 CLANGPDB:*_*_*_DLINK_FLAGS = /ALIGN:4096
115
116################################################################################
117#
118# SKU Identification section - list of all SKU IDs supported by this Platform.
119#
120################################################################################
121[SkuIds]
122 0|DEFAULT
123
124################################################################################
125#
126# Library Class section - list of all Library Classes needed by this Platform.
127#
128################################################################################
129
130!include MdePkg/MdeLibs.dsc.inc
131
132[LibraryClasses]
133 SmmRelocationLib|OvmfPkg/Library/SmmRelocationLib/SmmRelocationLib.inf
134 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
135 TimerLib|MdePkg/Library/SecPeiDxeTimerLibCpu/SecPeiDxeTimerLibCpu.inf
136 ResetSystemLib|OvmfPkg/Library/ResetSystemLib/BaseResetSystemLibMicrovm.inf
137 PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
138 BaseMemoryLib|MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf
139 BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
140 SafeIntLib|MdePkg/Library/BaseSafeIntLib/BaseSafeIntLib.inf
141 TimeBaseLib|EmbeddedPkg/Library/TimeBaseLib/TimeBaseLib.inf
142 BmpSupportLib|MdeModulePkg/Library/BaseBmpSupportLib/BaseBmpSupportLib.inf
143 SynchronizationLib|MdePkg/Library/BaseSynchronizationLib/BaseSynchronizationLib.inf
144 CpuLib|MdePkg/Library/BaseCpuLib/BaseCpuLib.inf
145 PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf
146 PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf
147 CacheMaintenanceLib|MdePkg/Library/BaseCacheMaintenanceLib/BaseCacheMaintenanceLib.inf
148 UefiDecompressLib|MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLib.inf
149 UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf
150 HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf
151 SortLib|MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf
152 UefiBootManagerLib|MdeModulePkg/Library/UefiBootManagerLib/UefiBootManagerLib.inf
153 BootLogoLib|MdeModulePkg/Library/BootLogoLib/BootLogoLib.inf
154 FileExplorerLib|MdeModulePkg/Library/FileExplorerLib/FileExplorerLib.inf
155 CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibNull/DxeCapsuleLibNull.inf
156 DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf
157 DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf
158 PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
159 PciCf8Lib|MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf
160 PciExpressLib|MdePkg/Library/BasePciExpressLib/BasePciExpressLib.inf
161 PciLib|MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf
162 PciSegmentLib|MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf
163 PciCapLib|OvmfPkg/Library/BasePciCapLib/BasePciCapLib.inf
164 PciCapPciSegmentLib|OvmfPkg/Library/BasePciCapPciSegmentLib/BasePciCapPciSegmentLib.inf
165 PciCapPciIoLib|OvmfPkg/Library/UefiPciCapPciIoLib/UefiPciCapPciIoLib.inf
166 IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsicSev.inf
167 OemHookStatusCodeLib|MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf
168 SerialPortLib|PcAtChipsetPkg/Library/SerialIoLib/SerialIoLib.inf
169 MtrrLib|UefiCpuPkg/Library/MtrrLib/MtrrLib.inf
170 MicrocodeLib|UefiCpuPkg/Library/MicrocodeLib/MicrocodeLib.inf
171 CpuPageTableLib|UefiCpuPkg/Library/CpuPageTableLib/CpuPageTableLib.inf
172 UefiLib|MdePkg/Library/UefiLib/UefiLib.inf
173 UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
174 UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
175 UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
176 UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf
177 DevicePathLib|MdePkg/Library/UefiDevicePathLibDevicePathProtocol/UefiDevicePathLibDevicePathProtocol.inf
178 NvVarsFileLib|OvmfPkg/Library/NvVarsFileLib/NvVarsFileLib.inf
179 FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf
180 SecurityManagementLib|MdeModulePkg/Library/DxeSecurityManagementLib/DxeSecurityManagementLib.inf
181 UefiUsbLib|MdePkg/Library/UefiUsbLib/UefiUsbLib.inf
182 SerializeVariablesLib|OvmfPkg/Library/SerializeVariablesLib/SerializeVariablesLib.inf
183 QemuFwCfgLib|OvmfPkg/Library/QemuFwCfgLib/QemuFwCfgDxeLib.inf
184 QemuFwCfgSimpleParserLib|OvmfPkg/Library/QemuFwCfgSimpleParserLib/QemuFwCfgSimpleParserLib.inf
185 VirtioLib|OvmfPkg/Library/VirtioLib/VirtioLib.inf
186 LoadLinuxLib|OvmfPkg/Library/LoadLinuxLib/LoadLinuxLib.inf
187 MemEncryptSevLib|OvmfPkg/Library/BaseMemEncryptSevLib/DxeMemEncryptSevLib.inf
188 CcProbeLib|OvmfPkg/Library/CcProbeLib/DxeCcProbeLib.inf
189 LockBoxLib|OvmfPkg/Library/LockBoxLib/LockBoxBaseLib.inf
190 CustomizedDisplayLib|MdeModulePkg/Library/CustomizedDisplayLib/CustomizedDisplayLib.inf
191 FrameBufferBltLib|MdeModulePkg/Library/FrameBufferBltLib/FrameBufferBltLib.inf
192 MemEncryptTdxLib|OvmfPkg/Library/BaseMemEncryptTdxLib/BaseMemEncryptTdxLib.inf
193 PeiHardwareInfoLib|OvmfPkg/Library/HardwareInfoLib/PeiHardwareInfoLib.inf
194 DxeHardwareInfoLib|OvmfPkg/Library/HardwareInfoLib/DxeHardwareInfoLib.inf
195 ImagePropertiesRecordLib|MdeModulePkg/Library/ImagePropertiesRecordLib/ImagePropertiesRecordLib.inf
196
197!if $(SOURCE_DEBUG_ENABLE) == TRUE
198 PeCoffExtraActionLib|SourceLevelDebugPkg/Library/PeCoffExtraActionLibDebug/PeCoffExtraActionLibDebug.inf
199 DebugCommunicationLib|SourceLevelDebugPkg/Library/DebugCommunicationLibSerialPort/DebugCommunicationLibSerialPort.inf
200!else
201 PeCoffExtraActionLib|MdePkg/Library/BasePeCoffExtraActionLibNull/BasePeCoffExtraActionLibNull.inf
202 DebugAgentLib|MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf
203!endif
204
205 LocalApicLib|UefiCpuPkg/Library/BaseXApicX2ApicLib/BaseXApicX2ApicLib.inf
206 DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf
207
208 IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf
209!if $(NETWORK_TLS_ENABLE) == TRUE
210 OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf
211!else
212 OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf
213!endif
214 RngLib|MdeModulePkg/Library/BaseRngLibTimerLib/BaseRngLibTimerLib.inf
215
216!if $(SECURE_BOOT_ENABLE) == TRUE
217 PlatformSecureLib|OvmfPkg/Library/PlatformSecureLib/PlatformSecureLib.inf
218 AuthVariableLib|SecurityPkg/Library/AuthVariableLib/AuthVariableLib.inf
219 SecureBootVariableLib|SecurityPkg/Library/SecureBootVariableLib/SecureBootVariableLib.inf
220 PlatformPKProtectionLib|SecurityPkg/Library/PlatformPKProtectionLibVarPolicy/PlatformPKProtectionLibVarPolicy.inf
221 SecureBootVariableProvisionLib|SecurityPkg/Library/SecureBootVariableProvisionLib/SecureBootVariableProvisionLib.inf
222!else
223 AuthVariableLib|MdeModulePkg/Library/AuthVariableLibNull/AuthVariableLibNull.inf
224!endif
225 VarCheckLib|MdeModulePkg/Library/VarCheckLib/VarCheckLib.inf
226 VariablePolicyLib|MdeModulePkg/Library/VariablePolicyLib/VariablePolicyLib.inf
227 VariablePolicyHelperLib|MdeModulePkg/Library/VariablePolicyHelperLib/VariablePolicyHelperLib.inf
228 VariableFlashInfoLib|MdeModulePkg/Library/BaseVariableFlashInfoLib/BaseVariableFlashInfoLib.inf
229
230
231 #
232 # Network libraries
233 #
234!include NetworkPkg/NetworkLibs.dsc.inc
235
236!if $(NETWORK_TLS_ENABLE) == TRUE
237 TlsLib|CryptoPkg/Library/TlsLib/TlsLib.inf
238!endif
239
240 ShellCEntryLib|ShellPkg/Library/UefiShellCEntryLib/UefiShellCEntryLib.inf
241 S3BootScriptLib|MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf
242 SmbusLib|MdePkg/Library/BaseSmbusLibNull/BaseSmbusLibNull.inf
243 OrderedCollectionLib|MdePkg/Library/BaseOrderedCollectionRedBlackTreeLib/BaseOrderedCollectionRedBlackTreeLib.inf
244
245 Tcg2PhysicalPresenceLib|OvmfPkg/Library/Tcg2PhysicalPresenceLibNull/DxeTcg2PhysicalPresenceLib.inf
246 TpmMeasurementLib|MdeModulePkg/Library/TpmMeasurementLibNull/TpmMeasurementLibNull.inf
247
248!include OvmfPkg/Include/Dsc/ShellLibs.dsc.inc
249
250[LibraryClasses.common]
251 AmdSvsmLib|OvmfPkg/Library/AmdSvsmLib/AmdSvsmLib.inf
252 BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf
253 CcExitLib|OvmfPkg/Library/CcExitLib/CcExitLib.inf
254 SerialPortLib|MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf
255 PlatformHookLib|MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf
256 FdtLib|EmbeddedPkg/Library/FdtLib/FdtLib.inf
257 VirtioMmioDeviceLib|OvmfPkg/Library/VirtioMmioDeviceLib/VirtioMmioDeviceLib.inf
258 TdxLib|MdePkg/Library/TdxLib/TdxLib.inf
259 TdxMailboxLib|OvmfPkg/Library/TdxMailboxLib/TdxMailboxLibNull.inf
260 TdxHelperLib|OvmfPkg/IntelTdx/TdxHelperLib/TdxHelperLibNull.inf
261
262[LibraryClasses.common.SEC]
263 QemuFwCfgLib|OvmfPkg/Library/QemuFwCfgLib/QemuFwCfgSecLib.inf
264!ifdef $(DEBUG_ON_SERIAL_PORT)
265 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
266!else
267 DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformRomDebugLibIoPort.inf
268!endif
269 ReportStatusCodeLib|MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf
270 ExtractGuidedSectionLib|MdePkg/Library/BaseExtractGuidedSectionLib/BaseExtractGuidedSectionLib.inf
271!if $(SOURCE_DEBUG_ENABLE) == TRUE
272 DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/SecPeiDebugAgentLib.inf
273!endif
274 HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
275 PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf
276 PeiServicesTablePointerLib|MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf
277 MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
278 CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/SecPeiCpuExceptionHandlerLib.inf
279 CcExitLib|OvmfPkg/Library/CcExitLib/SecCcExitLib.inf
280 MemEncryptSevLib|OvmfPkg/Library/BaseMemEncryptSevLib/SecMemEncryptSevLib.inf
281 CcProbeLib|OvmfPkg/Library/CcProbeLib/SecPeiCcProbeLib.inf
282
283[LibraryClasses.common.PEI_CORE]
284 HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
285 PeiServicesTablePointerLib|MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf
286 PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf
287 MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
288 PeiCoreEntryPoint|MdePkg/Library/PeiCoreEntryPoint/PeiCoreEntryPoint.inf
289 ReportStatusCodeLib|MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf
290 OemHookStatusCodeLib|MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf
291 PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.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 PcdLib|MdePkg/Library/PeiPcdLib/PeiPcdLib.inf
298 PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf
299 CcProbeLib|OvmfPkg/Library/CcProbeLib/SecPeiCcProbeLib.inf
300
301[LibraryClasses.common.PEIM]
302 HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
303 PeiServicesTablePointerLib|MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf
304 PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf
305 MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
306 PeimEntryPoint|MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf
307 ReportStatusCodeLib|MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf
308 OemHookStatusCodeLib|MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf
309 PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
310!ifdef $(DEBUG_ON_SERIAL_PORT)
311 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
312!else
313 DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformRomDebugLibIoPort.inf
314!endif
315 PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf
316 ResourcePublicationLib|MdePkg/Library/PeiResourcePublicationLib/PeiResourcePublicationLib.inf
317 ExtractGuidedSectionLib|MdePkg/Library/PeiExtractGuidedSectionLib/PeiExtractGuidedSectionLib.inf
318!if $(SOURCE_DEBUG_ENABLE) == TRUE
319 DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/SecPeiDebugAgentLib.inf
320!endif
321 CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/PeiCpuExceptionHandlerLib.inf
322 MpInitLib|UefiCpuPkg/Library/MpInitLib/PeiMpInitLib.inf
323 QemuFwCfgS3Lib|OvmfPkg/Library/QemuFwCfgS3Lib/PeiQemuFwCfgS3LibFwCfg.inf
324 PcdLib|MdePkg/Library/PeiPcdLib/PeiPcdLib.inf
325 QemuFwCfgLib|OvmfPkg/Library/QemuFwCfgLib/QemuFwCfgPeiLib.inf
326
327 MemEncryptSevLib|OvmfPkg/Library/BaseMemEncryptSevLib/PeiMemEncryptSevLib.inf
328 CcProbeLib|OvmfPkg/Library/CcProbeLib/SecPeiCcProbeLib.inf
329 PlatformInitLib|OvmfPkg/Library/PlatformInitLib/PlatformInitLib.inf
330
331[LibraryClasses.common.DXE_CORE]
332 HobLib|MdePkg/Library/DxeCoreHobLib/DxeCoreHobLib.inf
333 DxeCoreEntryPoint|MdePkg/Library/DxeCoreEntryPoint/DxeCoreEntryPoint.inf
334 MemoryAllocationLib|MdeModulePkg/Library/DxeCoreMemoryAllocationLib/DxeCoreMemoryAllocationLib.inf
335 ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf
336!ifdef $(DEBUG_ON_SERIAL_PORT)
337 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
338!else
339 DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf
340!endif
341 ExtractGuidedSectionLib|MdePkg/Library/DxeExtractGuidedSectionLib/DxeExtractGuidedSectionLib.inf
342!if $(SOURCE_DEBUG_ENABLE) == TRUE
343 DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/DxeDebugAgentLib.inf
344!endif
345 CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/DxeCpuExceptionHandlerLib.inf
346 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
347
348[LibraryClasses.common.DXE_RUNTIME_DRIVER]
349 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
350 ResetSystemLib|OvmfPkg/Library/ResetSystemLib/DxeResetSystemLibMicrovm.inf
351 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
352 DxeCoreEntryPoint|MdePkg/Library/DxeCoreEntryPoint/DxeCoreEntryPoint.inf
353 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
354 ReportStatusCodeLib|MdeModulePkg/Library/RuntimeDxeReportStatusCodeLib/RuntimeDxeReportStatusCodeLib.inf
355!ifdef $(DEBUG_ON_SERIAL_PORT)
356 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
357!else
358 DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf
359!endif
360 UefiRuntimeLib|MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf
361 BaseCryptLib|CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf
362# PciLib|MdePkg/Library/BasePciLibPciExpress/BasePciLibPciExpress.inf
363# PciPcdProducerLib|OvmfPkg/Fdt/FdtPciPcdProducerLib/FdtPciPcdProducerLib.inf
364# PciExpressLib|OvmfPkg/Library/BaseCachingPciExpressLib/BaseCachingPciExpressLib.inf
365 QemuFwCfgS3Lib|OvmfPkg/Library/QemuFwCfgS3Lib/DxeQemuFwCfgS3LibFwCfg.inf
366 VariablePolicyLib|MdeModulePkg/Library/VariablePolicyLib/VariablePolicyLibRuntimeDxe.inf
367
368[LibraryClasses.common.UEFI_DRIVER]
369 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
370 ResetSystemLib|OvmfPkg/Library/ResetSystemLib/DxeResetSystemLibMicrovm.inf
371 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
372 DxeCoreEntryPoint|MdePkg/Library/DxeCoreEntryPoint/DxeCoreEntryPoint.inf
373 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
374 ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf
375!ifdef $(DEBUG_ON_SERIAL_PORT)
376 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
377!else
378 DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf
379!endif
380 UefiScsiLib|MdePkg/Library/UefiScsiLib/UefiScsiLib.inf
381 PciLib|MdePkg/Library/BasePciLibPciExpress/BasePciLibPciExpress.inf
382 PciPcdProducerLib|OvmfPkg/Fdt/FdtPciPcdProducerLib/FdtPciPcdProducerLib.inf
383 PciExpressLib|OvmfPkg/Library/BaseCachingPciExpressLib/BaseCachingPciExpressLib.inf
384
385[LibraryClasses.common.DXE_DRIVER]
386 AcpiPlatformLib|OvmfPkg/Library/AcpiPlatformLib/DxeAcpiPlatformLib.inf
387 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
388 ResetSystemLib|OvmfPkg/Library/ResetSystemLib/DxeResetSystemLibMicrovm.inf
389 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
390 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
391 ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf
392 UefiScsiLib|MdePkg/Library/UefiScsiLib/UefiScsiLib.inf
393!ifdef $(DEBUG_ON_SERIAL_PORT)
394 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
395!else
396 DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf
397!endif
398 PlatformBootManagerLib|OvmfPkg/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf
399 PlatformBmPrintScLib|OvmfPkg/Library/PlatformBmPrintScLib/PlatformBmPrintScLib.inf
400 QemuBootOrderLib|OvmfPkg/Library/QemuBootOrderLib/QemuBootOrderLib.inf
401 CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/DxeCpuExceptionHandlerLib.inf
402 LockBoxLib|OvmfPkg/Library/LockBoxLib/LockBoxDxeLib.inf
403!if $(SOURCE_DEBUG_ENABLE) == TRUE
404 DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/DxeDebugAgentLib.inf
405!endif
406 PciLib|MdePkg/Library/BasePciLibPciExpress/BasePciLibPciExpress.inf
407 PciPcdProducerLib|OvmfPkg/Fdt/FdtPciPcdProducerLib/FdtPciPcdProducerLib.inf
408 PciExpressLib|OvmfPkg/Library/BaseCachingPciExpressLib/BaseCachingPciExpressLib.inf
409 MpInitLib|UefiCpuPkg/Library/MpInitLib/DxeMpInitLib.inf
410 NestedInterruptTplLib|OvmfPkg/Library/NestedInterruptTplLib/NestedInterruptTplLib.inf
411 QemuFwCfgS3Lib|OvmfPkg/Library/QemuFwCfgS3Lib/DxeQemuFwCfgS3LibFwCfg.inf
412 QemuLoadImageLib|OvmfPkg/Library/X86QemuLoadImageLib/X86QemuLoadImageLib.inf
413
414[LibraryClasses.common.UEFI_APPLICATION]
415 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
416 ResetSystemLib|OvmfPkg/Library/ResetSystemLib/DxeResetSystemLibMicrovm.inf
417 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
418 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
419 ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf
420!ifdef $(DEBUG_ON_SERIAL_PORT)
421 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
422!else
423 DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf
424!endif
425 PciLib|MdePkg/Library/BasePciLibPciExpress/BasePciLibPciExpress.inf
426 PciPcdProducerLib|OvmfPkg/Fdt/FdtPciPcdProducerLib/FdtPciPcdProducerLib.inf
427 PciExpressLib|OvmfPkg/Library/BaseCachingPciExpressLib/BaseCachingPciExpressLib.inf
428
429[LibraryClasses.common.DXE_SMM_DRIVER]
430 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
431 ResetSystemLib|OvmfPkg/Library/ResetSystemLib/DxeResetSystemLibMicrovm.inf
432 MemoryAllocationLib|MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf
433 ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf
434 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
435 SmmMemLib|MdePkg/Library/SmmMemLib/SmmMemLib.inf
436 MmServicesTableLib|MdePkg/Library/MmServicesTableLib/MmServicesTableLib.inf
437 SmmServicesTableLib|MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf
438!ifdef $(DEBUG_ON_SERIAL_PORT)
439 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
440!else
441 DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf
442!endif
443 CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/SmmCpuExceptionHandlerLib.inf
444!if $(SOURCE_DEBUG_ENABLE) == TRUE
445 DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/SmmDebugAgentLib.inf
446!endif
447 BaseCryptLib|CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf
448 PciLib|MdePkg/Library/BasePciLibPciExpress/BasePciLibPciExpress.inf
449 PciPcdProducerLib|OvmfPkg/Fdt/FdtPciPcdProducerLib/FdtPciPcdProducerLib.inf
450 PciExpressLib|OvmfPkg/Library/BaseCachingPciExpressLib/BaseCachingPciExpressLib.inf
451
452[LibraryClasses.common.SMM_CORE]
453 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
454 ResetSystemLib|OvmfPkg/Library/ResetSystemLib/DxeResetSystemLibMicrovm.inf
455 SmmCorePlatformHookLib|MdeModulePkg/Library/SmmCorePlatformHookLibNull/SmmCorePlatformHookLibNull.inf
456 MemoryAllocationLib|MdeModulePkg/Library/PiSmmCoreMemoryAllocationLib/PiSmmCoreMemoryAllocationLib.inf
457 ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf
458 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
459 SmmMemLib|MdePkg/Library/SmmMemLib/SmmMemLib.inf
460 SmmServicesTableLib|MdeModulePkg/Library/PiSmmCoreSmmServicesTableLib/PiSmmCoreSmmServicesTableLib.inf
461!ifdef $(DEBUG_ON_SERIAL_PORT)
462 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
463!else
464 DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf
465!endif
466 PciLib|MdePkg/Library/BasePciLibPciExpress/BasePciLibPciExpress.inf
467 PciPcdProducerLib|OvmfPkg/Fdt/FdtPciPcdProducerLib/FdtPciPcdProducerLib.inf
468 PciExpressLib|OvmfPkg/Library/BaseCachingPciExpressLib/BaseCachingPciExpressLib.inf
469
470################################################################################
471#
472# Pcd Section - list of all EDK II PCD Entries defined by this Platform.
473#
474################################################################################
475[PcdsFeatureFlag]
476 gEfiMdeModulePkgTokenSpaceGuid.PcdHiiOsRuntimeSupport|FALSE
477 gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSupportUefiDecompress|FALSE
478 gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSwitchToLongMode|FALSE
479 gEfiMdeModulePkgTokenSpaceGuid.PcdConOutGopSupport|TRUE
480 gEfiMdeModulePkgTokenSpaceGuid.PcdConOutUgaSupport|FALSE
481 gEfiMdeModulePkgTokenSpaceGuid.PcdInstallAcpiSdtProtocol|TRUE
482!if $(SECURE_BOOT_ENABLE) == TRUE
483 gUefiOvmfPkgTokenSpaceGuid.PcdSecureBootSupported|TRUE
484 gEfiMdeModulePkgTokenSpaceGuid.PcdRequireSelfSignedPk|TRUE
485!endif
486
487[PcdsFixedAtBuild]
488 gEfiMdeModulePkgTokenSpaceGuid.PcdStatusCodeMemorySize|1
489 gEfiMdeModulePkgTokenSpaceGuid.PcdResetOnMemoryTypeInformationChange|FALSE
490 gEfiMdePkgTokenSpaceGuid.PcdMaximumGuidedExtractHandler|0x10
491 gEfiMdePkgTokenSpaceGuid.PcdMaximumLinkedListLength|0
492!if ($(FD_SIZE_IN_KB) == 1024) || ($(FD_SIZE_IN_KB) == 2048)
493 gEfiMdeModulePkgTokenSpaceGuid.PcdMaxVariableSize|0x2000
494 gEfiMdeModulePkgTokenSpaceGuid.PcdMaxAuthVariableSize|0x2800
495!if $(NETWORK_TLS_ENABLE) == FALSE
496 # match PcdFlashNvStorageVariableSize purely for convenience
497 gEfiMdeModulePkgTokenSpaceGuid.PcdVariableStoreSize|0xe000
498!endif
499!endif
500!if $(FD_SIZE_IN_KB) == 4096
501 gEfiMdeModulePkgTokenSpaceGuid.PcdMaxVariableSize|0x8400
502 gEfiMdeModulePkgTokenSpaceGuid.PcdMaxAuthVariableSize|0x8400
503!if $(NETWORK_TLS_ENABLE) == FALSE
504 # match PcdFlashNvStorageVariableSize purely for convenience
505 gEfiMdeModulePkgTokenSpaceGuid.PcdVariableStoreSize|0x40000
506!endif
507!endif
508!if $(NETWORK_TLS_ENABLE) == TRUE
509 gEfiMdeModulePkgTokenSpaceGuid.PcdVariableStoreSize|0x80000
510 gEfiMdeModulePkgTokenSpaceGuid.PcdMaxVolatileVariableSize|0x40000
511!endif
512
513 gEfiMdeModulePkgTokenSpaceGuid.PcdVpdBaseAddress|0x0
514 gEfiMdeModulePkgTokenSpaceGuid.PcdStatusCodeUseSerial|FALSE
515 gEfiMdeModulePkgTokenSpaceGuid.PcdStatusCodeUseMemory|TRUE
516
517 gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x07
518
519 # DEBUG_INIT 0x00000001 // Initialization
520 # DEBUG_WARN 0x00000002 // Warnings
521 # DEBUG_LOAD 0x00000004 // Load events
522 # DEBUG_FS 0x00000008 // EFI File system
523 # DEBUG_POOL 0x00000010 // Alloc & Free (pool)
524 # DEBUG_PAGE 0x00000020 // Alloc & Free (page)
525 # DEBUG_INFO 0x00000040 // Informational debug messages
526 # DEBUG_DISPATCH 0x00000080 // PEI/DXE/SMM Dispatchers
527 # DEBUG_VARIABLE 0x00000100 // Variable
528 # DEBUG_BM 0x00000400 // Boot Manager
529 # DEBUG_BLKIO 0x00001000 // BlkIo Driver
530 # DEBUG_NET 0x00004000 // SNP Driver
531 # DEBUG_UNDI 0x00010000 // UNDI Driver
532 # DEBUG_LOADFILE 0x00020000 // LoadFile
533 # DEBUG_EVENT 0x00080000 // Event messages
534 # DEBUG_GCD 0x00100000 // Global Coherency Database changes
535 # DEBUG_CACHE 0x00200000 // Memory range cachability changes
536 # DEBUG_VERBOSE 0x00400000 // Detailed debug messages that may
537 # // significantly impact boot performance
538 # DEBUG_ERROR 0x80000000 // Error
539 gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x8000004F
540
541!if $(SOURCE_DEBUG_ENABLE) == TRUE
542 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x17
543!else
544 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x2F
545!endif
546
547!if $(SOURCE_DEBUG_ENABLE) == TRUE
548 gEfiSourceLevelDebugPkgTokenSpaceGuid.PcdDebugLoadImageMethod|0x2
549!endif
550
551 #
552 # The NumberOfPages values below are ad-hoc. They are updated sporadically at
553 # best (please refer to git-blame for past updates). The values capture a set
554 # of BIN hints that made sense at a particular time, for some (now likely
555 # unknown) workloads / boot paths.
556 #
557 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiACPIMemoryNVS|0x80
558 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiACPIReclaimMemory|0x10
559 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiReservedMemoryType|0x80
560 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiRuntimeServicesCode|0x100
561 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiRuntimeServicesData|0x100
562
563 # use 1G pages
564 gEfiMdeModulePkgTokenSpaceGuid.PcdUse1GPageTable|TRUE
565
566 #
567 # Network Pcds
568 #
569!include NetworkPkg/NetworkFixedPcds.dsc.inc
570
571 gEfiShellPkgTokenSpaceGuid.PcdShellFileOperationSize|0x20000
572
573 # Point to the MdeModulePkg/Application/UiApp/UiApp.inf
574 gEfiMdeModulePkgTokenSpaceGuid.PcdBootManagerMenuFile|{ 0x21, 0xaa, 0x2c, 0x46, 0x14, 0x76, 0x03, 0x45, 0x83, 0x6e, 0x8a, 0xb6, 0xf4, 0x66, 0x23, 0x31 }
575
576 # microvm serial port^M
577 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialUseMmio|FALSE
578 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialPciDeviceInfo|{0xFF}
579 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase|0x3f8
580
581 #
582 # PcdFirstTimeWakeUpAPsBySipi determines whether to employ
583 # SIPI instead of the INIT-SIPI-SIPI sequence during APs
584 # initialization. Deactivate this parameter to preserve
585 # the original execution of INIT-SIPI-SIPI.
586 #
587 gUefiCpuPkgTokenSpaceGuid.PcdFirstTimeWakeUpAPsBySipi|FALSE
588
589################################################################################
590#
591# Pcd Dynamic Section - list of all EDK II PCD Entries defined by this Platform
592#
593################################################################################
594
595[PcdsDynamicDefault]
596 # only set when
597 # ($(SMM_REQUIRE) == FALSE)
598 gEfiMdeModulePkgTokenSpaceGuid.PcdEmuVariableNvStoreReserved|0
599
600 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase64|0
601 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase64|0
602 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase64|0
603 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase|0
604 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase|0
605 gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiS3Enable|FALSE
606 gUefiOvmfPkgTokenSpaceGuid.PcdOvmfHostBridgePciDevId|0
607 gUefiOvmfPkgTokenSpaceGuid.PcdPciIoBase|0x0
608 gUefiOvmfPkgTokenSpaceGuid.PcdPciIoSize|0x0
609 gUefiOvmfPkgTokenSpaceGuid.PcdPciMmio32Base|0x0
610 gUefiOvmfPkgTokenSpaceGuid.PcdPciMmio32Size|0x0
611 gUefiOvmfPkgTokenSpaceGuid.PcdPciMmio64Base|0x0
612 gUefiOvmfPkgTokenSpaceGuid.PcdPciMmio64Size|0x800000000
613
614 gEfiMdePkgTokenSpaceGuid.PcdFSBClock|1000000000
615 gEfiMdePkgTokenSpaceGuid.PcdPlatformBootTimeOut|0
616
617 # set PcdPciExpressBaseAddress to MAX_UINT64, which signifies that this
618 # PCD and PcdPciDisableBusEnumeration below have not been assigned yet
619 gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0xFFFFFFFFFFFFFFFF
620 gEfiMdePkgTokenSpaceGuid.PcdPciIoTranslation|0x0
621 gEfiMdeModulePkgTokenSpaceGuid.PcdPciDisableBusEnumeration|TRUE
622
623 # Set video resolution for text setup.
624 gEfiMdeModulePkgTokenSpaceGuid.PcdSetupVideoHorizontalResolution|640
625 gEfiMdeModulePkgTokenSpaceGuid.PcdSetupVideoVerticalResolution|480
626
627 gEfiMdeModulePkgTokenSpaceGuid.PcdSmbiosVersion|0x0208
628 gEfiMdeModulePkgTokenSpaceGuid.PcdSmbiosDocRev|0x0
629 gUefiOvmfPkgTokenSpaceGuid.PcdQemuSmbiosValidated|FALSE
630
631 # Noexec settings for DXE.
632 gEfiMdeModulePkgTokenSpaceGuid.PcdSetNxForStack|FALSE
633
634 # UefiCpuPkg PCDs related to initial AP bringup and general AP management.
635 gUefiCpuPkgTokenSpaceGuid.PcdCpuMaxLogicalProcessorNumber|64
636 gUefiCpuPkgTokenSpaceGuid.PcdCpuBootLogicalProcessorNumber|0
637
638 # Set memory encryption mask
639 gEfiMdeModulePkgTokenSpaceGuid.PcdPteMemoryEncryptionAddressOrMask|0x0
640
641 # Set Tdx shared bit mask
642 gEfiMdeModulePkgTokenSpaceGuid.PcdTdxSharedBitMask|0x0
643
644 # Set SEV-ES defaults
645 gEfiMdeModulePkgTokenSpaceGuid.PcdGhcbBase|0
646 gEfiMdeModulePkgTokenSpaceGuid.PcdGhcbSize|0
647 gUefiCpuPkgTokenSpaceGuid.PcdSevEsIsEnabled|0
648
649 gEfiSecurityPkgTokenSpaceGuid.PcdOptionRomImageVerificationPolicy|0x00
650
651!include OvmfPkg/Include/Dsc/OvmfDisplayPcds.dsc.inc
652
653!include NetworkPkg/NetworkDynamicPcds.dsc.inc
654
655 # Set ConfidentialComputing defaults
656 gEfiMdePkgTokenSpaceGuid.PcdConfidentialComputingGuestAttr|0
657
658################################################################################
659#
660# Components Section - list of all EDK II Modules needed by this Platform.
661#
662################################################################################
663[Components]
664 OvmfPkg/ResetVector/ResetVector.inf
665
666 #
667 # SEC Phase modules
668 #
669 OvmfPkg/Sec/SecMain.inf {
670 <LibraryClasses>
671 NULL|MdeModulePkg/Library/LzmaCustomDecompressLib/LzmaCustomDecompressLib.inf
672 }
673
674 #
675 # PEI Phase modules
676 #
677 MdeModulePkg/Core/Pei/PeiMain.inf
678 MdeModulePkg/Universal/PCD/Pei/Pcd.inf {
679 <LibraryClasses>
680 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
681 }
682 MdeModulePkg/Universal/ReportStatusCodeRouter/Pei/ReportStatusCodeRouterPei.inf {
683 <LibraryClasses>
684 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
685 }
686 MdeModulePkg/Universal/StatusCodeHandler/Pei/StatusCodeHandlerPei.inf {
687 <LibraryClasses>
688 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
689 }
690 MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf
691
692 OvmfPkg/PlatformPei/PlatformPei.inf
693
694 UefiCpuPkg/Universal/Acpi/S3Resume2Pei/S3Resume2Pei.inf
695 UefiCpuPkg/CpuMpPei/CpuMpPei.inf
696
697 #
698 # DXE Phase modules
699 #
700 MdeModulePkg/Core/Dxe/DxeMain.inf {
701 <LibraryClasses>
702 NULL|MdeModulePkg/Library/LzmaCustomDecompressLib/LzmaCustomDecompressLib.inf
703 DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
704 }
705
706 MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.inf
707 MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf
708 MdeModulePkg/Universal/PCD/Dxe/Pcd.inf {
709 <LibraryClasses>
710 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
711 }
712
713 MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf
714
715 MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf {
716 <LibraryClasses>
717!if $(SECURE_BOOT_ENABLE) == TRUE
718 NULL|SecurityPkg/Library/DxeImageVerificationLib/DxeImageVerificationLib.inf
719!endif
720!include OvmfPkg/Include/Dsc/OvmfTpmSecurityStub.dsc.inc
721 }
722
723 MdeModulePkg/Universal/EbcDxe/EbcDxe.inf
724 OvmfPkg/LocalApicTimerDxe/LocalApicTimerDxe.inf
725 UefiCpuPkg/CpuIo2Dxe/CpuIo2Dxe.inf
726 UefiCpuPkg/CpuDxe/CpuDxe.inf
727 OvmfPkg/IncompatiblePciDeviceSupportDxe/IncompatiblePciDeviceSupport.inf
728 OvmfPkg/PciHotPlugInitDxe/PciHotPlugInit.inf
729 MdeModulePkg/Bus/Pci/PciHostBridgeDxe/PciHostBridgeDxe.inf {
730 <LibraryClasses>
731 PciHostBridgeLib|OvmfPkg/Fdt/FdtPciHostBridgeLib/FdtPciHostBridgeLib.inf
732 PciHostBridgeUtilityLib|OvmfPkg/Library/PciHostBridgeUtilityLib/PciHostBridgeUtilityLib.inf
733 NULL|OvmfPkg/Library/PlatformHasIoMmuLib/PlatformHasIoMmuLib.inf
734 }
735 MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf {
736 <LibraryClasses>
737 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
738 }
739 MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystemRuntimeDxe.inf
740 MdeModulePkg/Universal/Metronome/Metronome.inf
741 PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcatRealTimeClockRuntimeDxe.inf
742 MdeModulePkg/Universal/DriverHealthManagerDxe/DriverHealthManagerDxe.inf
743 MdeModulePkg/Universal/BdsDxe/BdsDxe.inf {
744 <LibraryClasses>
745 XenPlatformLib|OvmfPkg/Library/XenPlatformLib/XenPlatformLib.inf
746 }
747 MdeModulePkg/Logo/LogoDxe.inf
748 MdeModulePkg/Application/UiApp/UiApp.inf {
749 <LibraryClasses>
750 NULL|MdeModulePkg/Library/DeviceManagerUiLib/DeviceManagerUiLib.inf
751 NULL|MdeModulePkg/Library/BootManagerUiLib/BootManagerUiLib.inf
752 NULL|MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootMaintenanceManagerUiLib.inf
753 }
754 OvmfPkg/QemuKernelLoaderFsDxe/QemuKernelLoaderFsDxe.inf {
755 <LibraryClasses>
756 NULL|OvmfPkg/Library/BlobVerifierLibNull/BlobVerifierLibNull.inf
757 }
758 OvmfPkg/VirtioPciDeviceDxe/VirtioPciDeviceDxe.inf
759 OvmfPkg/Virtio10Dxe/Virtio10.inf
760 OvmfPkg/VirtioBlkDxe/VirtioBlk.inf
761 OvmfPkg/VirtioScsiDxe/VirtioScsi.inf
762 OvmfPkg/VirtioSerialDxe/VirtioSerial.inf
763 MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf
764 MdeModulePkg/Universal/MonotonicCounterRuntimeDxe/MonotonicCounterRuntimeDxe.inf
765 MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf
766 MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf
767 MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf
768 MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.inf {
769 <LibraryClasses>
770 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
771 }
772 MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf
773 MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf {
774 <LibraryClasses>
775 DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
776 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
777 }
778 MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf
779 MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf
780 MdeModulePkg/Universal/Disk/RamDiskDxe/RamDiskDxe.inf
781 MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf
782 FatPkg/EnhancedFatDxe/Fat.inf
783 MdeModulePkg/Universal/Disk/UdfDxe/UdfDxe.inf
784 OvmfPkg/VirtioFsDxe/VirtioFsDxe.inf
785 MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf
786 MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf
787 MdeModulePkg/Bus/Pci/SataControllerDxe/SataControllerDxe.inf
788 MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.inf
789 MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBusDxe.inf
790 MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpressDxe.inf
791 MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf
792 MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf
793 MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf
794
795 OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf
796 OvmfPkg/QemuRamfbDxe/QemuRamfbDxe.inf
797 OvmfPkg/VirtioGpuDxe/VirtioGpu.inf
798
799 #
800 # ISA Support
801 #
802 MdeModulePkg/Universal/SerialDxe/SerialDxe.inf
803
804 #
805 # device tree
806 #
807 EmbeddedPkg/Drivers/FdtClientDxe/FdtClientDxe.inf
808 OvmfPkg/Fdt/VirtioFdtDxe/VirtioFdtDxe.inf
809
810 #
811 # SMBIOS Support
812 #
813 MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf {
814 <LibraryClasses>
815 NULL|OvmfPkg/Library/SmbiosVersionLib/DetectSmbiosVersionLib.inf
816 }
817 OvmfPkg/SmbiosPlatformDxe/SmbiosPlatformDxe.inf
818
819 #
820 # ACPI Support
821 #
822 MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf
823 OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf
824 MdeModulePkg/Universal/Acpi/S3SaveStateDxe/S3SaveStateDxe.inf
825 MdeModulePkg/Universal/Acpi/BootScriptExecutorDxe/BootScriptExecutorDxe.inf
826 MdeModulePkg/Universal/Acpi/BootGraphicsResourceTableDxe/BootGraphicsResourceTableDxe.inf
827
828 #
829 # Network Support
830 #
831!include NetworkPkg/NetworkComponents.dsc.inc
832!include OvmfPkg/Include/Dsc/NetworkComponents.dsc.inc
833
834 #
835 # Usb Support
836 #
837 MdeModulePkg/Bus/Pci/UhciDxe/UhciDxe.inf
838 MdeModulePkg/Bus/Pci/EhciDxe/EhciDxe.inf
839 MdeModulePkg/Bus/Pci/XhciDxe/XhciDxe.inf
840 MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf
841 MdeModulePkg/Bus/Usb/UsbKbDxe/UsbKbDxe.inf
842 MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassStorageDxe.inf
843
844!include OvmfPkg/Include/Dsc/ShellComponents.dsc.inc
845!include OvmfPkg/Include/Dsc/OvmfRngComponents.dsc.inc
846
847!if $(SECURE_BOOT_ENABLE) == TRUE
848 SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConfigDxe.inf
849 OvmfPkg/EnrollDefaultKeys/EnrollDefaultKeys.inf
850!endif
851
852 OvmfPkg/PlatformDxe/Platform.inf
853 OvmfPkg/IoMmuDxe/IoMmuDxe.inf
854
855 #
856 # Variable driver stack (non-SMM)
857 #
858 OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesRuntimeDxe.inf
859 OvmfPkg/EmuVariableFvbRuntimeDxe/Fvb.inf {
860 <LibraryClasses>
861 PlatformFvbLib|OvmfPkg/Library/EmuVariableFvbLib/EmuVariableFvbLib.inf
862 }
863 MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteDxe.inf
864 MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf {
865 <LibraryClasses>
866 NULL|MdeModulePkg/Library/VarCheckUefiLib/VarCheckUefiLib.inf
867 }
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