]> git.proxmox.com Git - mirror_edk2.git/blame - OvmfPkg/OvmfPkgIa32X64.dsc
OvmfPkg/PlatformPei: Set memory encryption PCD when SEV is enabled
[mirror_edk2.git] / OvmfPkg / OvmfPkgIa32X64.dsc
CommitLineData
7b202cb0 1## @file\r
49ba9447 2# EFI/Framework Open Virtual Machine Firmware (OVMF) platform\r
3#\r
4b2fb798 4# Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR>\r
a6d594c5 5# (C) Copyright 2016 Hewlett Packard Enterprise Development LP<BR>\r
49ba9447 6#\r
56d7640a 7# This program and the accompanying materials\r
49ba9447 8# are licensed and made available under the terms and conditions of the BSD License\r
9# which accompanies this distribution. The full text of the license may be found at\r
10# http://opensource.org/licenses/bsd-license.php\r
11#\r
12# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
13# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
14#\r
7b202cb0 15##\r
49ba9447 16\r
17################################################################################\r
18#\r
19# Defines Section - statements that will be processed to create a Makefile.\r
20#\r
21################################################################################\r
22[Defines]\r
23 PLATFORM_NAME = Ovmf\r
24 PLATFORM_GUID = 5a9e7754-d81b-49ea-85ad-69eaa7b1539b\r
25 PLATFORM_VERSION = 0.1\r
713b7b5e 26 DSC_SPECIFICATION = 0x00010005\r
49ba9447 27 OUTPUT_DIRECTORY = Build/Ovmf3264\r
28 SUPPORTED_ARCHITECTURES = IA32|X64\r
27214228 29 BUILD_TARGETS = NOOPT|DEBUG|RELEASE\r
49ba9447 30 SKUID_IDENTIFIER = DEFAULT\r
31 FLASH_DEFINITION = OvmfPkg/OvmfPkgIa32X64.fdf\r
32\r
e05061c5 33 #\r
34 # Defines for default states. These can be changed on the command line.\r
35 # -D FLAG=VALUE\r
36 #\r
37 DEFINE SECURE_BOOT_ENABLE = FALSE\r
36c6413f 38 DEFINE NETWORK_IP6_ENABLE = FALSE\r
ab44a6e8 39 DEFINE HTTP_BOOT_ENABLE = FALSE\r
1f695483 40 DEFINE SMM_REQUIRE = FALSE\r
315d9d08 41 DEFINE TLS_ENABLE = FALSE\r
e05061c5 42\r
21027073
LE
43 #\r
44 # Flash size selection. Setting FD_SIZE_IN_KB on the command line directly to\r
45 # one of the supported values, in place of any of the convenience macros, is\r
46 # permitted.\r
47 #\r
48!ifdef $(FD_SIZE_1MB)\r
49 DEFINE FD_SIZE_IN_KB = 1024\r
50!else\r
51!ifdef $(FD_SIZE_2MB)\r
52 DEFINE FD_SIZE_IN_KB = 2048\r
b24fca05
LE
53!else\r
54!ifdef $(FD_SIZE_4MB)\r
55 DEFINE FD_SIZE_IN_KB = 4096\r
21027073 56!else\r
1c47fcd4 57 DEFINE FD_SIZE_IN_KB = 4096\r
21027073
LE
58!endif\r
59!endif\r
b24fca05 60!endif\r
21027073 61\r
0bc7e56d 62[BuildOptions]\r
0b5a5022 63 GCC:*_UNIXGCC_*_CC_FLAGS = -DMDEPKG_NDEBUG\r
152d9a6b 64 GCC:RELEASE_*_*_CC_FLAGS = -DMDEPKG_NDEBUG\r
65 INTEL:RELEASE_*_*_CC_FLAGS = /D MDEPKG_NDEBUG\r
66 MSFT:RELEASE_*_*_CC_FLAGS = /D MDEPKG_NDEBUG\r
4a8266f5 67 GCC:*_*_*_CC_FLAGS = -mno-mmx -mno-sse\r
bbcafc44 68!ifdef $(SOURCE_DEBUG_ENABLE)\r
69 MSFT:*_*_X64_GENFW_FLAGS = --keepexceptiontable\r
70 GCC:*_*_X64_GENFW_FLAGS = --keepexceptiontable\r
71 INTEL:*_*_X64_GENFW_FLAGS = --keepexceptiontable\r
72!endif\r
ddd89cd5 73\r
b78736bd
LE
74 #\r
75 # Disable deprecated APIs.\r
76 #\r
77 MSFT:*_*_*_CC_FLAGS = /D DISABLE_NEW_DEPRECATED_INTERFACES\r
78 INTEL:*_*_*_CC_FLAGS = /D DISABLE_NEW_DEPRECATED_INTERFACES\r
79 GCC:*_*_*_CC_FLAGS = -D DISABLE_NEW_DEPRECATED_INTERFACES\r
80\r
ddd89cd5
AB
81[BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER]\r
82 GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000\r
01e95975 83 XCODE:*_*_*_DLINK_FLAGS =\r
aa47e529 84\r
2f790bcb
JY
85# Force PE/COFF sections to be aligned at 4KB boundaries to support page level\r
86# protection of DXE_SMM_DRIVER/SMM_CORE modules\r
87[BuildOptions.common.EDKII.DXE_SMM_DRIVER, BuildOptions.common.EDKII.SMM_CORE]\r
88 GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000\r
01e95975 89 XCODE:*_*_*_DLINK_FLAGS =\r
2f790bcb 90\r
49ba9447 91################################################################################\r
92#\r
93# SKU Identification section - list of all SKU IDs supported by this Platform.\r
94#\r
95################################################################################\r
96[SkuIds]\r
97 0|DEFAULT\r
98\r
99################################################################################\r
100#\r
101# Library Class section - list of all Library Classes needed by this Platform.\r
102#\r
103################################################################################\r
7b202cb0 104[LibraryClasses]\r
49ba9447 105 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf\r
170ef2d9 106 TimerLib|OvmfPkg/Library/AcpiTimerLib/BaseAcpiTimerLib.inf\r
49ba9447 107 PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf\r
4a8266f5 108 BaseMemoryLib|MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf\r
49ba9447 109 BaseLib|MdePkg/Library/BaseLib/BaseLib.inf\r
110 SynchronizationLib|MdePkg/Library/BaseSynchronizationLib/BaseSynchronizationLib.inf\r
111 CpuLib|MdePkg/Library/BaseCpuLib/BaseCpuLib.inf\r
112 PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf\r
113 PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf\r
49ba9447 114 CacheMaintenanceLib|MdePkg/Library/BaseCacheMaintenanceLib/BaseCacheMaintenanceLib.inf\r
115 UefiDecompressLib|MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLib.inf\r
116 UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf\r
117 HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf\r
79c098b6 118 SortLib|MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf\r
79c098b6 119 UefiBootManagerLib|MdeModulePkg/Library/UefiBootManagerLib/UefiBootManagerLib.inf\r
a3cd5cd5 120 BootLogoLib|MdeModulePkg/Library/BootLogoLib/BootLogoLib.inf\r
79c098b6 121 FileExplorerLib|MdeModulePkg/Library/FileExplorerLib/FileExplorerLib.inf\r
49ba9447 122 CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibNull/DxeCapsuleLibNull.inf\r
123 DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf\r
cd455669 124 DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf\r
49ba9447 125 PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf\r
126 PciCf8Lib|MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf\r
c47ed6fc 127 PciExpressLib|MdePkg/Library/BasePciExpressLib/BasePciExpressLib.inf\r
49ba9447 128 PciLib|MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf\r
75f45331 129 PciSegmentLib|MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf\r
97353a9c 130 IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsicSev.inf\r
1630c6df 131 OemHookStatusCodeLib|MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf\r
49ba9447 132 SerialPortLib|PcAtChipsetPkg/Library/SerialIoLib/SerialIoLib.inf\r
133 MtrrLib|UefiCpuPkg/Library/MtrrLib/MtrrLib.inf\r
86fef5b4 134 UefiLib|MdePkg/Library/UefiLib/UefiLib.inf\r
135 UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf\r
136 UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf\r
137 UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf\r
138 UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf\r
863986b3 139 DevicePathLib|MdePkg/Library/UefiDevicePathLibDevicePathProtocol/UefiDevicePathLibDevicePathProtocol.inf\r
14b21de9 140 NvVarsFileLib|OvmfPkg/Library/NvVarsFileLib/NvVarsFileLib.inf\r
ae591c14 141 FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf\r
284af948 142 UefiCpuLib|UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.inf\r
8273af4e 143 SecurityManagementLib|MdeModulePkg/Library/DxeSecurityManagementLib/DxeSecurityManagementLib.inf\r
7416f4eb 144 NetLib|MdeModulePkg/Library/DxeNetLib/DxeNetLib.inf\r
145 IpIoLib|MdeModulePkg/Library/DxeIpIoLib/DxeIpIoLib.inf\r
146 UdpIoLib|MdeModulePkg/Library/DxeUdpIoLib/DxeUdpIoLib.inf\r
147 DpcLib|MdeModulePkg/Library/DxeDpcLib/DxeDpcLib.inf\r
689562cd 148 UefiUsbLib|MdePkg/Library/UefiUsbLib/UefiUsbLib.inf\r
b043ebc2 149 SerializeVariablesLib|OvmfPkg/Library/SerializeVariablesLib/SerializeVariablesLib.inf\r
f1ec65ba 150 QemuFwCfgLib|OvmfPkg/Library/QemuFwCfgLib/QemuFwCfgLib.inf\r
263559b8 151 VirtioLib|OvmfPkg/Library/VirtioLib/VirtioLib.inf\r
3c0a051f 152 LoadLinuxLib|OvmfPkg/Library/LoadLinuxLib/LoadLinuxLib.inf\r
a1f22614 153 MemEncryptSevLib|OvmfPkg/Library/BaseMemEncryptSevLib/BaseMemEncryptSevLib.inf\r
67d86594 154!if $(SMM_REQUIRE) == FALSE\r
6a7cba79 155 LockBoxLib|OvmfPkg/Library/LockBoxLib/LockBoxBaseLib.inf\r
67d86594 156!endif\r
56af21cb 157 CustomizedDisplayLib|MdeModulePkg/Library/CustomizedDisplayLib/CustomizedDisplayLib.inf\r
ead94b1f 158 FrameBufferBltLib|MdeModulePkg/Library/FrameBufferBltLib/FrameBufferBltLib.inf\r
c6efcc2a 159\r
160!ifdef $(SOURCE_DEBUG_ENABLE)\r
161 PeCoffExtraActionLib|SourceLevelDebugPkg/Library/PeCoffExtraActionLibDebug/PeCoffExtraActionLibDebug.inf\r
162 DebugCommunicationLib|SourceLevelDebugPkg/Library/DebugCommunicationLibSerialPort/DebugCommunicationLibSerialPort.inf\r
163!else\r
42a83e80 164 PeCoffExtraActionLib|MdePkg/Library/BasePeCoffExtraActionLibNull/BasePeCoffExtraActionLibNull.inf\r
165 DebugAgentLib|MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf\r
c6efcc2a 166!endif\r
152d9a6b 167\r
7ca30a6a 168 ResetSystemLib|OvmfPkg/Library/ResetSystemLib/ResetSystemLib.inf\r
decb365b 169 LocalApicLib|UefiCpuPkg/Library/BaseXApicX2ApicLib/BaseXApicX2ApicLib.inf\r
8cee3de7 170 DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf\r
171\r
8cee3de7 172 IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf\r
df453e1b 173!if $(TLS_ENABLE) == TRUE\r
8cee3de7 174 OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf\r
df453e1b
LE
175!else\r
176 OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf\r
177!endif\r
6d0f8941
GL
178\r
179!if $(SECURE_BOOT_ENABLE) == TRUE\r
180 PlatformSecureLib|OvmfPkg/Library/PlatformSecureLib/PlatformSecureLib.inf\r
0d28d286 181 TpmMeasurementLib|SecurityPkg/Library/DxeTpmMeasurementLib/DxeTpmMeasurementLib.inf\r
285542eb 182 AuthVariableLib|SecurityPkg/Library/AuthVariableLib/AuthVariableLib.inf\r
285542eb
SZ
183!else\r
184 TpmMeasurementLib|MdeModulePkg/Library/TpmMeasurementLibNull/TpmMeasurementLibNull.inf\r
185 AuthVariableLib|MdeModulePkg/Library/AuthVariableLibNull/AuthVariableLibNull.inf\r
8cee3de7 186!endif\r
68ef1ad7 187 VarCheckLib|MdeModulePkg/Library/VarCheckLib/VarCheckLib.inf\r
8cee3de7 188\r
32e22f20
GL
189!if $(NETWORK_IP6_ENABLE) == TRUE\r
190 TcpIoLib|MdeModulePkg/Library/DxeTcpIoLib/DxeTcpIoLib.inf\r
191!endif\r
192\r
ab44a6e8
GCPL
193!if $(HTTP_BOOT_ENABLE) == TRUE\r
194 HttpLib|MdeModulePkg/Library/DxeHttpLib/DxeHttpLib.inf\r
195!endif\r
196\r
315d9d08
GL
197!if $(TLS_ENABLE) == TRUE\r
198 TlsLib|CryptoPkg/Library/TlsLib/TlsLib.inf\r
199!endif\r
200\r
b017b1b2
LE
201 S3BootScriptLib|MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf\r
202 SmbusLib|MdePkg/Library/BaseSmbusLibNull/BaseSmbusLibNull.inf\r
48cc4d0c 203 OrderedCollectionLib|MdePkg/Library/BaseOrderedCollectionRedBlackTreeLib/BaseOrderedCollectionRedBlackTreeLib.inf\r
df040c00 204 XenHypercallLib|OvmfPkg/Library/XenHypercallLib/XenHypercallLib.inf\r
b017b1b2 205\r
8cee3de7 206[LibraryClasses.common]\r
8cee3de7 207 BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf\r
7416f4eb 208\r
49ba9447 209[LibraryClasses.common.SEC]\r
170ef2d9 210 TimerLib|OvmfPkg/Library/AcpiTimerLib/BaseRomAcpiTimerLib.inf\r
c90decb9 211 QemuFwCfgLib|OvmfPkg/Library/QemuFwCfgLib/QemuFwCfgSecLib.inf\r
b90aefa9 212!ifdef $(DEBUG_ON_SERIAL_PORT)\r
49ba9447 213 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf\r
b90aefa9 214!else\r
215 DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf\r
216!endif\r
abec2e51 217 ReportStatusCodeLib|MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf\r
fcd7e677 218 ExtractGuidedSectionLib|MdePkg/Library/BaseExtractGuidedSectionLib/BaseExtractGuidedSectionLib.inf\r
c6efcc2a 219!ifdef $(SOURCE_DEBUG_ENABLE)\r
220 DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/SecPeiDebugAgentLib.inf\r
221!endif\r
42a83e80 222 HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf\r
223 PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf\r
224 PeiServicesTablePointerLib|MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf\r
225 MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf\r
85a32c71 226 CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/SecPeiCpuExceptionHandlerLib.inf\r
49ba9447 227\r
228[LibraryClasses.common.PEI_CORE]\r
49ba9447 229 HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf\r
230 PeiServicesTablePointerLib|MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf\r
231 PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf\r
232 MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf\r
233 PeiCoreEntryPoint|MdePkg/Library/PeiCoreEntryPoint/PeiCoreEntryPoint.inf\r
abec2e51 234 ReportStatusCodeLib|MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf\r
1630c6df 235 OemHookStatusCodeLib|MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf\r
49ba9447 236 PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf\r
b90aefa9 237!ifdef $(DEBUG_ON_SERIAL_PORT)\r
49ba9447 238 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf\r
b90aefa9 239!else\r
240 DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf\r
241!endif\r
49ba9447 242 PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf\r
243\r
244[LibraryClasses.common.PEIM]\r
49ba9447 245 HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf\r
246 PeiServicesTablePointerLib|MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf\r
247 PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf\r
248 MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf\r
249 PeimEntryPoint|MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf\r
abec2e51 250 ReportStatusCodeLib|MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf\r
1630c6df 251 OemHookStatusCodeLib|MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf\r
49ba9447 252 PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf\r
b90aefa9 253!ifdef $(DEBUG_ON_SERIAL_PORT)\r
49ba9447 254 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf\r
b90aefa9 255!else\r
256 DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf\r
257!endif\r
49ba9447 258 PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf\r
259 PeiResourcePublicationLib|MdePkg/Library/PeiResourcePublicationLib/PeiResourcePublicationLib.inf\r
260 ExtractGuidedSectionLib|MdePkg/Library/PeiExtractGuidedSectionLib/PeiExtractGuidedSectionLib.inf\r
c6efcc2a 261!ifdef $(SOURCE_DEBUG_ENABLE)\r
262 DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/SecPeiDebugAgentLib.inf\r
263!endif\r
f0e6a56a 264 CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/PeiCpuExceptionHandlerLib.inf\r
f4c59f42 265 MpInitLib|UefiCpuPkg/Library/MpInitLib/PeiMpInitLib.inf\r
b7f2e82c 266 QemuFwCfgS3Lib|OvmfPkg/Library/QemuFwCfgS3Lib/PeiQemuFwCfgS3LibFwCfg.inf\r
639c7dd8 267 PcdLib|MdePkg/Library/PeiPcdLib/PeiPcdLib.inf\r
49ba9447 268\r
269[LibraryClasses.common.DXE_CORE]\r
49ba9447 270 HobLib|MdePkg/Library/DxeCoreHobLib/DxeCoreHobLib.inf\r
271 DxeCoreEntryPoint|MdePkg/Library/DxeCoreEntryPoint/DxeCoreEntryPoint.inf\r
272 MemoryAllocationLib|MdeModulePkg/Library/DxeCoreMemoryAllocationLib/DxeCoreMemoryAllocationLib.inf\r
abec2e51 273 ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf\r
b90aefa9 274!ifdef $(DEBUG_ON_SERIAL_PORT)\r
49ba9447 275 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf\r
b90aefa9 276!else\r
277 DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf\r
278!endif\r
49ba9447 279 ExtractGuidedSectionLib|MdePkg/Library/DxeExtractGuidedSectionLib/DxeExtractGuidedSectionLib.inf\r
c6efcc2a 280!ifdef $(SOURCE_DEBUG_ENABLE)\r
281 DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/DxeDebugAgentLib.inf\r
282!endif\r
85a32c71 283 CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/DxeCpuExceptionHandlerLib.inf\r
c075d250 284 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf\r
49ba9447 285\r
286[LibraryClasses.common.DXE_RUNTIME_DRIVER]\r
988e5986 287 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf\r
170ef2d9 288 TimerLib|OvmfPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf\r
49ba9447 289 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf\r
290 DxeCoreEntryPoint|MdePkg/Library/DxeCoreEntryPoint/DxeCoreEntryPoint.inf\r
291 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf\r
abec2e51 292 ReportStatusCodeLib|MdeModulePkg/Library/RuntimeDxeReportStatusCodeLib/RuntimeDxeReportStatusCodeLib.inf\r
b90aefa9 293!ifdef $(DEBUG_ON_SERIAL_PORT)\r
49ba9447 294 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf\r
b90aefa9 295!else\r
296 DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf\r
297!endif\r
49ba9447 298 UefiRuntimeLib|MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf\r
8cee3de7 299 BaseCryptLib|CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf\r
c47ed6fc 300 PciLib|OvmfPkg/Library/DxePciLibI440FxQ35/DxePciLibI440FxQ35.inf\r
b7f2e82c 301 QemuFwCfgS3Lib|OvmfPkg/Library/QemuFwCfgS3Lib/DxeQemuFwCfgS3LibFwCfg.inf\r
49ba9447 302\r
303[LibraryClasses.common.UEFI_DRIVER]\r
988e5986
GS
304 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf\r
305 TimerLib|OvmfPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf\r
49ba9447 306 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf\r
307 DxeCoreEntryPoint|MdePkg/Library/DxeCoreEntryPoint/DxeCoreEntryPoint.inf\r
308 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf\r
abec2e51 309 ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf\r
b90aefa9 310!ifdef $(DEBUG_ON_SERIAL_PORT)\r
49ba9447 311 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf\r
b90aefa9 312!else\r
313 DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf\r
314!endif\r
49ba9447 315 UefiScsiLib|MdePkg/Library/UefiScsiLib/UefiScsiLib.inf\r
c47ed6fc 316 PciLib|OvmfPkg/Library/DxePciLibI440FxQ35/DxePciLibI440FxQ35.inf\r
49ba9447 317\r
318[LibraryClasses.common.DXE_DRIVER]\r
988e5986 319 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf\r
170ef2d9 320 TimerLib|OvmfPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf\r
49ba9447 321 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf\r
49ba9447 322 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf\r
abec2e51 323 ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf\r
49ba9447 324 UefiScsiLib|MdePkg/Library/UefiScsiLib/UefiScsiLib.inf\r
b90aefa9 325!ifdef $(DEBUG_ON_SERIAL_PORT)\r
49ba9447 326 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf\r
b90aefa9 327!else\r
328 DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf\r
329!endif\r
49ba9447 330 NetLib|MdeModulePkg/Library/DxeNetLib/DxeNetLib.inf\r
331 IpIoLib|MdeModulePkg/Library/DxeIpIoLib/DxeIpIoLib.inf\r
332 UdpIoLib|MdeModulePkg/Library/DxeUdpIoLib/DxeUdpIoLib.inf\r
333 DpcLib|MdeModulePkg/Library/DxeDpcLib/DxeDpcLib.inf\r
79c098b6 334 PlatformBootManagerLib|OvmfPkg/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf\r
d85c5e31 335 QemuBootOrderLib|OvmfPkg/Library/QemuBootOrderLib/QemuBootOrderLib.inf\r
85a32c71 336 CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/DxeCpuExceptionHandlerLib.inf\r
67d86594
LE
337!if $(SMM_REQUIRE) == TRUE\r
338 LockBoxLib|MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf\r
339!else\r
6a7cba79 340 LockBoxLib|OvmfPkg/Library/LockBoxLib/LockBoxDxeLib.inf\r
67d86594 341!endif\r
34511266
JJ
342!ifdef $(SOURCE_DEBUG_ENABLE)\r
343 DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/DxeDebugAgentLib.inf\r
344!endif\r
c47ed6fc 345 PciLib|OvmfPkg/Library/DxePciLibI440FxQ35/DxePciLibI440FxQ35.inf\r
f4c59f42 346 MpInitLib|UefiCpuPkg/Library/MpInitLib/DxeMpInitLib.inf\r
b7f2e82c 347 QemuFwCfgS3Lib|OvmfPkg/Library/QemuFwCfgS3Lib/DxeQemuFwCfgS3LibFwCfg.inf\r
49ba9447 348\r
86fef5b4 349[LibraryClasses.common.UEFI_APPLICATION]\r
988e5986
GS
350 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf\r
351 TimerLib|OvmfPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf\r
86fef5b4 352 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf\r
353 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf\r
79c098b6 354 ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf\r
b90aefa9 355!ifdef $(DEBUG_ON_SERIAL_PORT)\r
86fef5b4 356 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf\r
b90aefa9 357!else\r
358 DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf\r
359!endif\r
c47ed6fc 360 PciLib|OvmfPkg/Library/DxePciLibI440FxQ35/DxePciLibI440FxQ35.inf\r
86fef5b4 361\r
988e5986
GS
362[LibraryClasses.common.DXE_SMM_DRIVER]\r
363 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf\r
364 TimerLib|OvmfPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf\r
67d86594 365 MemoryAllocationLib|MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf\r
fc5b5e5c 366 ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf\r
67d86594
LE
367 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf\r
368 SmmMemLib|MdePkg/Library/SmmMemLib/SmmMemLib.inf\r
8dbe742d
LE
369 SmmServicesTableLib|MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf\r
370!ifdef $(DEBUG_ON_SERIAL_PORT)\r
371 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf\r
372!else\r
373 DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf\r
374!endif\r
c30ff8f4 375 CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/SmmCpuExceptionHandlerLib.inf\r
cbd5d723
MK
376!ifdef $(SOURCE_DEBUG_ENABLE)\r
377 DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/SmmDebugAgentLib.inf\r
378!endif\r
46df0216 379 BaseCryptLib|CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf\r
c47ed6fc 380 PciLib|OvmfPkg/Library/DxePciLibI440FxQ35/DxePciLibI440FxQ35.inf\r
988e5986
GS
381\r
382[LibraryClasses.common.SMM_CORE]\r
383 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf\r
384 TimerLib|OvmfPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf\r
f25cb158
LE
385 SmmCorePlatformHookLib|MdeModulePkg/Library/SmmCorePlatformHookLibNull/SmmCorePlatformHookLibNull.inf\r
386 MemoryAllocationLib|MdeModulePkg/Library/PiSmmCoreMemoryAllocationLib/PiSmmCoreMemoryAllocationLib.inf\r
387 ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf\r
388 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf\r
389 SmmMemLib|MdePkg/Library/SmmMemLib/SmmMemLib.inf\r
390 SmmServicesTableLib|MdeModulePkg/Library/PiSmmCoreSmmServicesTableLib/PiSmmCoreSmmServicesTableLib.inf\r
391!ifdef $(DEBUG_ON_SERIAL_PORT)\r
392 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf\r
393!else\r
394 DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf\r
395!endif\r
c47ed6fc 396 PciLib|OvmfPkg/Library/DxePciLibI440FxQ35/DxePciLibI440FxQ35.inf\r
988e5986 397\r
49ba9447 398################################################################################\r
399#\r
400# Pcd Section - list of all EDK II PCD Entries defined by this Platform.\r
401#\r
402################################################################################\r
7b202cb0 403[PcdsFeatureFlag]\r
eccc28bf 404 gEfiMdeModulePkgTokenSpaceGuid.PcdHiiOsRuntimeSupport|FALSE\r
e8d1b8d8 405 gEfiMdeModulePkgTokenSpaceGuid.PcdStatusCodeUseSerial|FALSE\r
406 gEfiMdeModulePkgTokenSpaceGuid.PcdStatusCodeUseMemory|TRUE\r
8fa729a8
LG
407 gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSupportUefiDecompress|FALSE\r
408 gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSwitchToLongMode|TRUE\r
8fa729a8
LG
409 gEfiMdeModulePkgTokenSpaceGuid.PcdConOutGopSupport|TRUE\r
410 gEfiMdeModulePkgTokenSpaceGuid.PcdConOutUgaSupport|FALSE\r
259d8714 411 gEfiMdeModulePkgTokenSpaceGuid.PcdInstallAcpiSdtProtocol|TRUE\r
1f695483
LE
412!if $(SMM_REQUIRE) == TRUE\r
413 gUefiOvmfPkgTokenSpaceGuid.PcdSmmSmramRequire|TRUE\r
896d3dcf 414 gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmEnableBspElection|FALSE\r
1f695483 415!endif\r
8fa729a8 416\r
7b202cb0 417[PcdsFixedAtBuild]\r
e6d3b270 418 gEfiMdeModulePkgTokenSpaceGuid.PcdStatusCodeMemorySize|1\r
670a64e7 419 gEfiMdeModulePkgTokenSpaceGuid.PcdResetOnMemoryTypeInformationChange|FALSE\r
49ba9447 420 gEfiMdePkgTokenSpaceGuid.PcdMaximumGuidedExtractHandler|0x10\r
421 gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreMaxFvSupported|6\r
422 gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreMaxPeimPerFv|32\r
88a30bbc 423!if ($(FD_SIZE_IN_KB) == 1024) || ($(FD_SIZE_IN_KB) == 2048)\r
fd4ba547 424 gEfiMdeModulePkgTokenSpaceGuid.PcdMaxVariableSize|0x2000\r
f5404a3e 425 gEfiMdeModulePkgTokenSpaceGuid.PcdMaxAuthVariableSize|0x2800\r
62f43f7c 426 gEfiMdeModulePkgTokenSpaceGuid.PcdVariableStoreSize|0xe000\r
88a30bbc
LE
427!endif\r
428!if $(FD_SIZE_IN_KB) == 4096\r
429 gEfiMdeModulePkgTokenSpaceGuid.PcdMaxVariableSize|0x8400\r
430 gEfiMdeModulePkgTokenSpaceGuid.PcdMaxAuthVariableSize|0x8400\r
62f43f7c 431 gEfiMdeModulePkgTokenSpaceGuid.PcdVariableStoreSize|0x40000\r
88a30bbc 432!endif\r
49ba9447 433\r
49ba9447 434 gEfiMdeModulePkgTokenSpaceGuid.PcdVpdBaseAddress|0x0\r
435\r
49ba9447 436 gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x07\r
cf23c02a
LE
437\r
438 # DEBUG_INIT 0x00000001 // Initialization\r
439 # DEBUG_WARN 0x00000002 // Warnings\r
440 # DEBUG_LOAD 0x00000004 // Load events\r
441 # DEBUG_FS 0x00000008 // EFI File system\r
442 # DEBUG_POOL 0x00000010 // Alloc & Free (pool)\r
443 # DEBUG_PAGE 0x00000020 // Alloc & Free (page)\r
444 # DEBUG_INFO 0x00000040 // Informational debug messages\r
445 # DEBUG_DISPATCH 0x00000080 // PEI/DXE/SMM Dispatchers\r
446 # DEBUG_VARIABLE 0x00000100 // Variable\r
447 # DEBUG_BM 0x00000400 // Boot Manager\r
448 # DEBUG_BLKIO 0x00001000 // BlkIo Driver\r
449 # DEBUG_NET 0x00004000 // SNP Driver\r
450 # DEBUG_UNDI 0x00010000 // UNDI Driver\r
451 # DEBUG_LOADFILE 0x00020000 // LoadFile\r
452 # DEBUG_EVENT 0x00080000 // Event messages\r
453 # DEBUG_GCD 0x00100000 // Global Coherency Database changes\r
454 # DEBUG_CACHE 0x00200000 // Memory range cachability changes\r
455 # DEBUG_VERBOSE 0x00400000 // Detailed debug messages that may\r
456 # // significantly impact boot performance\r
457 # DEBUG_ERROR 0x80000000 // Error\r
49ba9447 458 gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x8000004F\r
cf23c02a 459\r
c6efcc2a 460!ifdef $(SOURCE_DEBUG_ENABLE)\r
461 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x17\r
462!else\r
49ba9447 463 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x2F\r
c6efcc2a 464!endif\r
465\r
7b8fe635
LE
466 # This PCD is used to set the base address of the PCI express hierarchy. It\r
467 # is only consulted when OVMF runs on Q35. In that case it is programmed into\r
468 # the PCIEXBAR register.\r
469 #\r
470 # On Q35 machine types that QEMU intends to support in the long term, QEMU\r
471 # never lets the RAM below 4 GB exceed 2 GB.\r
472 gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x80000000\r
473\r
670a64e7 474!ifdef $(SOURCE_DEBUG_ENABLE)\r
c6efcc2a 475 gEfiSourceLevelDebugPkgTokenSpaceGuid.PcdDebugLoadImageMethod|0x2\r
670a64e7 476!endif\r
49ba9447 477\r
1a4232b7 478[PcdsFixedAtBuild.X64]\r
4b2fb798
JW
479!if $(HTTP_BOOT_ENABLE) == TRUE\r
480 gEfiNetworkPkgTokenSpaceGuid.PcdAllowHttpConnections|TRUE\r
481!endif\r
482\r
9bef3cdc 483!ifndef $(USE_OLD_SHELL)\r
345a0c8f 484 gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdShellFile|{ 0x83, 0xA5, 0x04, 0x7C, 0x3E, 0x9E, 0x1C, 0x4F, 0xAD, 0x65, 0xE0, 0x52, 0x68, 0xD0, 0xB4, 0xD1 }\r
345a0c8f 485!endif\r
486\r
9b1e3788 487!if $(SMM_REQUIRE) == TRUE\r
0d0c245d 488 gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmStackSize|0x4000\r
9b1e3788
PB
489!endif\r
490\r
1fea9ddb
LE
491!if $(SECURE_BOOT_ENABLE) == TRUE\r
492 gEfiSecurityPkgTokenSpaceGuid.PcdOptionRomImageVerificationPolicy|0x00\r
493!endif\r
494\r
7ca126ff 495 # IRQs 5, 9, 10, 11 are level-triggered\r
496 gPcAtChipsetPkgTokenSpaceGuid.Pcd8259LegacyModeEdgeLevel|0x0E20\r
497\r
79c098b6
RN
498 # Point to the MdeModulePkg/Application/UiApp/UiApp.inf\r
499 gEfiMdeModulePkgTokenSpaceGuid.PcdBootManagerMenuFile|{ 0x21, 0xaa, 0x2c, 0x46, 0x14, 0x76, 0x03, 0x45, 0x83, 0x6e, 0x8a, 0xb6, 0xf4, 0x66, 0x23, 0x31 }\r
500\r
49ba9447 501################################################################################\r
502#\r
503# Pcd Dynamic Section - list of all EDK II PCD Entries defined by this Platform\r
504#\r
505################################################################################\r
506\r
7b202cb0 507[PcdsDynamicDefault]\r
5e167d7e
LE
508 # only set when\r
509 # ($(SMM_REQUIRE) == FALSE)\r
77ba993c 510 gEfiMdeModulePkgTokenSpaceGuid.PcdEmuVariableNvStoreReserved|0\r
5e167d7e 511\r
e3130268 512 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase64|0\r
27f58ea1 513 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase|0\r
514 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase|0\r
447d2641 515 gEfiMdeModulePkgTokenSpaceGuid.PcdPciDisableBusEnumeration|FALSE\r
c4341e3a
LE
516 gEfiMdeModulePkgTokenSpaceGuid.PcdVideoHorizontalResolution|800\r
517 gEfiMdeModulePkgTokenSpaceGuid.PcdVideoVerticalResolution|600\r
a1726e30 518 gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiS3Enable|FALSE\r
d55004da 519 gUefiOvmfPkgTokenSpaceGuid.PcdOvmfHostBridgePciDevId|0\r
c4df7fd0
LE
520 gUefiOvmfPkgTokenSpaceGuid.PcdPciIoBase|0x0\r
521 gUefiOvmfPkgTokenSpaceGuid.PcdPciIoSize|0x0\r
03845e90
LE
522 gUefiOvmfPkgTokenSpaceGuid.PcdPciMmio32Base|0x0\r
523 gUefiOvmfPkgTokenSpaceGuid.PcdPciMmio32Size|0x0\r
7e5b1b67
LE
524 gUefiOvmfPkgTokenSpaceGuid.PcdPciMmio64Base|0x0\r
525 gUefiOvmfPkgTokenSpaceGuid.PcdPciMmio64Size|0x800000000\r
27f58ea1 526\r
86a9c7a7 527 gEfiMdePkgTokenSpaceGuid.PcdPlatformBootTimeOut|0\r
49ba9447 528\r
848834cb 529 # Set video resolution for text setup.\r
86a9c7a7
RN
530 gEfiMdeModulePkgTokenSpaceGuid.PcdSetupVideoHorizontalResolution|640\r
531 gEfiMdeModulePkgTokenSpaceGuid.PcdSetupVideoVerticalResolution|480\r
848834cb 532\r
37baf06b 533 gEfiMdeModulePkgTokenSpaceGuid.PcdSmbiosVersion|0x0208\r
c3db5a8c 534 gEfiMdeModulePkgTokenSpaceGuid.PcdSmbiosDocRev|0x0\r
6fbef93e 535 gUefiOvmfPkgTokenSpaceGuid.PcdQemuSmbiosValidated|FALSE\r
37baf06b 536\r
d26753f8 537 # Noexec settings for DXE.\r
d20b06a3 538 gEfiMdeModulePkgTokenSpaceGuid.PcdSetNxForStack|FALSE\r
c075d250 539 gEfiMdeModulePkgTokenSpaceGuid.PcdPropertiesTableEnable|FALSE\r
d26753f8 540\r
45a70db3
LE
541 # UefiCpuPkg PCDs related to initial AP bringup and general AP management.\r
542 gUefiCpuPkgTokenSpaceGuid.PcdCpuMaxLogicalProcessorNumber|64\r
543 gUefiCpuPkgTokenSpaceGuid.PcdCpuApInitTimeOutInMicroSeconds|50000\r
544\r
13b5d743
BS
545 # Set memory encryption mask\r
546 gEfiMdeModulePkgTokenSpaceGuid.PcdPteMemoryEncryptionAddressOrMask|0x0\r
547\r
22d7be69 548!if $(SMM_REQUIRE) == TRUE\r
966dbaf4 549 gUefiOvmfPkgTokenSpaceGuid.PcdQ35TsegMbytes|8\r
22d7be69
LE
550 gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmSyncMode|0x01\r
551 gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmApSyncTimeout|100000\r
552!endif\r
553\r
49ba9447 554################################################################################\r
555#\r
556# Components Section - list of all EDK II Modules needed by this Platform.\r
557#\r
558################################################################################\r
559[Components.IA32]\r
497cbb53
JJ
560 OvmfPkg/ResetVector/ResetVector.inf\r
561\r
49ba9447 562 #\r
563 # SEC Phase modules\r
564 #\r
c1c2669c 565 OvmfPkg/Sec/SecMain.inf {\r
566 <LibraryClasses>\r
d2daa3db 567 NULL|MdeModulePkg/Library/LzmaCustomDecompressLib/LzmaCustomDecompressLib.inf\r
c1c2669c 568 }\r
49ba9447 569\r
570 #\r
571 # PEI Phase modules\r
572 #\r
573 MdeModulePkg/Core/Pei/PeiMain.inf\r
574 MdeModulePkg/Universal/PCD/Pei/Pcd.inf {\r
575 <LibraryClasses>\r
576 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf\r
577 }\r
fbce1fe9
LE
578 MdeModulePkg/Universal/ReportStatusCodeRouter/Pei/ReportStatusCodeRouterPei.inf {\r
579 <LibraryClasses>\r
580 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf\r
581 }\r
582 MdeModulePkg/Universal/StatusCodeHandler/Pei/StatusCodeHandlerPei.inf {\r
583 <LibraryClasses>\r
584 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf\r
585 }\r
639c7dd8 586 MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf\r
77ba993c 587\r
639c7dd8 588 OvmfPkg/PlatformPei/PlatformPei.inf\r
5fb6fc0f
LE
589 UefiCpuPkg/Universal/Acpi/S3Resume2Pei/S3Resume2Pei.inf {\r
590 <LibraryClasses>\r
67d86594
LE
591!if $(SMM_REQUIRE) == TRUE\r
592 LockBoxLib|MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxPeiLib.inf\r
593!endif\r
5fb6fc0f 594 }\r
9d560947 595!if $(SMM_REQUIRE) == TRUE\r
639c7dd8 596 OvmfPkg/SmmAccess/SmmAccessPei.inf\r
9d560947 597!endif\r
639c7dd8 598 UefiCpuPkg/CpuMpPei/CpuMpPei.inf\r
49ba9447 599\r
600[Components.X64]\r
601 #\r
602 # DXE Phase modules\r
603 #\r
604 MdeModulePkg/Core/Dxe/DxeMain.inf {\r
605 <LibraryClasses>\r
d2daa3db 606 NULL|MdeModulePkg/Library/LzmaCustomDecompressLib/LzmaCustomDecompressLib.inf\r
863986b3 607 DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf\r
49ba9447 608 }\r
609\r
a6d594c5
CS
610 MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.inf\r
611 MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf\r
49ba9447 612 MdeModulePkg/Universal/PCD/Dxe/Pcd.inf {\r
613 <LibraryClasses>\r
614 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf\r
615 }\r
616\r
617 MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf\r
8cee3de7 618\r
619!if $(SECURE_BOOT_ENABLE) == TRUE\r
620 MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf {\r
621 <LibraryClasses>\r
622 NULL|SecurityPkg/Library/DxeImageVerificationLib/DxeImageVerificationLib.inf\r
8cee3de7 623 }\r
624!else\r
49ba9447 625 MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf\r
8cee3de7 626!endif\r
627\r
e6d3b270 628 MdeModulePkg/Universal/EbcDxe/EbcDxe.inf\r
49ba9447 629 PcAtChipsetPkg/8259InterruptControllerDxe/8259.inf\r
73cbc580 630 UefiCpuPkg/CpuIo2Dxe/CpuIo2Dxe.inf\r
49ba9447 631 UefiCpuPkg/CpuDxe/CpuDxe.inf\r
632 PcAtChipsetPkg/8254TimerDxe/8254Timer.inf\r
855743f7 633 OvmfPkg/IncompatiblePciDeviceSupportDxe/IncompatiblePciDeviceSupport.inf\r
8aba40b7 634 OvmfPkg/PciHotPlugInitDxe/PciHotPlugInit.inf\r
4014885f
LE
635 MdeModulePkg/Bus/Pci/PciHostBridgeDxe/PciHostBridgeDxe.inf {\r
636 <LibraryClasses>\r
637 PciHostBridgeLib|OvmfPkg/Library/PciHostBridgeLib/PciHostBridgeLib.inf\r
638 }\r
447d2641
WL
639 MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf {\r
640 <LibraryClasses>\r
641 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf\r
642 }\r
f90472e1 643 MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystemRuntimeDxe.inf\r
170ef2d9
GS
644 MdeModulePkg/Universal/Metronome/Metronome.inf\r
645 PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcatRealTimeClockRuntimeDxe.inf\r
ba502ef4 646 MdeModulePkg/Universal/DriverHealthManagerDxe/DriverHealthManagerDxe.inf\r
79c098b6
RN
647 MdeModulePkg/Universal/BdsDxe/BdsDxe.inf {\r
648 <LibraryClasses>\r
649!ifdef $(CSM_ENABLE)\r
650 NULL|OvmfPkg/Csm/CsmSupportLib/CsmSupportLib.inf\r
651 NULL|IntelFrameworkModulePkg/Library/LegacyBootManagerLib/LegacyBootManagerLib.inf\r
652!endif\r
653 }\r
ab970515 654 MdeModulePkg/Logo/LogoDxe.inf\r
79c098b6
RN
655 MdeModulePkg/Application/UiApp/UiApp.inf {\r
656 <LibraryClasses>\r
657 NULL|MdeModulePkg/Library/DeviceManagerUiLib/DeviceManagerUiLib.inf\r
658 NULL|MdeModulePkg/Library/BootManagerUiLib/BootManagerUiLib.inf\r
659 NULL|MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootMaintenanceManagerUiLib.inf\r
660!ifdef $(CSM_ENABLE)\r
661 NULL|IntelFrameworkModulePkg/Library/LegacyBootManagerLib/LegacyBootManagerLib.inf\r
662 NULL|IntelFrameworkModulePkg/Library/LegacyBootMaintUiLib/LegacyBootMaintUiLib.inf\r
663!endif\r
664 }\r
efd82c57 665 OvmfPkg/BlockMmioToBlockIoDxe/BlockIo.inf\r
56f65ed8 666 OvmfPkg/VirtioPciDeviceDxe/VirtioPciDeviceDxe.inf\r
8456a7da 667 OvmfPkg/Virtio10Dxe/Virtio10.inf\r
fd51d759 668 OvmfPkg/VirtioBlkDxe/VirtioBlk.inf\r
37078a63 669 OvmfPkg/VirtioScsiDxe/VirtioScsi.inf\r
b38ec3cd 670 OvmfPkg/VirtioRngDxe/VirtioRng.inf\r
d9fdfd85 671 OvmfPkg/XenIoPciDxe/XenIoPciDxe.inf\r
e65e8802 672 OvmfPkg/XenBusDxe/XenBusDxe.inf\r
de671da8 673 OvmfPkg/XenPvBlkDxe/XenPvBlkDxe.inf\r
49ba9447 674 MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf\r
675 MdeModulePkg/Universal/MonotonicCounterRuntimeDxe/MonotonicCounterRuntimeDxe.inf\r
676 MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf\r
677 MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf\r
678 MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf\r
c4341e3a
LE
679 MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.inf {\r
680 <LibraryClasses>\r
681 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf\r
682 }\r
49ba9447 683 MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf\r
863986b3
RN
684 MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf {\r
685 <LibraryClasses>\r
686 DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf\r
687 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf\r
688 }\r
86fef5b4 689 MdeModulePkg/Universal/PrintDxe/PrintDxe.inf\r
49ba9447 690 MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf\r
691 MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf\r
00f18da1 692 MdeModulePkg/Universal/Disk/RamDiskDxe/RamDiskDxe.inf\r
49ba9447 693 MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf\r
aa47e529 694 FatPkg/EnhancedFatDxe/Fat.inf\r
49ba9447 695 MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf\r
696 MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf\r
b82802b8
RJ
697 OvmfPkg/SataControllerDxe/SataControllerDxe.inf\r
698 MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.inf\r
699 MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBusDxe.inf\r
8ae3832d 700 MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpressDxe.inf\r
49ba9447 701 MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf\r
702 MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf\r
56af21cb 703 MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf\r
999a815e 704 MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf\r
49ba9447 705\r
bd52d4ff 706 OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf\r
b3eab015 707 OvmfPkg/VirtioGpuDxe/VirtioGpu.inf\r
49ba9447 708\r
709 #\r
710 # ISA Support\r
711 #\r
712 PcAtChipsetPkg/IsaAcpiDxe/IsaAcpi.inf\r
713 IntelFrameworkModulePkg/Bus/Isa/IsaBusDxe/IsaBusDxe.inf\r
714 IntelFrameworkModulePkg/Bus/Isa/IsaSerialDxe/IsaSerialDxe.inf\r
715 IntelFrameworkModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2keyboardDxe.inf\r
716 IntelFrameworkModulePkg/Bus/Isa/IsaFloppyDxe/IsaFloppyDxe.inf\r
717\r
fb511817 718 #\r
719 # SMBIOS Support\r
720 #\r
98937dc2
LE
721 MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf {\r
722 <LibraryClasses>\r
723 NULL|OvmfPkg/Library/SmbiosVersionLib/DetectSmbiosVersionLib.inf\r
724 }\r
fb511817 725 OvmfPkg/SmbiosPlatformDxe/SmbiosPlatformDxe.inf\r
726\r
49ba9447 727 #\r
728 # ACPI Support\r
729 #\r
730 MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf\r
7d2bd150 731 OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf\r
49ba9447 732 OvmfPkg/AcpiTables/AcpiTables.inf\r
b017b1b2 733 MdeModulePkg/Universal/Acpi/S3SaveStateDxe/S3SaveStateDxe.inf\r
93900400 734 MdeModulePkg/Universal/Acpi/BootScriptExecutorDxe/BootScriptExecutorDxe.inf\r
6e5e544f 735 MdeModulePkg/Universal/Acpi/BootGraphicsResourceTableDxe/BootGraphicsResourceTableDxe.inf\r
7416f4eb 736\r
737 #\r
738 # Network Support\r
739 #\r
7416f4eb 740 MdeModulePkg/Universal/Network/SnpDxe/SnpDxe.inf\r
741 MdeModulePkg/Universal/Network/DpcDxe/DpcDxe.inf\r
742 MdeModulePkg/Universal/Network/MnpDxe/MnpDxe.inf\r
743 MdeModulePkg/Universal/Network/VlanConfigDxe/VlanConfigDxe.inf\r
744 MdeModulePkg/Universal/Network/ArpDxe/ArpDxe.inf\r
745 MdeModulePkg/Universal/Network/Dhcp4Dxe/Dhcp4Dxe.inf\r
7416f4eb 746 MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Dxe.inf\r
747 MdeModulePkg/Universal/Network/Mtftp4Dxe/Mtftp4Dxe.inf\r
7416f4eb 748 MdeModulePkg/Universal/Network/Udp4Dxe/Udp4Dxe.inf\r
36c6413f
GL
749!if $(NETWORK_IP6_ENABLE) == TRUE\r
750 NetworkPkg/Ip6Dxe/Ip6Dxe.inf\r
751 NetworkPkg/TcpDxe/TcpDxe.inf\r
752 NetworkPkg/Udp6Dxe/Udp6Dxe.inf\r
753 NetworkPkg/Dhcp6Dxe/Dhcp6Dxe.inf\r
754 NetworkPkg/Mtftp6Dxe/Mtftp6Dxe.inf\r
755 NetworkPkg/UefiPxeBcDxe/UefiPxeBcDxe.inf\r
36c6413f 756 NetworkPkg/IScsiDxe/IScsiDxe.inf\r
36c6413f
GL
757!else\r
758 MdeModulePkg/Universal/Network/Tcp4Dxe/Tcp4Dxe.inf\r
7416f4eb 759 MdeModulePkg/Universal/Network/UefiPxeBcDxe/UefiPxeBcDxe.inf\r
760 MdeModulePkg/Universal/Network/IScsiDxe/IScsiDxe.inf\r
ab44a6e8
GCPL
761!endif\r
762!if $(HTTP_BOOT_ENABLE) == TRUE\r
763 NetworkPkg/DnsDxe/DnsDxe.inf\r
1a85139d 764 NetworkPkg/HttpUtilitiesDxe/HttpUtilitiesDxe.inf\r
ab44a6e8
GCPL
765 NetworkPkg/HttpDxe/HttpDxe.inf\r
766 NetworkPkg/HttpBootDxe/HttpBootDxe.inf\r
315d9d08
GL
767!endif\r
768!if $(TLS_ENABLE) == TRUE\r
769 NetworkPkg/TlsDxe/TlsDxe.inf\r
770 NetworkPkg/TlsAuthConfigDxe/TlsAuthConfigDxe.inf\r
36c6413f 771!endif\r
7a1f5947 772 OvmfPkg/VirtioNetDxe/VirtioNet.inf\r
152d9a6b 773\r
689562cd 774 #\r
775 # Usb Support\r
776 #\r
777 MdeModulePkg/Bus/Pci/UhciDxe/UhciDxe.inf\r
778 MdeModulePkg/Bus/Pci/EhciDxe/EhciDxe.inf\r
47e57f4f 779 MdeModulePkg/Bus/Pci/XhciDxe/XhciDxe.inf\r
689562cd 780 MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf\r
781 MdeModulePkg/Bus/Usb/UsbKbDxe/UsbKbDxe.inf\r
782 MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassStorageDxe.inf\r
783\r
4b3d663f 784!ifdef $(CSM_ENABLE)\r
e04cca1d
PB
785 IntelFrameworkModulePkg/Csm/BiosThunk/VideoDxe/VideoDxe.inf {\r
786 <LibraryClasses>\r
787 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf\r
788 }\r
4b3d663f 789 IntelFrameworkModulePkg/Csm/LegacyBiosDxe/LegacyBiosDxe.inf\r
790 OvmfPkg/Csm/Csm16/Csm16.inf\r
791!endif\r
792\r
9bef3cdc 793!ifndef $(USE_OLD_SHELL)\r
345a0c8f 794 ShellPkg/Application/Shell/Shell.inf {\r
795 <LibraryClasses>\r
796 ShellCommandLib|ShellPkg/Library/UefiShellCommandLib/UefiShellCommandLib.inf\r
797 NULL|ShellPkg/Library/UefiShellLevel2CommandsLib/UefiShellLevel2CommandsLib.inf\r
798 NULL|ShellPkg/Library/UefiShellLevel1CommandsLib/UefiShellLevel1CommandsLib.inf\r
799 NULL|ShellPkg/Library/UefiShellLevel3CommandsLib/UefiShellLevel3CommandsLib.inf\r
800 NULL|ShellPkg/Library/UefiShellDriver1CommandsLib/UefiShellDriver1CommandsLib.inf\r
801 NULL|ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.inf\r
802 NULL|ShellPkg/Library/UefiShellInstall1CommandsLib/UefiShellInstall1CommandsLib.inf\r
803 NULL|ShellPkg/Library/UefiShellNetwork1CommandsLib/UefiShellNetwork1CommandsLib.inf\r
96302b80
GL
804!if $(NETWORK_IP6_ENABLE) == TRUE\r
805 NULL|ShellPkg/Library/UefiShellNetwork2CommandsLib/UefiShellNetwork2CommandsLib.inf\r
806!endif\r
b2f88ffd 807 NULL|ShellPkg/Library/UefiShellTftpCommandLib/UefiShellTftpCommandLib.inf\r
345a0c8f 808 HandleParsingLib|ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.inf\r
345a0c8f 809 ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf\r
ae591c14 810 FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf\r
345a0c8f 811 PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf\r
812# SafeBlockIoLib|ShellPkg/Library/SafeBlockIoLib/SafeBlockIoLib.inf\r
813# SafeOpenProtocolLib|ShellPkg/Library/SafeOpenProtocolLib/SafeOpenProtocolLib.inf\r
9fc9f4d8 814 BcfgCommandLib|ShellPkg/Library/UefiShellBcfgCommandLib/UefiShellBcfgCommandLib.inf\r
345a0c8f 815\r
816 <PcdsFixedAtBuild>\r
817 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0xFF\r
818 gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE\r
819 gEfiMdePkgTokenSpaceGuid.PcdUefiLibMaxPrintBufferSize|8000\r
820 }\r
821!endif\r
822\r
8cee3de7 823!if $(SECURE_BOOT_ENABLE) == TRUE\r
8714a631 824 SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConfigDxe.inf\r
8cee3de7 825!endif\r
d945a8ba
LE
826\r
827 OvmfPkg/PlatformDxe/Platform.inf\r
c5b7c805
LE
828\r
829!if $(SMM_REQUIRE) == TRUE\r
830 OvmfPkg/SmmAccess/SmmAccess2Dxe.inf\r
c40e1a0c 831 OvmfPkg/SmmControl2Dxe/SmmControl2Dxe.inf\r
92b87f1c 832 UefiCpuPkg/CpuS3DataDxe/CpuS3DataDxe.inf\r
f25cb158
LE
833\r
834 #\r
835 # SMM Initial Program Load (a DXE_RUNTIME_DRIVER)\r
836 #\r
837 MdeModulePkg/Core/PiSmmCore/PiSmmIpl.inf\r
838\r
839 #\r
840 # SMM_CORE\r
841 #\r
842 MdeModulePkg/Core/PiSmmCore/PiSmmCore.inf\r
8dbe742d
LE
843\r
844 #\r
845 # Privileged drivers (DXE_SMM_DRIVER modules)\r
846 #\r
847 UefiCpuPkg/CpuIo2Smm/CpuIo2Smm.inf\r
67d86594
LE
848 MdeModulePkg/Universal/LockBox/SmmLockBox/SmmLockBox.inf {\r
849 <LibraryClasses>\r
850 LockBoxLib|MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf\r
851 }\r
0d5d4205
LE
852 UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf {\r
853 <LibraryClasses>\r
854 SmmCpuPlatformHookLib|UefiCpuPkg/Library/SmmCpuPlatformHookLibNull/SmmCpuPlatformHookLibNull.inf\r
855 SmmCpuFeaturesLib|OvmfPkg/Library/SmmCpuFeaturesLib/SmmCpuFeaturesLib.inf\r
856 }\r
1b0a8e62
LE
857\r
858 #\r
46df0216
LE
859 # Variable driver stack (SMM)\r
860 #\r
861 OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesSmm.inf\r
862 MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmm.inf\r
863 MdeModulePkg/Universal/Variable/RuntimeDxe/VariableSmm.inf {\r
864 <LibraryClasses>\r
865 NULL|MdeModulePkg/Library/VarCheckUefiLib/VarCheckUefiLib.inf\r
866 }\r
867 MdeModulePkg/Universal/Variable/RuntimeDxe/VariableSmmRuntimeDxe.inf\r
868\r
869!else\r
870\r
871 #\r
872 # Variable driver stack (non-SMM)\r
1b0a8e62
LE
873 #\r
874 OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesRuntimeDxe.inf\r
875 OvmfPkg/EmuVariableFvbRuntimeDxe/Fvb.inf {\r
876 <LibraryClasses>\r
877 PlatformFvbLib|OvmfPkg/Library/EmuVariableFvbLib/EmuVariableFvbLib.inf\r
878 }\r
879 MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteDxe.inf\r
880 MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf {\r
881 <LibraryClasses>\r
882 NULL|MdeModulePkg/Library/VarCheckUefiLib/VarCheckUefiLib.inf\r
883 }\r
46df0216 884!endif\r