VirtualBox

source: vbox/trunk/src/VBox/Devices/EFI/FirmwareNew/UefiPayloadPkg/UefiPayloadPkg.fdf@ 105668

最後變更 在這個檔案從105668是 101291,由 vboxsync 提交於 17 月 前

EFI/FirmwareNew: Make edk2-stable202308 build on all supported platforms (using gcc at least, msvc not tested yet), bugref:4643

  • 屬性 svn:eol-style 設為 native
檔案大小: 14.3 KB
 
1## @file
2# Bootloader Payload Package
3#
4# Provides drivers and definitions to create uefi payload for bootloaders.
5#
6# Copyright (c) 2014 - 2020, Intel Corporation. All rights reserved.<BR>
7# SPDX-License-Identifier: BSD-2-Clause-Patent
8#
9##
10
11[Defines]
12DEFINE FD_BASE = 0x00800000
13DEFINE FD_BLOCK_SIZE = 0x00001000
14
15!if $(TARGET) == "NOOPT"
16DEFINE FD_SIZE = 0x00850000
17DEFINE NUM_BLOCKS = 0x850
18!else
19
20DEFINE FD_SIZE = 0x00590000
21DEFINE NUM_BLOCKS = 0x590
22!endif
23
24################################################################################
25[FD.UefiPayload]
26BaseAddress = $(FD_BASE) | gUefiPayloadPkgTokenSpaceGuid.PcdPayloadFdMemBase
27Size = $(FD_SIZE) | gUefiPayloadPkgTokenSpaceGuid.PcdPayloadFdMemSize
28ErasePolarity = 1
29BlockSize = $(FD_BLOCK_SIZE)
30NumBlocks = $(NUM_BLOCKS)
31
320x00000000|$(FD_SIZE)
33FV = PLDFV
34
35################################################################################
36[FV.PLDFV]
37FvNameGuid = 96E75986-6FDD-491E-9FD5-35E21AC45B45
38BlockSize = $(FD_BLOCK_SIZE)
39FvAlignment = 16
40ERASE_POLARITY = 1
41MEMORY_MAPPED = TRUE
42STICKY_WRITE = TRUE
43LOCK_CAP = TRUE
44LOCK_STATUS = TRUE
45WRITE_DISABLED_CAP = TRUE
46WRITE_ENABLED_CAP = TRUE
47WRITE_STATUS = TRUE
48WRITE_LOCK_CAP = TRUE
49WRITE_LOCK_STATUS = TRUE
50READ_DISABLED_CAP = TRUE
51READ_ENABLED_CAP = TRUE
52READ_STATUS = TRUE
53READ_LOCK_CAP = TRUE
54READ_LOCK_STATUS = TRUE
55
56!if $(UNIVERSAL_PAYLOAD) == FALSE
57INF UefiPayloadPkg/UefiPayloadEntry/UefiPayloadEntry.inf
58!endif
59FILE FV_IMAGE = 4E35FD93-9C72-4c15-8C4B-E77F1DB2D793 {
60 SECTION FV_IMAGE = DXEFV
61}
62!if $(UNIVERSAL_PAYLOAD) == TRUE
63!if $(NETWORK_DRIVER_ENABLE) == TRUE
64################################################################################
65[FV.NETWORKFV]
66FvNameGuid = 3CF5CB69-C439-4B84-AF11-8167B22D7221
67BlockSize = $(FD_BLOCK_SIZE)
68FvForceRebase = FALSE
69FvAlignment = 16
70ERASE_POLARITY = 1
71MEMORY_MAPPED = TRUE
72STICKY_WRITE = TRUE
73LOCK_CAP = TRUE
74LOCK_STATUS = TRUE
75WRITE_DISABLED_CAP = TRUE
76WRITE_ENABLED_CAP = TRUE
77WRITE_STATUS = TRUE
78WRITE_LOCK_CAP = TRUE
79WRITE_LOCK_STATUS = TRUE
80READ_DISABLED_CAP = TRUE
81READ_ENABLED_CAP = TRUE
82READ_STATUS = TRUE
83READ_LOCK_CAP = TRUE
84READ_LOCK_STATUS = TRUE
85
86#
87# UEFI network modules
88#
89!include NetworkPkg/Network.fdf.inc
90!endif
91
92################################################################################
93[FV.BDSFV]
94FvNameGuid = CA5590AF-9558-4822-B5EA-BE2E876CD3EC
95BlockSize = $(FD_BLOCK_SIZE)
96FvForceRebase = FALSE
97FvAlignment = 16
98ERASE_POLARITY = 1
99MEMORY_MAPPED = TRUE
100STICKY_WRITE = TRUE
101LOCK_CAP = TRUE
102LOCK_STATUS = TRUE
103WRITE_DISABLED_CAP = TRUE
104WRITE_ENABLED_CAP = TRUE
105WRITE_STATUS = TRUE
106WRITE_LOCK_CAP = TRUE
107WRITE_LOCK_STATUS = TRUE
108READ_DISABLED_CAP = TRUE
109READ_ENABLED_CAP = TRUE
110READ_STATUS = TRUE
111READ_LOCK_CAP = TRUE
112READ_LOCK_STATUS = TRUE
113
114INF MdeModulePkg/Universal/BdsDxe/BdsDxe.inf
115INF RuleOverride = UI MdeModulePkg/Application/UiApp/UiApp.inf
116INF MdeModulePkg/Application/BootManagerMenuApp/BootManagerMenuApp.inf
117!endif
118
119[FV.DXEFV]
120FvNameGuid = 8063C21A-8E58-4576-95CE-089E87975D23
121BlockSize = $(FD_BLOCK_SIZE)
122FvForceRebase = FALSE
123FvAlignment = 16
124ERASE_POLARITY = 1
125MEMORY_MAPPED = TRUE
126STICKY_WRITE = TRUE
127LOCK_CAP = TRUE
128LOCK_STATUS = TRUE
129WRITE_DISABLED_CAP = TRUE
130WRITE_ENABLED_CAP = TRUE
131WRITE_STATUS = TRUE
132WRITE_LOCK_CAP = TRUE
133WRITE_LOCK_STATUS = TRUE
134READ_DISABLED_CAP = TRUE
135READ_ENABLED_CAP = TRUE
136READ_STATUS = TRUE
137READ_LOCK_CAP = TRUE
138READ_LOCK_STATUS = TRUE
139
140APRIORI DXE {
141 INF MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf
142 INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf
143 INF MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.inf
144 INF MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf
145 INF UefiPayloadPkg/BlSupportDxe/BlSupportDxe.inf
146}
147
148#
149# DXE Phase modules
150#
151INF MdeModulePkg/Core/Dxe/DxeMain.inf
152INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf
153INF MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.inf
154INF MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf
155
156!if $(CRYPTO_PROTOCOL_SUPPORT) == TRUE
157INF CryptoPkg/Driver/CryptoDxe.inf
158!endif
159!if $(SECURITY_STUB_ENABLE) == TRUE
160INF MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf
161!endif
162INF UefiCpuPkg/CpuDxe/CpuDxe.inf
163
164INF PcAtChipsetPkg/HpetTimerDxe/HpetTimerDxe.inf
165INF MdeModulePkg/Universal/Metronome/Metronome.inf
166INF MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf
167INF MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf
168INF MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf
169INF MdeModulePkg/Universal/MonotonicCounterRuntimeDxe/MonotonicCounterRuntimeDxe.inf
170
171!if $(DISABLE_RESET_SYSTEM) == FALSE
172INF MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystemRuntimeDxe.inf
173!endif
174INF PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcatRealTimeClockRuntimeDxe.inf
175!if $(PERFORMANCE_MEASUREMENT_ENABLE)
176 INF MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTableDxe/FirmwarePerformanceDxe.inf
177!endif
178
179#
180# SMM Support
181#
182!if $(SMM_SUPPORT) == TRUE
183 INF UefiPayloadPkg/SmmAccessDxe/SmmAccessDxe.inf
184 INF UefiPayloadPkg/SmmControlRuntimeDxe/SmmControlRuntimeDxe.inf
185 INF UefiPayloadPkg/BlSupportSmm/BlSupportSmm.inf
186 INF MdeModulePkg/Core/PiSmmCore/PiSmmIpl.inf
187 INF MdeModulePkg/Core/PiSmmCore/PiSmmCore.inf
188 INF UefiCpuPkg/CpuIo2Smm/CpuIo2Smm.inf
189 INF UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf
190 INF UefiPayloadPkg/PchSmiDispatchSmm/PchSmiDispatchSmm.inf
191!if $(PERFORMANCE_MEASUREMENT_ENABLE)
192 INF MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTableSmm/FirmwarePerformanceSmm.inf
193!endif
194!endif
195
196!if $(VARIABLE_SUPPORT) == "EMU"
197 INF MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf
198!elseif $(VARIABLE_SUPPORT) == "SPI"
199 INF UefiPayloadPkg/FvbRuntimeDxe/FvbSmm.inf
200 INF MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmm.inf
201 INF MdeModulePkg/Universal/Variable/RuntimeDxe/VariableSmm.inf
202 INF MdeModulePkg/Universal/Variable/RuntimeDxe/VariableSmmRuntimeDxe.inf
203!endif
204
205INF UefiCpuPkg/CpuIo2Dxe/CpuIo2Dxe.inf
206INF MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf
207!if $(MEMORY_TEST) == "GENERIC"
208INF MdeModulePkg/Universal/MemoryTest/GenericMemoryTestDxe/GenericMemoryTestDxe.inf
209!elseif $(MEMORY_TEST) == "NULL"
210INF MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf
211!endif
212INF MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf
213INF MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf
214INF MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf
215INF MdeModulePkg/Universal/PlatformDriOverrideDxe/PlatformDriOverrideDxe.inf
216INF MdeModulePkg/Universal/EbcDxe/EbcDxe.inf
217INF UefiPayloadPkg/BlSupportDxe/BlSupportDxe.inf
218
219INF MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf
220!if $(BOOTSPLASH_IMAGE)
221INF MdeModulePkg/Logo/LogoDxe.inf
222!endif
223
224#
225# PCI Support
226#
227INF MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf
228INF MdeModulePkg/Bus/Pci/PciHostBridgeDxe/PciHostBridgeDxe.inf
229
230#
231# ISA Support
232#
233!if $(SERIAL_DRIVER_ENABLE) == TRUE
234INF MdeModulePkg/Universal/SerialDxe/SerialDxe.inf
235!endif
236!if $(SIO_BUS_ENABLE) == TRUE
237INF OvmfPkg/SioBusDxe/SioBusDxe.inf
238!endif
239!if $(PS2_KEYBOARD_ENABLE) == TRUE
240INF MdeModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2KeyboardDxe.inf
241!endif
242!if $(PS2_MOUSE_ENABLE) == TRUE
243INF MdeModulePkg/Bus/Isa/Ps2MouseDxe/Ps2MouseDxe.inf
244!endif
245
246#
247# Console Support
248#
249INF MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf
250INF MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf
251INF MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.inf
252!if $(DISABLE_SERIAL_TERMINAL) == FALSE
253INF MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf
254!endif
255INF UefiPayloadPkg/GraphicsOutputDxe/GraphicsOutputDxe.inf
256
257#
258# SCSI/ATA/IDE/DISK Support
259#
260INF MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf
261INF MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf
262INF MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf
263!if $(ATA_ENABLE) == TRUE
264INF MdeModulePkg/Bus/Pci/SataControllerDxe/SataControllerDxe.inf
265INF MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBusDxe.inf
266!endif
267INF MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.inf
268INF MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf
269INF MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf
270!if $(NVME_ENABLE) == TRUE
271INF MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpressDxe.inf
272!endif
273!if $(RAM_DISK_ENABLE) == TRUE
274INF MdeModulePkg/Universal/Disk/RamDiskDxe/RamDiskDxe.inf
275!endif
276INF FatPkg/EnhancedFatDxe/Fat.inf
277
278#
279# SD/eMMC Support
280#
281!if $(SD_ENABLE) == TRUE
282INF MdeModulePkg/Bus/Pci/SdMmcPciHcDxe/SdMmcPciHcDxe.inf
283INF MdeModulePkg/Bus/Sd/EmmcDxe/EmmcDxe.inf
284INF MdeModulePkg/Bus/Sd/SdDxe/SdDxe.inf
285!endif
286
287#
288# Usb Support
289#
290INF MdeModulePkg/Bus/Pci/UhciDxe/UhciDxe.inf
291INF MdeModulePkg/Bus/Pci/EhciDxe/EhciDxe.inf
292INF MdeModulePkg/Bus/Pci/XhciDxe/XhciDxe.inf
293INF MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf
294INF MdeModulePkg/Bus/Usb/UsbKbDxe/UsbKbDxe.inf
295INF MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassStorageDxe.inf
296INF MdeModulePkg/Bus/Usb/UsbMouseDxe/UsbMouseDxe.inf
297
298#
299# ACPI Support
300#
301INF MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf
302!if $(BOOTSPLASH_IMAGE)
303INF MdeModulePkg/Universal/Acpi/AcpiPlatformDxe/AcpiPlatformDxe.inf
304INF MdeModulePkg/Universal/Acpi/BootGraphicsResourceTableDxe/BootGraphicsResourceTableDxe.inf
305!endif
306
307!if $(UNIVERSAL_PAYLOAD) == FALSE
308INF MdeModulePkg/Universal/BdsDxe/BdsDxe.inf
309INF RuleOverride = UI MdeModulePkg/Application/UiApp/UiApp.inf
310INF MdeModulePkg/Application/BootManagerMenuApp/BootManagerMenuApp.inf
311#
312# UEFI network modules
313#
314!if $(NETWORK_DRIVER_ENABLE) == TRUE
315 !include NetworkPkg/Network.fdf.inc
316!endif
317!endif
318
319#
320# Shell
321#
322!if $(SHELL_TYPE) == BUILD_SHELL
323INF ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf
324!if $(PERFORMANCE_MEASUREMENT_ENABLE) == TRUE
325INF ShellPkg/DynamicCommand/DpDynamicCommand/DpDynamicCommand.inf
326!endif
327INF ShellPkg/Application/Shell/Shell.inf
328!endif
329
330
331################################################################################
332#
333# Rules are use with the [FV] section's module INF type to define
334# how an FFS file is created for a given INF file. The following Rule are the default
335# rules for the different module type. User can add the customized rules to define the
336# content of the FFS file.
337#
338################################################################################
339
340[Rule.Common.SEC]
341 FILE SEC = $(NAMED_GUID) {
342 PE32 PE32 Align=32 $(INF_OUTPUT)/$(MODULE_NAME).efi
343 }
344
345[Rule.Common.PEI_CORE]
346 FILE PEI_CORE = $(NAMED_GUID) {
347 PE32 PE32 Align=Auto $(INF_OUTPUT)/$(MODULE_NAME).efi
348 UI STRING ="$(MODULE_NAME)" Optional
349 VERSION STRING ="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
350 }
351
352[Rule.Common.PEIM]
353 FILE PEIM = $(NAMED_GUID) {
354 PEI_DEPEX PEI_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
355 PE32 PE32 Align=Auto $(INF_OUTPUT)/$(MODULE_NAME).efi
356 UI STRING="$(MODULE_NAME)" Optional
357 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
358 }
359
360[Rule.Common.DXE_CORE]
361 FILE DXE_CORE = $(NAMED_GUID) {
362 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
363 UI STRING="$(MODULE_NAME)" Optional
364 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
365 }
366
367[Rule.Common.DXE_DRIVER]
368 FILE DRIVER = $(NAMED_GUID) {
369 DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
370 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
371 UI STRING="$(MODULE_NAME)" Optional
372 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
373 }
374
375[Rule.Common.DXE_RUNTIME_DRIVER]
376 FILE DRIVER = $(NAMED_GUID) {
377 DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
378 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
379 UI STRING="$(MODULE_NAME)" Optional
380 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
381 }
382[Rule.Common.DXE_SMM_DRIVER]
383 FILE SMM = $(NAMED_GUID) {
384 SMM_DEPEX SMM_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
385 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
386 UI STRING="$(MODULE_NAME)" Optional
387 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
388 }
389
390[Rule.Common.SMM_CORE]
391 FILE SMM_CORE = $(NAMED_GUID) {
392 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
393 UI STRING="$(MODULE_NAME)" Optional
394 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
395 }
396
397[Rule.Common.UEFI_DRIVER]
398 FILE DRIVER = $(NAMED_GUID) {
399 DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
400 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
401 UI STRING="$(MODULE_NAME)" Optional
402 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
403 }
404
405[Rule.Common.UEFI_DRIVER.BINARY]
406 FILE DRIVER = $(NAMED_GUID) {
407 DXE_DEPEX DXE_DEPEX Optional |.depex
408 PE32 PE32 |.efi
409 UI STRING="$(MODULE_NAME)" Optional
410 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
411 }
412
413[Rule.Common.UEFI_APPLICATION]
414 FILE APPLICATION = $(NAMED_GUID) {
415 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
416 UI STRING="$(MODULE_NAME)" Optional
417 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
418 }
419
420[Rule.Common.UEFI_APPLICATION.BINARY]
421 FILE APPLICATION = $(NAMED_GUID) {
422 PE32 PE32 |.efi
423 UI STRING="$(MODULE_NAME)" Optional
424 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
425 }
426
427[Rule.Common.USER_DEFINED.ACPITABLE]
428 FILE FREEFORM = $(NAMED_GUID) {
429 RAW ACPI |.acpi
430 RAW ASL |.aml
431 }
432
433[Rule.Common.USER_DEFINED.CSM]
434 FILE FREEFORM = $(NAMED_GUID) {
435 RAW BIN |.bin
436 }
437
438[Rule.Common.SEC.RESET_VECTOR]
439 FILE RAW = $(NAMED_GUID) {
440 RAW RAW |.raw
441 }
442
443[Rule.Common.UEFI_APPLICATION.UI]
444 FILE APPLICATION = $(NAMED_GUID) {
445 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
446 UI STRING="Enter Setup"
447 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
448 }
注意: 瀏覽 TracBrowser 來幫助您使用儲存庫瀏覽器

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