VirtualBox

source: vbox/trunk/src/VBox/Devices/EFI/Firmware/OvmfPkg/OvmfPkgX64.fdf@ 102466

Last change on this file since 102466 was 101291, checked in by vboxsync, 17 months ago

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

  • Property svn:eol-style set to native
File size: 19.3 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#
7# SPDX-License-Identifier: BSD-2-Clause-Patent
8#
9##
10
11################################################################################
12
13[Defines]
14!include OvmfPkg/Include/Fdf/OvmfPkgDefines.fdf.inc
15
16#
17# Build the variable store and the firmware code as one unified flash device
18# image.
19#
20[FD.OVMF]
21BaseAddress = $(FW_BASE_ADDRESS)
22Size = $(FW_SIZE)
23ErasePolarity = 1
24BlockSize = $(BLOCK_SIZE)
25NumBlocks = $(FW_BLOCKS)
26
27!include OvmfPkg/Include/Fdf/VarStore.fdf.inc
28
29$(VARS_SIZE)|$(FVMAIN_SIZE)
30FV = FVMAIN_COMPACT
31
32$(SECFV_OFFSET)|$(SECFV_SIZE)
33FV = SECFV
34
35#
36# Build the variable store and the firmware code as separate flash device
37# images.
38#
39[FD.OVMF_VARS]
40BaseAddress = $(FW_BASE_ADDRESS)
41Size = $(VARS_SIZE)
42ErasePolarity = 1
43BlockSize = $(BLOCK_SIZE)
44NumBlocks = $(VARS_BLOCKS)
45
46!include OvmfPkg/Include/Fdf/VarStore.fdf.inc
47
48[FD.OVMF_CODE]
49BaseAddress = $(CODE_BASE_ADDRESS)
50Size = $(CODE_SIZE)
51ErasePolarity = 1
52BlockSize = $(BLOCK_SIZE)
53NumBlocks = $(CODE_BLOCKS)
54
550x00000000|$(FVMAIN_SIZE)
56FV = FVMAIN_COMPACT
57
58$(FVMAIN_SIZE)|$(SECFV_SIZE)
59FV = SECFV
60
61################################################################################
62
63[FD.MEMFD]
64BaseAddress = $(MEMFD_BASE_ADDRESS)
65Size = 0xE00000
66ErasePolarity = 1
67BlockSize = 0x10000
68NumBlocks = 0xE0
69
700x000000|0x006000
71gUefiOvmfPkgTokenSpaceGuid.PcdOvmfSecPageTablesBase|gUefiOvmfPkgTokenSpaceGuid.PcdOvmfSecPageTablesSize
72
730x006000|0x001000
74gUefiOvmfPkgTokenSpaceGuid.PcdOvmfLockBoxStorageBase|gUefiOvmfPkgTokenSpaceGuid.PcdOvmfLockBoxStorageSize
75
760x007000|0x001000
77gEfiMdePkgTokenSpaceGuid.PcdGuidedExtractHandlerTableAddress|gUefiOvmfPkgTokenSpaceGuid.PcdGuidedExtractHandlerTableSize
78
790x008000|0x001000
80gUefiOvmfPkgTokenSpaceGuid.PcdOvmfSecGhcbPageTableBase|gUefiOvmfPkgTokenSpaceGuid.PcdOvmfSecGhcbPageTableSize
81
820x009000|0x002000
83gUefiOvmfPkgTokenSpaceGuid.PcdOvmfSecGhcbBase|gUefiOvmfPkgTokenSpaceGuid.PcdOvmfSecGhcbSize
84
850x00B000|0x001000
86gUefiOvmfPkgTokenSpaceGuid.PcdOvmfWorkAreaBase|gUefiOvmfPkgTokenSpaceGuid.PcdOvmfWorkAreaSize
87
880x00C000|0x001000
89gUefiOvmfPkgTokenSpaceGuid.PcdOvmfSecGhcbBackupBase|gUefiOvmfPkgTokenSpaceGuid.PcdOvmfSecGhcbBackupSize
90
910x00D000|0x001000
92gUefiOvmfPkgTokenSpaceGuid.PcdOvmfSnpSecretsBase|gUefiOvmfPkgTokenSpaceGuid.PcdOvmfSnpSecretsSize
93
940x00E000|0x001000
95gUefiOvmfPkgTokenSpaceGuid.PcdOvmfCpuidBase|gUefiOvmfPkgTokenSpaceGuid.PcdOvmfCpuidSize
96
970x010000|0x010000
98gUefiOvmfPkgTokenSpaceGuid.PcdOvmfSecPeiTempRamBase|gUefiOvmfPkgTokenSpaceGuid.PcdOvmfSecPeiTempRamSize
99
1000x020000|0x0E0000
101gUefiOvmfPkgTokenSpaceGuid.PcdOvmfPeiMemFvBase|gUefiOvmfPkgTokenSpaceGuid.PcdOvmfPeiMemFvSize
102FV = PEIFV
103
1040x100000|0xD00000
105gUefiOvmfPkgTokenSpaceGuid.PcdOvmfDxeMemFvBase|gUefiOvmfPkgTokenSpaceGuid.PcdOvmfDxeMemFvSize
106FV = DXEFV
107
108##########################################################################################
109# Set the SEV-ES specific work area PCDs (used for all forms of SEV since the
110# the SEV STATUS MSR is now saved in the work area)
111#
112SET gUefiCpuPkgTokenSpaceGuid.PcdSevEsWorkAreaBase = $(MEMFD_BASE_ADDRESS) + gUefiOvmfPkgTokenSpaceGuid.PcdOvmfWorkAreaBase + gUefiOvmfPkgTokenSpaceGuid.PcdOvmfConfidentialComputingWorkAreaHeader
113SET gUefiCpuPkgTokenSpaceGuid.PcdSevEsWorkAreaSize = gUefiOvmfPkgTokenSpaceGuid.PcdOvmfWorkAreaSize - gUefiOvmfPkgTokenSpaceGuid.PcdOvmfConfidentialComputingWorkAreaHeader
114##########################################################################################
115
116################################################################################
117
118[FV.SECFV]
119FvNameGuid = 763BED0D-DE9F-48F5-81F1-3E90E1B1A015
120BlockSize = 0x1000
121FvAlignment = 16
122ERASE_POLARITY = 1
123MEMORY_MAPPED = TRUE
124STICKY_WRITE = TRUE
125LOCK_CAP = TRUE
126LOCK_STATUS = TRUE
127WRITE_DISABLED_CAP = TRUE
128WRITE_ENABLED_CAP = TRUE
129WRITE_STATUS = TRUE
130WRITE_LOCK_CAP = TRUE
131WRITE_LOCK_STATUS = TRUE
132READ_DISABLED_CAP = TRUE
133READ_ENABLED_CAP = TRUE
134READ_STATUS = TRUE
135READ_LOCK_CAP = TRUE
136READ_LOCK_STATUS = TRUE
137
138#
139# SEC Phase modules
140#
141# The code in this FV handles the initial firmware startup, and
142# decompresses the PEI and DXE FVs which handles the rest of the boot sequence.
143#
144INF OvmfPkg/Sec/SecMain.inf
145
146INF RuleOverride=RESET_VECTOR OvmfPkg/ResetVector/ResetVector.inf
147
148################################################################################
149[FV.PEIFV]
150FvNameGuid = 6938079B-B503-4E3D-9D24-B28337A25806
151BlockSize = 0x10000
152FvAlignment = 16
153ERASE_POLARITY = 1
154MEMORY_MAPPED = TRUE
155STICKY_WRITE = TRUE
156LOCK_CAP = TRUE
157LOCK_STATUS = TRUE
158WRITE_DISABLED_CAP = TRUE
159WRITE_ENABLED_CAP = TRUE
160WRITE_STATUS = TRUE
161WRITE_LOCK_CAP = TRUE
162WRITE_LOCK_STATUS = TRUE
163READ_DISABLED_CAP = TRUE
164READ_ENABLED_CAP = TRUE
165READ_STATUS = TRUE
166READ_LOCK_CAP = TRUE
167READ_LOCK_STATUS = TRUE
168
169APRIORI PEI {
170 INF MdeModulePkg/Universal/PCD/Pei/Pcd.inf
171}
172
173#
174# PEI Phase modules
175#
176INF MdeModulePkg/Core/Pei/PeiMain.inf
177INF MdeModulePkg/Universal/PCD/Pei/Pcd.inf
178INF MdeModulePkg/Universal/ReportStatusCodeRouter/Pei/ReportStatusCodeRouterPei.inf
179INF MdeModulePkg/Universal/StatusCodeHandler/Pei/StatusCodeHandlerPei.inf
180INF OvmfPkg/PlatformPei/PlatformPei.inf
181INF MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf
182INF UefiCpuPkg/Universal/Acpi/S3Resume2Pei/S3Resume2Pei.inf
183!if $(SMM_REQUIRE) == TRUE
184INF MdeModulePkg/Universal/FaultTolerantWritePei/FaultTolerantWritePei.inf
185INF MdeModulePkg/Universal/Variable/Pei/VariablePei.inf
186INF OvmfPkg/SmmAccess/SmmAccessPei.inf
187!endif
188INF UefiCpuPkg/CpuMpPei/CpuMpPei.inf
189INF FILE_GUID = $(UP_CPU_PEI_GUID) UefiCpuPkg/CpuMpPei/CpuMpPei.inf
190
191!include OvmfPkg/Include/Fdf/OvmfTpmPei.fdf.inc
192
193################################################################################
194
195[FV.DXEFV]
196FvForceRebase = FALSE
197FvNameGuid = 7CB8BDC9-F8EB-4F34-AAEA-3EE4AF6516A1
198BlockSize = 0x10000
199FvAlignment = 16
200ERASE_POLARITY = 1
201MEMORY_MAPPED = TRUE
202STICKY_WRITE = TRUE
203LOCK_CAP = TRUE
204LOCK_STATUS = TRUE
205WRITE_DISABLED_CAP = TRUE
206WRITE_ENABLED_CAP = TRUE
207WRITE_STATUS = TRUE
208WRITE_LOCK_CAP = TRUE
209WRITE_LOCK_STATUS = TRUE
210READ_DISABLED_CAP = TRUE
211READ_ENABLED_CAP = TRUE
212READ_STATUS = TRUE
213READ_LOCK_CAP = TRUE
214READ_LOCK_STATUS = TRUE
215
216APRIORI DXE {
217 INF MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf
218 INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf
219!ifndef $(VBOX)
220 # AmdSevDxe must be loaded before TdxDxe. Because in SEV guest AmdSevDxe
221 # driver performs a MemEncryptSevClearMmioPageEncMask() call against the
222 # PcdPciExpressBaseAddress range to mark it shared/unencrypted.
223 # Otherwise #VC handler terminates the guest for trying to do MMIO to an
224 # encrypted region (Since the range has not been marked shared/unencrypted).
225 INF OvmfPkg/AmdSevDxe/AmdSevDxe.inf
226 INF OvmfPkg/TdxDxe/TdxDxe.inf
227!endif
228!if $(SMM_REQUIRE) == FALSE
229 INF OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesRuntimeDxe.inf
230!endif
231}
232
233#
234# DXE Phase modules
235#
236INF MdeModulePkg/Core/Dxe/DxeMain.inf
237
238INF MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.inf
239INF MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf
240INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf
241
242INF MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf
243INF MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf
244INF MdeModulePkg/Universal/EbcDxe/EbcDxe.inf
245INF UefiCpuPkg/CpuIo2Dxe/CpuIo2Dxe.inf
246
247INF UefiCpuPkg/CpuDxe/CpuDxe.inf
248INF FILE_GUID = $(UP_CPU_DXE_GUID) UefiCpuPkg/CpuDxe/CpuDxe.inf
249
250!ifdef $(CSM_ENABLE)
251 INF OvmfPkg/8259InterruptControllerDxe/8259.inf
252 INF OvmfPkg/8254TimerDxe/8254Timer.inf
253!else
254 INF OvmfPkg/LocalApicTimerDxe/LocalApicTimerDxe.inf
255!endif
256INF OvmfPkg/IncompatiblePciDeviceSupportDxe/IncompatiblePciDeviceSupport.inf
257INF OvmfPkg/PciHotPlugInitDxe/PciHotPlugInit.inf
258INF MdeModulePkg/Bus/Pci/PciHostBridgeDxe/PciHostBridgeDxe.inf
259INF MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf
260INF MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystemRuntimeDxe.inf
261INF MdeModulePkg/Universal/Metronome/Metronome.inf
262INF PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcatRealTimeClockRuntimeDxe.inf
263
264INF OvmfPkg/VirtioPciDeviceDxe/VirtioPciDeviceDxe.inf
265INF OvmfPkg/Virtio10Dxe/Virtio10.inf
266!ifndef $(VBOX)
267INF OvmfPkg/VirtioBlkDxe/VirtioBlk.inf
268!endif
269INF OvmfPkg/VirtioScsiDxe/VirtioScsi.inf
270!ifndef $(VBOX)
271INF OvmfPkg/VirtioRngDxe/VirtioRng.inf
272INF OvmfPkg/VirtioSerialDxe/VirtioSerial.inf
273!endif
274!if $(PVSCSI_ENABLE) == TRUE
275INF OvmfPkg/PvScsiDxe/PvScsiDxe.inf
276!endif
277!if $(MPT_SCSI_ENABLE) == TRUE
278INF OvmfPkg/MptScsiDxe/MptScsiDxe.inf
279!endif
280!if $(LSI_SCSI_ENABLE) == TRUE
281INF OvmfPkg/LsiScsiDxe/LsiScsiDxe.inf
282!endif
283
284!if $(SECURE_BOOT_ENABLE) == TRUE
285 INF SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConfigDxe.inf
286!endif
287
288INF MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf
289INF MdeModulePkg/Universal/MonotonicCounterRuntimeDxe/MonotonicCounterRuntimeDxe.inf
290INF MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf
291INF MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf
292INF MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf
293INF MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.inf
294INF MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf
295INF MdeModulePkg/Universal/DriverHealthManagerDxe/DriverHealthManagerDxe.inf
296INF MdeModulePkg/Universal/BdsDxe/BdsDxe.inf
297INF MdeModulePkg/Application/UiApp/UiApp.inf
298INF OvmfPkg/QemuKernelLoaderFsDxe/QemuKernelLoaderFsDxe.inf
299INF MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf
300INF MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf
301INF MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf
302INF MdeModulePkg/Universal/Disk/RamDiskDxe/RamDiskDxe.inf
303INF MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf
304INF MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf
305INF MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf
306INF MdeModulePkg/Bus/Pci/SataControllerDxe/SataControllerDxe.inf
307INF MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.inf
308INF MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBusDxe.inf
309INF MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpressDxe.inf
310INF MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf
311INF MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf
312INF MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf
313INF MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf
314
315INF OvmfPkg/SioBusDxe/SioBusDxe.inf
316!if $(SOURCE_DEBUG_ENABLE) == FALSE
317INF MdeModulePkg/Bus/Pci/PciSioSerialDxe/PciSioSerialDxe.inf
318!endif
319INF MdeModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2KeyboardDxe.inf
320
321INF MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf
322INF OvmfPkg/SmbiosPlatformDxe/SmbiosPlatformDxe.inf
323
324!ifdef $(VBOX)
325INF VBoxPkg/VBoxVgaMiniPortDxe/VBoxVgaMiniPortDxe.inf
326INF VBoxPkg/VBoxVgaDxe/VBoxVgaDxe.inf
327INF VBoxPkg/VBoxFsDxe/VBoxHfs.inf
328INF VBoxPkg/VBoxSysTables/VBoxSysTables.inf
329INF VBoxPkg/VBoxAppleSim/VBoxAppleSim.inf
330INF VBoxPkg/VBoxApfsJmpStartDxe/VBoxApfsJmpStartDxe.inf
331INF MdeModulePkg/Universal/Acpi/BootGraphicsResourceTableDxe/BootGraphicsResourceTableDxe.inf
332!endif
333
334!ifndef $(VBOX)
335INF MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf
336INF OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf
337INF MdeModulePkg/Universal/Acpi/S3SaveStateDxe/S3SaveStateDxe.inf
338INF MdeModulePkg/Universal/Acpi/BootScriptExecutorDxe/BootScriptExecutorDxe.inf
339INF MdeModulePkg/Universal/Acpi/BootGraphicsResourceTableDxe/BootGraphicsResourceTableDxe.inf
340!else
341INF MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf
342INF MdeModulePkg/Universal/Acpi/AcpiPlatformDxe/AcpiPlatformDxe.inf
343!endif
344
345INF FatPkg/EnhancedFatDxe/Fat.inf
346INF MdeModulePkg/Universal/Disk/UdfDxe/UdfDxe.inf
347INF OvmfPkg/VirtioFsDxe/VirtioFsDxe.inf
348
349!if $(BUILD_SHELL) == TRUE && $(TOOL_CHAIN_TAG) != "XCODE5"
350INF ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf
351INF ShellPkg/DynamicCommand/HttpDynamicCommand/HttpDynamicCommand.inf
352INF OvmfPkg/LinuxInitrdDynamicShellCommand/LinuxInitrdDynamicShellCommand.inf
353!endif
354!if $(BUILD_SHELL) == TRUE
355INF ShellPkg/Application/Shell/Shell.inf
356!endif
357
358!ifndef $(VBOX)
359INF MdeModulePkg/Logo/LogoDxe.inf
360!else
361INF VBoxPkg/Logo/LogoDxe.inf
362!endif
363
364INF OvmfPkg/TdxDxe/TdxDxe.inf
365
366#
367# Network modules
368#
369!if $(E1000_ENABLE)
370 FILE DRIVER = 5D695E11-9B3F-4b83-B25F-4A8D5D69BE07 {
371 SECTION PE32 = Intel3.5/EFIX64/E3522X2.EFI
372 }
373!endif
374!include NetworkPkg/Network.fdf.inc
375 INF OvmfPkg/VirtioNetDxe/VirtioNet.inf
376!ifdef $(VBOX)
377 INF VBoxPkg/E1kNetDxe/E1kNet.inf
378!endif
379
380#
381# Usb Support
382#
383INF MdeModulePkg/Bus/Pci/UhciDxe/UhciDxe.inf
384INF MdeModulePkg/Bus/Pci/EhciDxe/EhciDxe.inf
385INF MdeModulePkg/Bus/Pci/XhciDxe/XhciDxe.inf
386INF MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf
387INF MdeModulePkg/Bus/Usb/UsbKbDxe/UsbKbDxe.inf
388INF MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassStorageDxe.inf
389
390!ifdef $(CSM_ENABLE)
391INF OvmfPkg/Csm/BiosThunk/VideoDxe/VideoDxe.inf
392INF OvmfPkg/Csm/LegacyBiosDxe/LegacyBiosDxe.inf
393INF RuleOverride=CSM OvmfPkg/Csm/Csm16/Csm16.inf
394!else
395!ifndef $(VBOX)
396INF OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf
397!endif
398!endif
399
400!ifndef $(VBOX)
401INF OvmfPkg/QemuRamfbDxe/QemuRamfbDxe.inf
402INF OvmfPkg/VirtioGpuDxe/VirtioGpu.inf
403!endif
404INF OvmfPkg/PlatformDxe/Platform.inf
405INF OvmfPkg/IoMmuDxe/IoMmuDxe.inf
406
407!if $(SMM_REQUIRE) == TRUE
408INF OvmfPkg/SmmAccess/SmmAccess2Dxe.inf
409INF OvmfPkg/SmmControl2Dxe/SmmControl2Dxe.inf
410INF OvmfPkg/CpuS3DataDxe/CpuS3DataDxe.inf
411INF MdeModulePkg/Core/PiSmmCore/PiSmmIpl.inf
412INF MdeModulePkg/Core/PiSmmCore/PiSmmCore.inf
413INF OvmfPkg/CpuHotplugSmm/CpuHotplugSmm.inf
414INF UefiCpuPkg/CpuIo2Smm/CpuIo2Smm.inf
415INF MdeModulePkg/Universal/LockBox/SmmLockBox/SmmLockBox.inf
416INF UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf
417
418#
419# Variable driver stack (SMM)
420#
421INF OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesSmm.inf
422INF MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmm.inf
423INF MdeModulePkg/Universal/Variable/RuntimeDxe/VariableSmm.inf
424INF MdeModulePkg/Universal/Variable/RuntimeDxe/VariableSmmRuntimeDxe.inf
425
426!else
427
428#
429# Variable driver stack (non-SMM)
430#
431INF OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesRuntimeDxe.inf
432INF OvmfPkg/EmuVariableFvbRuntimeDxe/Fvb.inf
433INF MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteDxe.inf
434INF MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf
435!endif
436
437#
438# EFI_CC_MEASUREMENT_PROTOCOL
439#
440!if $(CC_MEASUREMENT_ENABLE) == TRUE
441INF SecurityPkg/Tcg/TdTcg2Dxe/TdTcg2Dxe.inf
442!endif
443
444#
445# TPM support
446#
447!include OvmfPkg/Include/Fdf/OvmfTpmDxe.fdf.inc
448
449################################################################################
450
451[FV.FVMAIN_COMPACT]
452FvNameGuid = 48DB5E17-707C-472D-91CD-1613E7EF51B0
453FvAlignment = 16
454ERASE_POLARITY = 1
455MEMORY_MAPPED = TRUE
456STICKY_WRITE = TRUE
457LOCK_CAP = TRUE
458LOCK_STATUS = TRUE
459WRITE_DISABLED_CAP = TRUE
460WRITE_ENABLED_CAP = TRUE
461WRITE_STATUS = TRUE
462WRITE_LOCK_CAP = TRUE
463WRITE_LOCK_STATUS = TRUE
464READ_DISABLED_CAP = TRUE
465READ_ENABLED_CAP = TRUE
466READ_STATUS = TRUE
467READ_LOCK_CAP = TRUE
468READ_LOCK_STATUS = TRUE
469
470FILE FV_IMAGE = 9E21FD93-9C72-4c15-8C4B-E77F1DB2D792 {
471 SECTION GUIDED EE4E5898-3914-4259-9D6E-DC7BD79403CF PROCESSING_REQUIRED = TRUE {
472 #
473 # These firmware volumes will have files placed in them uncompressed,
474 # and then both firmware volumes will be compressed in a single
475 # compression operation in order to achieve better overall compression.
476 #
477 SECTION FV_IMAGE = PEIFV
478 SECTION FV_IMAGE = DXEFV
479 }
480 }
481
482!include OvmfPkg/Include/Fdf/FvmainCompactScratchEnd.fdf.inc
483
484################################################################################
485
486[Rule.Common.SEC]
487 FILE SEC = $(NAMED_GUID) {
488 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
489 UI STRING ="$(MODULE_NAME)" Optional
490 VERSION STRING ="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
491 }
492
493[Rule.Common.PEI_CORE]
494 FILE PEI_CORE = $(NAMED_GUID) {
495 PE32 PE32 Align=Auto $(INF_OUTPUT)/$(MODULE_NAME).efi
496 UI STRING ="$(MODULE_NAME)" Optional
497 VERSION STRING ="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
498 }
499
500[Rule.Common.PEIM]
501 FILE PEIM = $(NAMED_GUID) {
502 PEI_DEPEX PEI_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
503 PE32 PE32 Align=Auto $(INF_OUTPUT)/$(MODULE_NAME).efi
504 UI STRING="$(MODULE_NAME)" Optional
505 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
506 }
507
508[Rule.Common.DXE_CORE]
509 FILE DXE_CORE = $(NAMED_GUID) {
510 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
511 UI STRING="$(MODULE_NAME)" Optional
512 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
513 }
514
515[Rule.Common.DXE_DRIVER]
516 FILE DRIVER = $(NAMED_GUID) {
517 DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
518 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
519 UI STRING="$(MODULE_NAME)" Optional
520 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
521 RAW ACPI Optional |.acpi
522 RAW ASL Optional |.aml
523 }
524
525[Rule.Common.DXE_RUNTIME_DRIVER]
526 FILE DRIVER = $(NAMED_GUID) {
527 DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
528 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
529 UI STRING="$(MODULE_NAME)" Optional
530 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
531 }
532
533[Rule.Common.UEFI_DRIVER]
534 FILE DRIVER = $(NAMED_GUID) {
535 DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
536 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
537 UI STRING="$(MODULE_NAME)" Optional
538 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
539 }
540
541[Rule.Common.UEFI_DRIVER.BINARY]
542 FILE DRIVER = $(NAMED_GUID) {
543 DXE_DEPEX DXE_DEPEX Optional |.depex
544 PE32 PE32 |.efi
545 UI STRING="$(MODULE_NAME)" Optional
546 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
547 }
548
549[Rule.Common.UEFI_APPLICATION]
550 FILE APPLICATION = $(NAMED_GUID) {
551 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
552 UI STRING="$(MODULE_NAME)" Optional
553 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
554 }
555
556[Rule.Common.UEFI_APPLICATION.BINARY]
557 FILE APPLICATION = $(NAMED_GUID) {
558 PE32 PE32 |.efi
559 UI STRING="$(MODULE_NAME)" Optional
560 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
561 }
562
563[Rule.Common.USER_DEFINED.CSM]
564 FILE FREEFORM = $(NAMED_GUID) {
565 RAW BIN |.bin
566 }
567
568[Rule.Common.SEC.RESET_VECTOR]
569 FILE RAW = $(NAMED_GUID) {
570 RAW BIN Align = 16 |.bin
571 }
572
573[Rule.Common.SMM_CORE]
574 FILE SMM_CORE = $(NAMED_GUID) {
575 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
576 UI STRING="$(MODULE_NAME)" Optional
577 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
578 }
579
580[Rule.Common.DXE_SMM_DRIVER]
581 FILE SMM = $(NAMED_GUID) {
582 SMM_DEPEX SMM_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
583 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
584 UI STRING="$(MODULE_NAME)" Optional
585 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
586 }
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