VirtualBox

source: vbox/trunk/src/VBox/Devices/EFI/FirmwareNew/OvmfPkg/OvmfXen.fdf@ 80820

Last change on this file since 80820 was 80721, checked in by vboxsync, 5 years ago

Devices/EFI/FirmwareNew: Start upgrade process to edk2-stable201908 (compiles on Windows and works to some extent), bugref:4643

  • Property svn:eol-style set to native
File size: 17.7 KB
Line 
1## @file
2# Open Virtual Machine Firmware: FDF
3#
4# Copyright (c) 2006 - 2019, Intel Corporation. All rights reserved.<BR>
5# (C) Copyright 2016 Hewlett Packard Enterprise Development LP<BR>
6# Copyright (c) 2019, Citrix Systems, Inc.
7#
8# SPDX-License-Identifier: BSD-2-Clause-Patent
9#
10##
11
12################################################################################
13
14[Defines]
15!include OvmfPkg.fdf.inc
16
17#
18# This will allow the flash device image to be recognize as an ELF, with first
19# an ELF headers, then the firmware code.
20#
21[FD.OVMF]
22BaseAddress = $(FW_BASE_ADDRESS)
23Size = $(FW_SIZE)
24ErasePolarity = 1
25BlockSize = $(BLOCK_SIZE)
26NumBlocks = $(FW_BLOCKS)
27
28!if ($(FD_SIZE_IN_KB) == 1024) || ($(FD_SIZE_IN_KB) == 2048)
290x00000000|0x0000e000
30!endif
31!if $(FD_SIZE_IN_KB) == 4096
320x00000000|0x00040000
33!endif
34DATA = {
35 #
36 # This hex array have been generated by OvmfPkg/OvmfXenElfHeaderGenerator.c
37 # and copied manually.
38 #
39 # ELF file header
40 0x7f, 0x45, 0x4c, 0x46, # e_ident[0..3]: Magic number
41 0x01, # File class: 32-bit objects
42 0x01, # Data encoding: 2's complement, little endian
43 0x01, # File version
44 0x03, # OS ABI identification: Object uses GNU ELF extensions
45 0x00, # ABI version
46 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # e_ident[EI_PAD...]
47 0x02, 0x00, # e_type = Executable file
48 0x03, 0x00, # e_machine = Intel 80386
49 0x01, 0x00, 0x00, 0x00, # e_version
50 0xd0, 0xff, 0x2f, 0x00, # e_entry: Entry point virtual address
51 0x34, 0x00, 0x00, 0x00, # e_phoff: Program header table file offset
52 0x00, 0x00, 0x00, 0x00, # e_shoff: Section header table file offset
53 0x00, 0x00, 0x00, 0x00, # e_flags: Processor-specific flags
54 0x34, 0x00, # e_ehsize: ELF header size
55 0x20, 0x00, # e_phentsize: Program header table entry size
56 0x02, 0x00, # e_phnum: Program header table entry count
57 0x00, 0x00, # e_shentsize: Section header table entry size
58 0x00, 0x00, # e_shnum: Section header table entry count
59 0x00, 0x00, # e_shstrndx
60
61 # ELF Program segment headers
62 # - Load segment
63 0x01, 0x00, 0x00, 0x00, # p_type = Loadable program segment
64 0x00, 0x00, 0x00, 0x00, # p_offset
65 0x00, 0x00, 0x10, 0x00, # p_vaddr: Segment virtual address
66 0x00, 0x00, 0x10, 0x00, # p_paddr: Segment physical address
67 0x00, 0x00, 0x20, 0x00, # p_filesz: Segment size in file
68 0x00, 0x00, 0x20, 0x00, # p_memsz: Segment size in memory
69 0x07, 0x00, 0x00, 0x00, # p_flags = Segment is executable | writable | readable
70 0x00, 0x00, 0x00, 0x00, # p_align
71 # - ELFNOTE segment
72 0x04, 0x00, 0x00, 0x00, # p_type = PT_NOTE
73 0x74, 0x00, 0x00, 0x00, # p_offset = point to XEN_ELFNOTE_PHYS32_ENTRY below
74 0x74, 0x00, 0x10, 0x00,
75 0x74, 0x00, 0x10, 0x00,
76 0x14, 0x00, 0x00, 0x00,
77 0x14, 0x00, 0x00, 0x00,
78 0x04, 0x00, 0x00, 0x00, # p_flags = Segment is readable
79 0x00, 0x00, 0x00, 0x00,
80
81 # XEN_ELFNOTE_PHYS32_ENTRY
82 0x04, 0x00, 0x00, 0x00, # name size
83 0x04, 0x00, 0x00, 0x00, # desc size
84 0x12, 0x00, 0x00, 0x00, # type = XEN_ELFNOTE_PHYS32_ENTRY
85 0x58, 0x65, 0x6e, 0x00, # name = "Xen"
86 0xd0, 0xff, 0x2f, 0x00, # desc: PVH entry point
87 0x00
88}
89
90!if ($(FD_SIZE_IN_KB) == 1024) || ($(FD_SIZE_IN_KB) == 2048)
910x0000e000|0x00001000
92!endif
93!if $(FD_SIZE_IN_KB) == 4096
940x00040000|0x00001000
95!endif
96#NV_EVENT_LOG
97
98!if ($(FD_SIZE_IN_KB) == 1024) || ($(FD_SIZE_IN_KB) == 2048)
990x0000f000|0x00001000
100!endif
101!if $(FD_SIZE_IN_KB) == 4096
1020x00041000|0x00001000
103!endif
104#NV_FTW_WORKING
105DATA = {
106 # EFI_FAULT_TOLERANT_WORKING_BLOCK_HEADER->Signature = gEdkiiWorkingBlockSignatureGuid =
107 # { 0x9e58292b, 0x7c68, 0x497d, { 0xa0, 0xce, 0x65, 0x0, 0xfd, 0x9f, 0x1b, 0x95 }}
108 0x2b, 0x29, 0x58, 0x9e, 0x68, 0x7c, 0x7d, 0x49,
109 0xa0, 0xce, 0x65, 0x0, 0xfd, 0x9f, 0x1b, 0x95,
110 # Crc:UINT32 #WorkingBlockValid:1, WorkingBlockInvalid:1, Reserved
111 0x2c, 0xaf, 0x2c, 0x64, 0xFE, 0xFF, 0xFF, 0xFF,
112 # WriteQueueSize: UINT64
113 0xE0, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
114}
115
116!if ($(FD_SIZE_IN_KB) == 1024) || ($(FD_SIZE_IN_KB) == 2048)
1170x00010000|0x00010000
118!endif
119!if $(FD_SIZE_IN_KB) == 4096
1200x00042000|0x00042000
121!endif
122#NV_FTW_SPARE
123
124
125$(VARS_SIZE)|$(FVMAIN_SIZE)
126FV = FVMAIN_COMPACT
127
128$(SECFV_OFFSET)|$(SECFV_SIZE)
129FV = SECFV
130
131#
132# Build the variable store and the firmware code as separate flash device
133# images.
134#
135[FD.OVMF_VARS]
136BaseAddress = $(FW_BASE_ADDRESS)
137Size = $(VARS_SIZE)
138ErasePolarity = 1
139BlockSize = $(BLOCK_SIZE)
140NumBlocks = $(VARS_BLOCKS)
141
142!include VarStore.fdf.inc
143
144[FD.OVMF_CODE]
145BaseAddress = $(CODE_BASE_ADDRESS)
146Size = $(CODE_SIZE)
147ErasePolarity = 1
148BlockSize = $(BLOCK_SIZE)
149NumBlocks = $(CODE_BLOCKS)
150
1510x00000000|$(FVMAIN_SIZE)
152FV = FVMAIN_COMPACT
153
154$(FVMAIN_SIZE)|$(SECFV_SIZE)
155FV = SECFV
156
157################################################################################
158
159[FD.MEMFD]
160BaseAddress = $(MEMFD_BASE_ADDRESS)
161Size = 0xB00000
162ErasePolarity = 1
163BlockSize = 0x10000
164NumBlocks = 0xB0
165
1660x000000|0x006000
167gUefiOvmfPkgTokenSpaceGuid.PcdOvmfSecPageTablesBase|gUefiOvmfPkgTokenSpaceGuid.PcdOvmfSecPageTablesSize
168
1690x006000|0x001000
170gUefiOvmfPkgTokenSpaceGuid.PcdOvmfLockBoxStorageBase|gUefiOvmfPkgTokenSpaceGuid.PcdOvmfLockBoxStorageSize
171
1720x007000|0x001000
173gEfiMdePkgTokenSpaceGuid.PcdGuidedExtractHandlerTableAddress|gUefiOvmfPkgTokenSpaceGuid.PcdGuidedExtractHandlerTableSize
174
1750x008000|0x001000
176# Used by XenResetVector to communicate with XenPlatformPei
177gUefiOvmfPkgTokenSpaceGuid.PcdXenPvhStartOfDayStructPtr|gUefiOvmfPkgTokenSpaceGuid.PcdXenPvhStartOfDayStructPtrSize
178
1790x010000|0x010000
180gUefiOvmfPkgTokenSpaceGuid.PcdOvmfSecPeiTempRamBase|gUefiOvmfPkgTokenSpaceGuid.PcdOvmfSecPeiTempRamSize
181
1820x020000|0x0E0000
183gUefiOvmfPkgTokenSpaceGuid.PcdOvmfPeiMemFvBase|gUefiOvmfPkgTokenSpaceGuid.PcdOvmfPeiMemFvSize
184FV = PEIFV
185
1860x100000|0xA00000
187gUefiOvmfPkgTokenSpaceGuid.PcdOvmfDxeMemFvBase|gUefiOvmfPkgTokenSpaceGuid.PcdOvmfDxeMemFvSize
188FV = DXEFV
189
190################################################################################
191
192[FV.SECFV]
193FvNameGuid = 763BED0D-DE9F-48F5-81F1-3E90E1B1A015
194BlockSize = 0x1000
195FvAlignment = 16
196ERASE_POLARITY = 1
197MEMORY_MAPPED = TRUE
198STICKY_WRITE = TRUE
199LOCK_CAP = TRUE
200LOCK_STATUS = TRUE
201WRITE_DISABLED_CAP = TRUE
202WRITE_ENABLED_CAP = TRUE
203WRITE_STATUS = TRUE
204WRITE_LOCK_CAP = TRUE
205WRITE_LOCK_STATUS = TRUE
206READ_DISABLED_CAP = TRUE
207READ_ENABLED_CAP = TRUE
208READ_STATUS = TRUE
209READ_LOCK_CAP = TRUE
210READ_LOCK_STATUS = TRUE
211
212#
213# SEC Phase modules
214#
215# The code in this FV handles the initial firmware startup, and
216# decompresses the PEI and DXE FVs which handles the rest of the boot sequence.
217#
218INF OvmfPkg/Sec/SecMain.inf
219
220INF RuleOverride=RESET_VECTOR OvmfPkg/XenResetVector/XenResetVector.inf
221
222################################################################################
223[FV.PEIFV]
224FvNameGuid = 6938079B-B503-4E3D-9D24-B28337A25806
225BlockSize = 0x10000
226FvAlignment = 16
227ERASE_POLARITY = 1
228MEMORY_MAPPED = TRUE
229STICKY_WRITE = TRUE
230LOCK_CAP = TRUE
231LOCK_STATUS = TRUE
232WRITE_DISABLED_CAP = TRUE
233WRITE_ENABLED_CAP = TRUE
234WRITE_STATUS = TRUE
235WRITE_LOCK_CAP = TRUE
236WRITE_LOCK_STATUS = TRUE
237READ_DISABLED_CAP = TRUE
238READ_ENABLED_CAP = TRUE
239READ_STATUS = TRUE
240READ_LOCK_CAP = TRUE
241READ_LOCK_STATUS = TRUE
242
243APRIORI PEI {
244 INF MdeModulePkg/Universal/PCD/Pei/Pcd.inf
245}
246
247#
248# PEI Phase modules
249#
250INF MdeModulePkg/Core/Pei/PeiMain.inf
251INF MdeModulePkg/Universal/PCD/Pei/Pcd.inf
252INF MdeModulePkg/Universal/ReportStatusCodeRouter/Pei/ReportStatusCodeRouterPei.inf
253INF MdeModulePkg/Universal/StatusCodeHandler/Pei/StatusCodeHandlerPei.inf
254INF OvmfPkg/XenPlatformPei/XenPlatformPei.inf
255INF MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf
256INF UefiCpuPkg/Universal/Acpi/S3Resume2Pei/S3Resume2Pei.inf
257INF UefiCpuPkg/CpuMpPei/CpuMpPei.inf
258
259################################################################################
260
261[FV.DXEFV]
262FvForceRebase = FALSE
263FvNameGuid = 7CB8BDC9-F8EB-4F34-AAEA-3EE4AF6516A1
264BlockSize = 0x10000
265FvAlignment = 16
266ERASE_POLARITY = 1
267MEMORY_MAPPED = TRUE
268STICKY_WRITE = TRUE
269LOCK_CAP = TRUE
270LOCK_STATUS = TRUE
271WRITE_DISABLED_CAP = TRUE
272WRITE_ENABLED_CAP = TRUE
273WRITE_STATUS = TRUE
274WRITE_LOCK_CAP = TRUE
275WRITE_LOCK_STATUS = TRUE
276READ_DISABLED_CAP = TRUE
277READ_ENABLED_CAP = TRUE
278READ_STATUS = TRUE
279READ_LOCK_CAP = TRUE
280READ_LOCK_STATUS = TRUE
281
282APRIORI DXE {
283 INF MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf
284 INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf
285 INF OvmfPkg/AmdSevDxe/AmdSevDxe.inf
286 INF OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesRuntimeDxe.inf
287}
288
289#
290# DXE Phase modules
291#
292INF MdeModulePkg/Core/Dxe/DxeMain.inf
293
294INF MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.inf
295INF MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf
296INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf
297
298INF MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf
299INF MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf
300INF MdeModulePkg/Universal/EbcDxe/EbcDxe.inf
301INF OvmfPkg/XenTimerDxe/XenTimerDxe.inf
302INF UefiCpuPkg/CpuIo2Dxe/CpuIo2Dxe.inf
303INF UefiCpuPkg/CpuDxe/CpuDxe.inf
304INF OvmfPkg/IncompatiblePciDeviceSupportDxe/IncompatiblePciDeviceSupport.inf
305INF OvmfPkg/PciHotPlugInitDxe/PciHotPlugInit.inf
306INF MdeModulePkg/Bus/Pci/PciHostBridgeDxe/PciHostBridgeDxe.inf
307INF MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf
308INF MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystemRuntimeDxe.inf
309INF MdeModulePkg/Universal/Metronome/Metronome.inf
310INF EmbeddedPkg/RealTimeClockRuntimeDxe/RealTimeClockRuntimeDxe.inf
311
312INF OvmfPkg/XenIoPvhDxe/XenIoPvhDxe.inf
313INF OvmfPkg/XenIoPciDxe/XenIoPciDxe.inf
314INF OvmfPkg/XenBusDxe/XenBusDxe.inf
315INF OvmfPkg/XenPvBlkDxe/XenPvBlkDxe.inf
316INF MdeModulePkg/Universal/SerialDxe/SerialDxe.inf
317
318INF MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf
319INF MdeModulePkg/Universal/MonotonicCounterRuntimeDxe/MonotonicCounterRuntimeDxe.inf
320INF MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf
321INF MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf
322INF MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf
323INF MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.inf
324INF MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf
325INF MdeModulePkg/Universal/DriverHealthManagerDxe/DriverHealthManagerDxe.inf
326INF MdeModulePkg/Universal/BdsDxe/BdsDxe.inf
327INF MdeModulePkg/Application/UiApp/UiApp.inf
328INF MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf
329INF MdeModulePkg/Universal/PrintDxe/PrintDxe.inf
330INF MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf
331INF MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf
332INF MdeModulePkg/Universal/Disk/RamDiskDxe/RamDiskDxe.inf
333INF MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf
334INF MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf
335INF MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf
336INF OvmfPkg/SataControllerDxe/SataControllerDxe.inf
337INF MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.inf
338INF MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBusDxe.inf
339INF MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpressDxe.inf
340INF MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf
341INF MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf
342INF MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf
343INF MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf
344
345INF OvmfPkg/SioBusDxe/SioBusDxe.inf
346!ifndef $(SOURCE_DEBUG_ENABLE)
347INF MdeModulePkg/Bus/Pci/PciSioSerialDxe/PciSioSerialDxe.inf
348!endif
349INF MdeModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2KeyboardDxe.inf
350
351INF MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf
352INF OvmfPkg/SmbiosPlatformDxe/SmbiosPlatformDxe.inf
353
354INF MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf
355INF OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf
356INF RuleOverride=ACPITABLE OvmfPkg/AcpiTables/AcpiTables.inf
357INF MdeModulePkg/Universal/Acpi/S3SaveStateDxe/S3SaveStateDxe.inf
358INF MdeModulePkg/Universal/Acpi/BootScriptExecutorDxe/BootScriptExecutorDxe.inf
359INF MdeModulePkg/Universal/Acpi/BootGraphicsResourceTableDxe/BootGraphicsResourceTableDxe.inf
360
361INF FatPkg/EnhancedFatDxe/Fat.inf
362INF MdeModulePkg/Universal/Disk/UdfDxe/UdfDxe.inf
363
364!if $(TOOL_CHAIN_TAG) != "XCODE5"
365INF ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf
366!endif
367INF ShellPkg/Application/Shell/Shell.inf
368
369INF MdeModulePkg/Logo/LogoDxe.inf
370
371#
372# Network modules
373#
374!if $(E1000_ENABLE)
375 FILE DRIVER = 5D695E11-9B3F-4b83-B25F-4A8D5D69BE07 {
376 SECTION PE32 = Intel3.5/EFIX64/E3522X2.EFI
377 }
378!endif
379!include NetworkPkg/Network.fdf.inc
380
381#
382# Usb Support
383#
384INF MdeModulePkg/Bus/Pci/UhciDxe/UhciDxe.inf
385INF MdeModulePkg/Bus/Pci/EhciDxe/EhciDxe.inf
386INF MdeModulePkg/Bus/Pci/XhciDxe/XhciDxe.inf
387INF MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf
388INF MdeModulePkg/Bus/Usb/UsbKbDxe/UsbKbDxe.inf
389INF MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassStorageDxe.inf
390
391!ifdef $(CSM_ENABLE)
392INF OvmfPkg/Csm/BiosThunk/VideoDxe/VideoDxe.inf
393INF OvmfPkg/Csm/LegacyBiosDxe/LegacyBiosDxe.inf
394INF RuleOverride=CSM OvmfPkg/Csm/Csm16/Csm16.inf
395!endif
396
397INF OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf
398INF OvmfPkg/QemuRamfbDxe/QemuRamfbDxe.inf
399INF OvmfPkg/PlatformDxe/Platform.inf
400INF OvmfPkg/AmdSevDxe/AmdSevDxe.inf
401INF OvmfPkg/IoMmuDxe/IoMmuDxe.inf
402
403#
404# Variable driver stack (non-SMM)
405#
406INF OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesRuntimeDxe.inf
407INF OvmfPkg/EmuVariableFvbRuntimeDxe/Fvb.inf
408INF MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteDxe.inf
409INF MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf
410
411################################################################################
412
413[FV.FVMAIN_COMPACT]
414FvNameGuid = 48DB5E17-707C-472D-91CD-1613E7EF51B0
415FvAlignment = 16
416ERASE_POLARITY = 1
417MEMORY_MAPPED = TRUE
418STICKY_WRITE = TRUE
419LOCK_CAP = TRUE
420LOCK_STATUS = TRUE
421WRITE_DISABLED_CAP = TRUE
422WRITE_ENABLED_CAP = TRUE
423WRITE_STATUS = TRUE
424WRITE_LOCK_CAP = TRUE
425WRITE_LOCK_STATUS = TRUE
426READ_DISABLED_CAP = TRUE
427READ_ENABLED_CAP = TRUE
428READ_STATUS = TRUE
429READ_LOCK_CAP = TRUE
430READ_LOCK_STATUS = TRUE
431
432FILE FV_IMAGE = 9E21FD93-9C72-4c15-8C4B-E77F1DB2D792 {
433 SECTION GUIDED EE4E5898-3914-4259-9D6E-DC7BD79403CF PROCESSING_REQUIRED = TRUE {
434 #
435 # These firmware volumes will have files placed in them uncompressed,
436 # and then both firmware volumes will be compressed in a single
437 # compression operation in order to achieve better overall compression.
438 #
439 SECTION FV_IMAGE = PEIFV
440 SECTION FV_IMAGE = DXEFV
441 }
442 }
443
444!include DecomprScratchEnd.fdf.inc
445
446################################################################################
447
448[Rule.Common.SEC]
449 FILE SEC = $(NAMED_GUID) {
450 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
451 UI STRING ="$(MODULE_NAME)" Optional
452 VERSION STRING ="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
453 }
454
455[Rule.Common.PEI_CORE]
456 FILE PEI_CORE = $(NAMED_GUID) {
457 PE32 PE32 Align=Auto $(INF_OUTPUT)/$(MODULE_NAME).efi
458 UI STRING ="$(MODULE_NAME)" Optional
459 VERSION STRING ="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
460 }
461
462[Rule.Common.PEIM]
463 FILE PEIM = $(NAMED_GUID) {
464 PEI_DEPEX PEI_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
465 PE32 PE32 Align=Auto $(INF_OUTPUT)/$(MODULE_NAME).efi
466 UI STRING="$(MODULE_NAME)" Optional
467 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
468 }
469
470[Rule.Common.DXE_CORE]
471 FILE DXE_CORE = $(NAMED_GUID) {
472 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
473 UI STRING="$(MODULE_NAME)" Optional
474 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
475 }
476
477[Rule.Common.DXE_DRIVER]
478 FILE DRIVER = $(NAMED_GUID) {
479 DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
480 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
481 UI STRING="$(MODULE_NAME)" Optional
482 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
483 RAW ACPI Optional |.acpi
484 RAW ASL Optional |.aml
485 }
486
487[Rule.Common.DXE_RUNTIME_DRIVER]
488 FILE DRIVER = $(NAMED_GUID) {
489 DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
490 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
491 UI STRING="$(MODULE_NAME)" Optional
492 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
493 }
494
495[Rule.Common.UEFI_DRIVER]
496 FILE DRIVER = $(NAMED_GUID) {
497 DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
498 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
499 UI STRING="$(MODULE_NAME)" Optional
500 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
501 }
502
503[Rule.Common.UEFI_DRIVER.BINARY]
504 FILE DRIVER = $(NAMED_GUID) {
505 DXE_DEPEX DXE_DEPEX Optional |.depex
506 PE32 PE32 |.efi
507 UI STRING="$(MODULE_NAME)" Optional
508 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
509 }
510
511[Rule.Common.UEFI_APPLICATION]
512 FILE APPLICATION = $(NAMED_GUID) {
513 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
514 UI STRING="$(MODULE_NAME)" Optional
515 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
516 }
517
518[Rule.Common.UEFI_APPLICATION.BINARY]
519 FILE APPLICATION = $(NAMED_GUID) {
520 PE32 PE32 |.efi
521 UI STRING="$(MODULE_NAME)" Optional
522 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
523 }
524
525[Rule.Common.USER_DEFINED.ACPITABLE]
526 FILE FREEFORM = $(NAMED_GUID) {
527 RAW ACPI |.acpi
528 RAW ASL |.aml
529 }
530
531[Rule.Common.USER_DEFINED.CSM]
532 FILE FREEFORM = $(NAMED_GUID) {
533 RAW BIN |.bin
534 }
535
536[Rule.Common.SEC.RESET_VECTOR]
537 FILE RAW = $(NAMED_GUID) {
538 RAW BIN Align = 16 |.bin
539 }
Note: See TracBrowser for help on using the repository browser.

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