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