]> git.proxmox.com Git - mirror_edk2.git/blame - OvmfPkg/OvmfPkg.fdf
Move SmmLib from IntelFrameworkPkg to MdePkg because this library is useful to both...
[mirror_edk2.git] / OvmfPkg / OvmfPkg.fdf
CommitLineData
49ba9447 1#/** @file\r
2# Open Virtual Machine Firmware: FDF\r
3#\r
c1c2669c 4# Copyright (c) 2006 - 2010, Intel Corporation\r
49ba9447 5#\r
6# All rights reserved. This program and the accompanying materials\r
7# are licensed and made available under the terms and conditions of the BSD License\r
8# which accompanies this distribution. The full text of the license may be found at\r
9# http://opensource.org/licenses/bsd-license.php\r
10#\r
11# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
12# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
13#\r
14#**/\r
15\r
16################################################################################\r
c1c2669c 17[FD.SEC]\r
18BaseAddress = 0xFFFEE000\r
19Size = 0x00012000\r
20ErasePolarity = 1\r
21BlockSize = 0x1000\r
22NumBlocks = 0x12\r
23\r
240x0|0x12000\r
25FV = SECFV\r
26\r
49ba9447 27################################################################################\r
c1c2669c 28\r
29[FD.MEMFD]\r
30BaseAddress = 0x800000|gUefiOvmfPkgTokenSpaceGuid.PcdOvmfMemFvBase\r
31Size = 0x400000|gUefiOvmfPkgTokenSpaceGuid.PcdOvmfMemFvSize\r
49ba9447 32ErasePolarity = 1\r
33BlockSize = 0x10000\r
c1c2669c 34NumBlocks = 0x40\r
49ba9447 35\r
c1c2669c 360x0|0x400000\r
49ba9447 37FV = MAINFV\r
38\r
39################################################################################\r
c1c2669c 40\r
41[FV.SECFV]\r
42BlockSize = 0x1000\r
43FvAlignment = 16\r
44ERASE_POLARITY = 1\r
45MEMORY_MAPPED = TRUE\r
46STICKY_WRITE = TRUE\r
47LOCK_CAP = TRUE\r
48LOCK_STATUS = TRUE\r
49WRITE_DISABLED_CAP = TRUE\r
50WRITE_ENABLED_CAP = TRUE\r
51WRITE_STATUS = TRUE\r
52WRITE_LOCK_CAP = TRUE\r
53WRITE_LOCK_STATUS = TRUE\r
54READ_DISABLED_CAP = TRUE\r
55READ_ENABLED_CAP = TRUE\r
56READ_STATUS = TRUE\r
57READ_LOCK_CAP = TRUE\r
58READ_LOCK_STATUS = TRUE\r
59\r
49ba9447 60#\r
c1c2669c 61# SEC Phase modules\r
49ba9447 62#\r
c1c2669c 63# The code in this FV handles the initial firmware startup, and\r
64# decompresses the MAINFV which handles the majority of the boot sequence.\r
49ba9447 65#\r
c1c2669c 66INF OvmfPkg/Sec/SecMain.inf\r
67\r
68INF RuleOverride=RESET_VECTOR OvmfPkg/ResetVector/Bin/ResetVector.inf\r
69\r
49ba9447 70################################################################################\r
c1c2669c 71[FV.MAINFV]\r
72BlockSize = 0x10000\r
73FvAlignment = 16\r
49ba9447 74ERASE_POLARITY = 1\r
75MEMORY_MAPPED = TRUE\r
76STICKY_WRITE = TRUE\r
77LOCK_CAP = TRUE\r
78LOCK_STATUS = TRUE\r
79WRITE_DISABLED_CAP = TRUE\r
80WRITE_ENABLED_CAP = TRUE\r
81WRITE_STATUS = TRUE\r
82WRITE_LOCK_CAP = TRUE\r
83WRITE_LOCK_STATUS = TRUE\r
84READ_DISABLED_CAP = TRUE\r
85READ_ENABLED_CAP = TRUE\r
86READ_STATUS = TRUE\r
87READ_LOCK_CAP = TRUE\r
88READ_LOCK_STATUS = TRUE\r
89\r
90#\r
c1c2669c 91# Files to be placed in MAIN FV\r
49ba9447 92#\r
93# This firmware volume will have files placed in it uncompressed,\r
94# and then then entire firmware volume will be compressed in a\r
95# single compression operation in order to achieve better\r
96# overall compression.\r
97#\r
98\r
c1c2669c 99APRIORI PEI {\r
100 INF MdeModulePkg/Universal/PCD/Pei/Pcd.inf\r
101}\r
102\r
49ba9447 103APRIORI DXE {\r
104 INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf\r
105 INF IntelFrameworkModulePkg/Universal/DataHubDxe/DataHubDxe.inf\r
106}\r
107\r
c1c2669c 108#\r
109# PEI Phase modules\r
110#\r
111INF MdeModulePkg/Core/Pei/PeiMain.inf\r
112INF MdeModulePkg/Universal/PCD/Pei/Pcd.inf\r
113INF IntelFrameworkModulePkg/Universal/StatusCode/Pei/StatusCodePei.inf\r
114INF OvmfPkg/PlatformPei/PlatformPei.inf\r
115INF MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf\r
116\r
49ba9447 117#\r
118# DXE Phase modules\r
119#\r
120INF MdeModulePkg/Core/Dxe/DxeMain.inf\r
121\r
122INF IntelFrameworkModulePkg/Universal/StatusCode/RuntimeDxe/StatusCodeRuntimeDxe.inf\r
123INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf\r
124\r
125INF MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf\r
126INF MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf\r
127INF IntelFrameworkModulePkg/Universal/DataHubDxe/DataHubDxe.inf\r
c1c2669c 128INF MdeModulePkg/Universal/EbcDxe/EbcDxe.inf\r
e471bf1f 129INF MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf\r
49ba9447 130INF PcAtChipsetPkg/8259InterruptControllerDxe/8259.inf\r
afbb91aa 131INF UefiCpuPkg/CpuIo2Dxe/CpuIo2Dxe.inf\r
49ba9447 132INF UefiCpuPkg/CpuDxe/CpuDxe.inf\r
133INF PcAtChipsetPkg/8254TimerDxe/8254Timer.inf\r
134INF PcAtChipsetPkg/PciHostBridgeDxe/PciHostBridgeDxe.inf\r
4ad90a84 135INF MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf\r
49ba9447 136INF PcAtChipsetPkg/KbcResetDxe/Reset.inf\r
137INF MdeModulePkg/Universal/Metronome/Metronome.inf\r
71095b27 138INF PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcatRealTimeClockRuntimeDxe.inf\r
49ba9447 139\r
27f58ea1 140INF OvmfPkg/EmuVariableFvbRuntimeDxe/Fvb.inf\r
141INF MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteDxe.inf\r
142INF MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf\r
49ba9447 143INF MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf\r
144INF MdeModulePkg/Universal/MonotonicCounterRuntimeDxe/MonotonicCounterRuntimeDxe.inf\r
145INF MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf\r
146INF MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf\r
147INF MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf\r
148INF MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.inf\r
149INF MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf\r
150INF IntelFrameworkModulePkg/Universal/BdsDxe/BdsDxe.inf\r
151INF MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf\r
86fef5b4 152INF MdeModulePkg/Universal/PrintDxe/PrintDxe.inf\r
49ba9447 153INF MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf\r
154INF MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf\r
155INF MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf\r
156INF MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf\r
157INF MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf\r
158INF IntelFrameworkModulePkg/Bus/Pci/IdeBusDxe/IdeBusDxe.inf\r
159INF PcAtChipsetPkg/Bus/Pci/IdeControllerDxe/IdeControllerDxe.inf\r
160INF MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf\r
161INF MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf\r
162\r
49ba9447 163INF PcAtChipsetPkg/IsaAcpiDxe/IsaAcpi.inf\r
164INF IntelFrameworkModulePkg/Bus/Isa/IsaBusDxe/IsaBusDxe.inf\r
165INF IntelFrameworkModulePkg/Bus/Isa/IsaSerialDxe/IsaSerialDxe.inf\r
166INF IntelFrameworkModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2keyboardDxe.inf\r
167INF IntelFrameworkModulePkg/Bus/Isa/IsaFloppyDxe/IsaFloppyDxe.inf\r
168\r
169INF MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf\r
170INF MdeModulePkg/Universal/Acpi/AcpiPlatformDxe/AcpiPlatformDxe.inf\r
171INF RuleOverride=ACPITABLE OvmfPkg/AcpiTables/AcpiTables.inf\r
172\r
173INF FatBinPkg/EnhancedFatDxe/Fat.inf\r
174\r
175INF EdkShellBinPkg/FullShell/FullShell.inf\r
176\r
d46f3632 177FILE FREEFORM = PCD(gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdLogoFile) {\r
49ba9447 178 SECTION GUIDED EE4E5898-3914-4259-9D6E-DC7BD79403CF PROCESSING_REQUIRED = TRUE { # LzmaCompress\r
179 SECTION RAW = MdeModulePkg/Logo/Logo.bmp\r
180 }\r
181 }\r
182\r
183################################################################################\r
184\r
c1c2669c 185[FV.OVMF]\r
186BlockSize = 0x10000\r
49ba9447 187FvAlignment = 16\r
188ERASE_POLARITY = 1\r
189MEMORY_MAPPED = TRUE\r
190STICKY_WRITE = TRUE\r
191LOCK_CAP = TRUE\r
192LOCK_STATUS = TRUE\r
193WRITE_DISABLED_CAP = TRUE\r
194WRITE_ENABLED_CAP = TRUE\r
195WRITE_STATUS = TRUE\r
196WRITE_LOCK_CAP = TRUE\r
197WRITE_LOCK_STATUS = TRUE\r
198READ_DISABLED_CAP = TRUE\r
199READ_ENABLED_CAP = TRUE\r
200READ_STATUS = TRUE\r
201READ_LOCK_CAP = TRUE\r
202READ_LOCK_STATUS = TRUE\r
203\r
204#\r
c1c2669c 205# This file contains the compressed MAINFV, which is compressed\r
49ba9447 206# in a single compression operation in order to achieve better\r
207# overall compression.\r
208#\r
209FILE FV_IMAGE = 20bc8ac9-94d1-4208-ab28-5d673fd73486 {\r
210 SECTION GUIDED EE4E5898-3914-4259-9D6E-DC7BD79403CF PROCESSING_REQUIRED = TRUE { # LzmaCompress\r
c1c2669c 211 SECTION FV_IMAGE = MAINFV\r
49ba9447 212 }\r
213 }\r
214\r
49ba9447 215#\r
c1c2669c 216# This file contains the uncompressed SECFV, which contains the initial\r
217# boot code. The code in this FV decompresses the MAINFV.\r
218#\r
219# It uses the Volume Top File (VTF) GUID so it will be placed at the\r
220# end of the FV.\r
49ba9447 221#\r
c1c2669c 222FILE FREEFORM = 1BA0062E-C779-4582-8566-336AE8F78F09 {\r
223 SECTION Align=16 FV_IMAGE = SECFV\r
224}\r
225\r
49ba9447 226################################################################################\r
227\r
228[Rule.Common.PEI_CORE]\r
229 FILE PEI_CORE = $(NAMED_GUID) {\r
d40d3ba4 230 PE32 PE32 Align=32 |.efi\r
49ba9447 231 UI STRING ="$(MODULE_NAME)" Optional\r
232 VERSION STRING ="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)\r
233 }\r
234\r
235[Rule.Common.SEC]\r
236 FILE SEC = $(NAMED_GUID) {\r
237 PE32 PE32 |.efi\r
238 UI STRING ="$(MODULE_NAME)" Optional\r
239 VERSION STRING ="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)\r
240 }\r
241\r
d40d3ba4 242[Rule.Common.PEIM.NORELOC]\r
243 FILE PEIM = $(NAMED_GUID) RELOCS_STRIPPED {\r
244 PEI_DEPEX PEI_DEPEX Optional |.depex\r
245 TE TE |.efi\r
246 UI STRING="$(MODULE_NAME)" Optional\r
247 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)\r
248 }\r
249\r
49ba9447 250[Rule.Common.PEIM]\r
251 FILE PEIM = $(NAMED_GUID) {\r
252 PEI_DEPEX PEI_DEPEX Optional |.depex\r
d40d3ba4 253 PE32 PE32 Align=32 |.efi\r
49ba9447 254 UI STRING="$(MODULE_NAME)" Optional\r
255 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)\r
256 }\r
257\r
258[Rule.Common.PEIM.TIANOCOMPRESSED]\r
259 FILE PEIM = $(NAMED_GUID) {\r
260 PEI_DEPEX PEI_DEPEX Optional |.depex\r
261 GUIDED A31280AD-481E-41B6-95E8-127F4C984779 PROCESSING_REQUIRED = TRUE {\r
262 PE32 PE32 |.efi\r
263 UI STRING="$(MODULE_NAME)" Optional\r
264 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)\r
265 }\r
266 }\r
267\r
268[Rule.Common.DXE_CORE]\r
269 FILE DXE_CORE = $(NAMED_GUID) {\r
270 PE32 PE32 |.efi\r
271 UI STRING="$(MODULE_NAME)" Optional\r
272 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)\r
273 }\r
274\r
275[Rule.Common.UEFI_DRIVER]\r
276 FILE DRIVER = $(NAMED_GUID) {\r
277 DXE_DEPEX DXE_DEPEX Optional |.depex\r
278 PE32 PE32 |.efi\r
279 UI STRING="$(MODULE_NAME)" Optional\r
280 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)\r
281 }\r
282\r
283[Rule.Common.DXE_DRIVER]\r
284 FILE DRIVER = $(NAMED_GUID) {\r
285 DXE_DEPEX DXE_DEPEX Optional |.depex\r
286 PE32 PE32 |.efi\r
287 UI STRING="$(MODULE_NAME)" Optional\r
288 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)\r
289 }\r
290\r
291[Rule.Common.DXE_RUNTIME_DRIVER]\r
292 FILE DRIVER = $(NAMED_GUID) {\r
293 DXE_DEPEX DXE_DEPEX Optional |.depex\r
294 PE32 PE32 |.efi\r
295 UI STRING="$(MODULE_NAME)" Optional\r
296 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)\r
297 }\r
298\r
299[Rule.Common.UEFI_APPLICATION]\r
300 FILE APPLICATION = $(NAMED_GUID) {\r
301 PE32 PE32 |.efi\r
302 UI STRING="$(MODULE_NAME)" Optional\r
303 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)\r
304 }\r
305\r
48889990 306[Rule.Common.USER_DEFINED.ACPITABLE]\r
49ba9447 307 FILE FREEFORM = $(NAMED_GUID) {\r
308 RAW ACPI |.acpi\r
309 RAW ASL |.aml\r
310 }\r
311\r
312[Rule.Common.SEC.RESET_VECTOR]\r
313 FILE RAW = $(NAMED_GUID) {\r
314 RAW RAW |.raw\r
315 }\r
316\r
712bd83b 317[OptionRom.CirrusLogic5446]\r
318INF OptionRomPkg/CirrusLogic5430Dxe/CirrusLogic5430Dxe.inf {\r
319 PCI_DEVICE_ID = 0x00B8\r
320 }\r
321\r