VirtualBox

source: vbox/trunk/src/VBox/Devices/EFI/Firmware/OvmfPkg/OvmfPkgIa32.fdf@ 58189

最後變更 在這個檔案從58189是 58189,由 vboxsync 提交於 9 年 前

EFI: Remove VBoxPkg VBoxVariable and merge changes into MdeModulePkg EmuVariableRuntimeDxe it was derived from

  • 屬性 svn:eol-style 設為 native
檔案大小: 13.6 KB
 
1## @file
2# Open Virtual Machine Firmware: FDF
3#
4# Copyright (c) 2006 - 2011, 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[FD.OVMF]
18BaseAddress = 0xFFF00000
19Size = 0x00100000
20ErasePolarity = 1
21BlockSize = 0x1000
22NumBlocks = 0x100
23
24#VBox: Debug needs more space, original: 0x00000000|0x000EC000
250x00000000|0x000F4000
26FV = FVMAIN_COMPACT
27
28#VBox: Debug needs more space, original: 0x000EC000|0x14000
290x000F4000|0x0000C000
30FV = SECFV
31
32################################################################################
33
34[FD.MEMFD]
35BaseAddress = 0x2000000|gUefiOvmfPkgTokenSpaceGuid.PcdOvmfMemFvBase
36Size = 0x600000|gUefiOvmfPkgTokenSpaceGuid.PcdOvmfMemFvSize
37ErasePolarity = 1
38BlockSize = 0x10000
39NumBlocks = 0x60
40
410x0|0x600000
42FV = MAINFV
43
44################################################################################
45
46[FV.SECFV]
47BlockSize = 0x1000
48FvAlignment = 16
49ERASE_POLARITY = 1
50MEMORY_MAPPED = TRUE
51STICKY_WRITE = TRUE
52LOCK_CAP = TRUE
53LOCK_STATUS = TRUE
54WRITE_DISABLED_CAP = TRUE
55WRITE_ENABLED_CAP = TRUE
56WRITE_STATUS = TRUE
57WRITE_LOCK_CAP = TRUE
58WRITE_LOCK_STATUS = TRUE
59READ_DISABLED_CAP = TRUE
60READ_ENABLED_CAP = TRUE
61READ_STATUS = TRUE
62READ_LOCK_CAP = TRUE
63READ_LOCK_STATUS = TRUE
64
65#
66# SEC Phase modules
67#
68# The code in this FV handles the initial firmware startup, and
69# decompresses the MAINFV which handles the majority of the boot sequence.
70#
71INF OvmfPkg/Sec/SecMain.inf
72
73INF RuleOverride=RESET_VECTOR UefiCpuPkg/ResetVector/Vtf0/Bin/ResetVector.inf
74
75################################################################################
76[FV.MAINFV]
77BlockSize = 0x10000
78FvAlignment = 16
79ERASE_POLARITY = 1
80MEMORY_MAPPED = TRUE
81STICKY_WRITE = TRUE
82LOCK_CAP = TRUE
83LOCK_STATUS = TRUE
84WRITE_DISABLED_CAP = TRUE
85WRITE_ENABLED_CAP = TRUE
86WRITE_STATUS = TRUE
87WRITE_LOCK_CAP = TRUE
88WRITE_LOCK_STATUS = TRUE
89READ_DISABLED_CAP = TRUE
90READ_ENABLED_CAP = TRUE
91READ_STATUS = TRUE
92READ_LOCK_CAP = TRUE
93READ_LOCK_STATUS = TRUE
94
95#
96# Files to be placed in MAIN FV
97#
98# This firmware volume will have files placed in it uncompressed,
99# and then then entire firmware volume will be compressed in a
100# single compression operation in order to achieve better
101# overall compression.
102#
103
104APRIORI PEI {
105 INF MdeModulePkg/Universal/PCD/Pei/Pcd.inf
106}
107
108#
109# PEI Phase modules
110#
111INF MdeModulePkg/Core/Pei/PeiMain.inf
112INF MdeModulePkg/Universal/PCD/Pei/Pcd.inf
113INF IntelFrameworkModulePkg/Universal/StatusCode/Pei/StatusCodePei.inf
114INF OvmfPkg/PlatformPei/PlatformPei.inf
115INF MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf
116
117FILE FV_IMAGE = A4EF5A93-3F1B-4232-A1C4-F0910E6D1D9C {
118 SECTION COMPRESS PI_NONE {
119 SECTION FV_IMAGE = DXEFV
120 }
121}
122
123################################################################################
124
125[FV.DXEFV]
126BlockSize = 0x10000
127FvAlignment = 16
128ERASE_POLARITY = 1
129MEMORY_MAPPED = TRUE
130STICKY_WRITE = TRUE
131LOCK_CAP = TRUE
132LOCK_STATUS = TRUE
133WRITE_DISABLED_CAP = TRUE
134WRITE_ENABLED_CAP = TRUE
135WRITE_STATUS = TRUE
136WRITE_LOCK_CAP = TRUE
137WRITE_LOCK_STATUS = TRUE
138READ_DISABLED_CAP = TRUE
139READ_ENABLED_CAP = TRUE
140READ_STATUS = TRUE
141READ_LOCK_CAP = TRUE
142READ_LOCK_STATUS = TRUE
143
144APRIORI DXE {
145 INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf
146}
147
148#
149# DXE Phase modules
150#
151INF MdeModulePkg/Core/Dxe/DxeMain.inf
152
153INF IntelFrameworkModulePkg/Universal/StatusCode/RuntimeDxe/StatusCodeRuntimeDxe.inf
154INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf
155
156INF MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf
157INF MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf
158INF MdeModulePkg/Universal/EbcDxe/EbcDxe.inf
159INF PcAtChipsetPkg/8259InterruptControllerDxe/8259.inf
160INF UefiCpuPkg/CpuIo2Dxe/CpuIo2Dxe.inf
161INF UefiCpuPkg/CpuDxe/CpuDxe.inf
162INF PcAtChipsetPkg/8254TimerDxe/8254Timer.inf
163INF PcAtChipsetPkg/PciHostBridgeDxe/PciHostBridgeDxe.inf
164INF MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf
165INF PcAtChipsetPkg/KbcResetDxe/Reset.inf
166INF MdeModulePkg/Universal/Metronome/Metronome.inf
167INF PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcatRealTimeClockRuntimeDxe.inf
168
169INF OvmfPkg/BlockMmioToBlockIoDxe/BlockIo.inf
170INF OvmfPkg/EmuVariableFvbRuntimeDxe/Fvb.inf
171INF MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteDxe.inf
172!ifndef $(VBOX)
173INF MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf
174!else
175INF MdeModulePkg/Universal/Variable/EmuRuntimeDxe/EmuVariableRuntimeDxe.inf
176!endif
177INF MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf
178INF MdeModulePkg/Universal/MonotonicCounterRuntimeDxe/MonotonicCounterRuntimeDxe.inf
179INF MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf
180INF MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf
181INF MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf
182INF MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.inf
183INF MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf
184INF IntelFrameworkModulePkg/Universal/BdsDxe/BdsDxe.inf
185INF MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf
186INF MdeModulePkg/Universal/PrintDxe/PrintDxe.inf
187INF MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf
188INF MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf
189INF MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf
190INF MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf
191INF MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf
192!ifndef $(VBOX)
193INF IntelFrameworkModulePkg/Bus/Pci/IdeBusDxe/IdeBusDxe.inf
194!endif
195INF PcAtChipsetPkg/Bus/Pci/IdeControllerDxe/IdeControllerDxe.inf
196INF MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf
197INF MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf
198INF MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf
199
200!ifdef $(VBOX)
201INF MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.inf
202INF MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBusDxe.inf
203INF VBoxPkg/VBoxVgaMiniPortDxe/VBoxVgaMiniPortDxe.inf
204INF VBoxPkg/VBoxVgaDxe/VBoxVgaDxe.inf
205INF VBoxPkg/VBoxFsDxe/VBoxIso9660.inf
206INF VBoxPkg/VBoxFsDxe/VBoxHfs.inf
207INF VBoxPkg/VBoxSysTables/VBoxSysTables.inf
208INF VBoxPkg/VBoxAppleSim/VBoxAppleSim.inf
209 # we need it for VBoxAppleSim
210INF IntelFrameworkModulePkg/Universal/DataHubDxe/DataHubDxe.inf
211INF MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf
212INF MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.inf
213!endif
214
215INF PcAtChipsetPkg/IsaAcpiDxe/IsaAcpi.inf
216INF IntelFrameworkModulePkg/Bus/Isa/IsaBusDxe/IsaBusDxe.inf
217INF IntelFrameworkModulePkg/Bus/Isa/IsaIoDxe/IsaIoDxe.inf
218
219!ifndef $(SOURCE_DEBUG_ENABLE)
220INF IntelFrameworkModulePkg/Bus/Isa/IsaSerialDxe/IsaSerialDxe.inf
221!endif
222
223INF IntelFrameworkModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2keyboardDxe.inf
224INF IntelFrameworkModulePkg/Bus/Isa/IsaFloppyDxe/IsaFloppyDxe.inf
225
226INF MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf
227INF OvmfPkg/SmbiosPlatformDxe/SmbiosPlatformDxe.inf
228
229INF MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf
230INF MdeModulePkg/Universal/Acpi/AcpiPlatformDxe/AcpiPlatformDxe.inf
231!ifndef $(VBOX)
232INF RuleOverride=ACPITABLE OvmfPkg/AcpiTables/AcpiTables.inf
233!endif
234
235INF RuleOverride = BINARY FatBinPkg/EnhancedFatDxe/Fat.inf
236
237!if $(BUILD_NEW_SHELL)
238INF ShellPkg/Application/Shell/Shell.inf
239!else
240!if $(USE_NEW_SHELL)
241INF RuleOverride = BINARY ShellBinPkg/UefiShell/UefiShell.inf
242!else
243INF RuleOverride = BINARY EdkShellBinPkg/FullShell/FullShell.inf
244!endif
245!endif
246
247FILE FREEFORM = PCD(gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdLogoFile) {
248!ifndef $(VBOX)
249 SECTION RAW = MdeModulePkg/Logo/Logo.bmp
250!else
251 !ifndef $(VBOX_OSE)
252 SECTION RAW = $(VBOX_PATH_ROOT)/src/VBox/Devices/Graphics/BIOS/puel_logo.bmp
253 !else
254 SECTION RAW = $(VBOX_PATH_ROOT)/src/VBox/Devices/Graphics/BIOS/ose_logo2.bmp
255 !endif
256!endif
257}
258
259#
260# Network modules
261#
262!if $(NETWORK_ENABLE)
263 FILE DRIVER = 5D695E11-9B3F-4b83-B25F-4A8D5D69BE07 {
264 SECTION PE32 = Intel3.5/EFI32/E3507E2.EFI
265 }
266 INF MdeModulePkg/Universal/Network/SnpDxe/SnpDxe.inf
267 INF MdeModulePkg/Universal/Network/DpcDxe/DpcDxe.inf
268 INF MdeModulePkg/Universal/Network/MnpDxe/MnpDxe.inf
269 INF MdeModulePkg/Universal/Network/VlanConfigDxe/VlanConfigDxe.inf
270 INF MdeModulePkg/Universal/Network/ArpDxe/ArpDxe.inf
271 INF MdeModulePkg/Universal/Network/Dhcp4Dxe/Dhcp4Dxe.inf
272 INF MdeModulePkg/Universal/Network/Ip4ConfigDxe/Ip4ConfigDxe.inf
273 INF MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Dxe.inf
274 INF MdeModulePkg/Universal/Network/Mtftp4Dxe/Mtftp4Dxe.inf
275 INF MdeModulePkg/Universal/Network/Tcp4Dxe/Tcp4Dxe.inf
276 INF MdeModulePkg/Universal/Network/Udp4Dxe/Udp4Dxe.inf
277 INF MdeModulePkg/Universal/Network/UefiPxeBcDxe/UefiPxeBcDxe.inf
278 INF MdeModulePkg/Universal/Network/IScsiDxe/IScsiDxe.inf
279!endif
280
281#
282# Usb Support
283#
284!ifndef $(VBOX)
285INF MdeModulePkg/Bus/Pci/UhciDxe/UhciDxe.inf
286INF MdeModulePkg/Bus/Pci/EhciDxe/EhciDxe.inf
287INF MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf
288INF MdeModulePkg/Bus/Usb/UsbKbDxe/UsbKbDxe.inf
289INF MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassStorageDxe.inf
290!endif
291
292!ifdef $(CSM_ENABLE)
293INF IntelFrameworkModulePkg/Csm/BiosThunk/VideoDxe/VideoDxe.inf
294INF IntelFrameworkModulePkg/Csm/LegacyBiosDxe/LegacyBiosDxe.inf
295INF RuleOverride=CSM OvmfPkg/Csm/Csm16/Csm16.inf
296!endif
297
298################################################################################
299
300[FV.FVMAIN_COMPACT]
301FvAlignment = 16
302ERASE_POLARITY = 1
303MEMORY_MAPPED = TRUE
304STICKY_WRITE = TRUE
305LOCK_CAP = TRUE
306LOCK_STATUS = TRUE
307WRITE_DISABLED_CAP = TRUE
308WRITE_ENABLED_CAP = TRUE
309WRITE_STATUS = TRUE
310WRITE_LOCK_CAP = TRUE
311WRITE_LOCK_STATUS = TRUE
312READ_DISABLED_CAP = TRUE
313READ_ENABLED_CAP = TRUE
314READ_STATUS = TRUE
315READ_LOCK_CAP = TRUE
316READ_LOCK_STATUS = TRUE
317
318FILE FV_IMAGE = 9E21FD93-9C72-4c15-8C4B-E77F1DB2D792 {
319 SECTION GUIDED EE4E5898-3914-4259-9D6E-DC7BD79403CF PROCESSING_REQUIRED = TRUE {
320 SECTION FV_IMAGE = MAINFV
321 }
322 }
323
324################################################################################
325
326[Rule.Common.SEC]
327 FILE SEC = $(NAMED_GUID) {
328 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
329 UI STRING ="$(MODULE_NAME)" Optional
330 VERSION STRING ="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
331 }
332
333[Rule.Common.PEI_CORE]
334 FILE PEI_CORE = $(NAMED_GUID) {
335 PE32 PE32 Align=32 $(INF_OUTPUT)/$(MODULE_NAME).efi
336 UI STRING ="$(MODULE_NAME)" Optional
337 VERSION STRING ="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
338 }
339
340[Rule.Common.PEIM]
341 FILE PEIM = $(NAMED_GUID) {
342 PEI_DEPEX PEI_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
343 PE32 PE32 Align=32 $(INF_OUTPUT)/$(MODULE_NAME).efi
344 UI STRING="$(MODULE_NAME)" Optional
345 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
346 }
347
348[Rule.Common.DXE_CORE]
349 FILE DXE_CORE = $(NAMED_GUID) {
350 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
351 UI STRING="$(MODULE_NAME)" Optional
352 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
353 }
354
355[Rule.Common.DXE_DRIVER]
356 FILE DRIVER = $(NAMED_GUID) {
357 DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
358 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
359 UI STRING="$(MODULE_NAME)" Optional
360 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
361 }
362
363[Rule.Common.DXE_RUNTIME_DRIVER]
364 FILE DRIVER = $(NAMED_GUID) {
365 DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
366 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
367 UI STRING="$(MODULE_NAME)" Optional
368 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
369 }
370
371[Rule.Common.UEFI_DRIVER]
372 FILE DRIVER = $(NAMED_GUID) {
373 DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
374 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
375 UI STRING="$(MODULE_NAME)" Optional
376 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
377 }
378
379[Rule.Common.UEFI_DRIVER.BINARY]
380 FILE DRIVER = $(NAMED_GUID) {
381 DXE_DEPEX DXE_DEPEX Optional |.depex
382 PE32 PE32 |.efi
383 UI STRING="$(MODULE_NAME)" Optional
384 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
385 }
386
387[Rule.Common.UEFI_APPLICATION]
388 FILE APPLICATION = $(NAMED_GUID) {
389 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
390 UI STRING="$(MODULE_NAME)" Optional
391 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
392 }
393
394[Rule.Common.UEFI_APPLICATION.BINARY]
395 FILE APPLICATION = $(NAMED_GUID) {
396 PE32 PE32 |.efi
397 UI STRING="$(MODULE_NAME)" Optional
398 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
399 }
400
401[Rule.Common.USER_DEFINED.ACPITABLE]
402 FILE FREEFORM = $(NAMED_GUID) {
403 RAW ACPI |.acpi
404 RAW ASL |.aml
405 }
406
407[Rule.Common.USER_DEFINED.CSM]
408 FILE FREEFORM = $(NAMED_GUID) {
409 RAW BIN |.bin
410 }
411
412[Rule.Common.SEC.RESET_VECTOR]
413 FILE RAW = $(NAMED_GUID) {
414 RAW RAW |.raw
415 }
416
417!ifndef $(VBOX)
418[OptionRom.OvmfVideo]
419INF OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf {
420 PCI_DEVICE_ID = 0x00B8
421 }
422!endif
注意: 瀏覽 TracBrowser 來幫助您使用儲存庫瀏覽器

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