There are several network stack drivers in MdeModulePkg or NetworkPkg. Currently, we only use the drivers from MdeModulePkg which only provides the IPv4 support. This commit adds the IPv6 drivers in NetworkPkg into OVMF. Here is the table of drivers from Laszlo. currently included related driver add or replace from MdeModulePkg in NetworkPkg from NetworkPkg ------------------ -------------- --------------- SnpDxe n/a n/a DpcDxe n/a n/a MnpDxe n/a n/a VlanConfigDxe n/a n/a ArpDxe n/a n/a Dhcp4Dxe Dhcp6Dxe add Ip4ConfigDxe Ip6Dxe add Ip4Dxe Ip6Dxe add Mtftp4Dxe Mtftp6Dxe add Tcp4Dxe TcpDxe replace Udp4Dxe Udp6Dxe add UefiPxeBcDxe UefiPxeBcDxe replace IScsiDxe IScsiDxe replace Since the TcpDxe, UefiPxeBcDxe, and IScsiDxe drivers in NetworkPkg also support IPv4, we replace the ones in MdeModulePkg. To enable the IPv6 support, build OVMF with "-D NETWORK_IP6_ENABLE". A special case is NetworkPkg/IScsiDxe. It requires openssl. For convenience, NetworkPkg/IScsiDxe is enabled only if both IPv6 and SecureBoot are enabled. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Gary Lin <glin@suse.com> [lersek@redhat.com: typo fix in commit message; specil -> special] Reviewed-by: Laszlo Ersek <lersek@redhat.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16543 6f19259b-4bc3-4df7-8a09-765794883524
473 lines
16 KiB
Plaintext
473 lines
16 KiB
Plaintext
## @file
|
|
# Open Virtual Machine Firmware: FDF
|
|
#
|
|
# Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.<BR>
|
|
#
|
|
# This program and the accompanying materials
|
|
# are licensed and made available under the terms and conditions of the BSD License
|
|
# which accompanies this distribution. The full text of the license may be found at
|
|
# http://opensource.org/licenses/bsd-license.php
|
|
#
|
|
# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
|
#
|
|
##
|
|
|
|
################################################################################
|
|
|
|
#
|
|
# Default flash size for DEBUG build is 2MB. For RELEASE it is 1MB.
|
|
#
|
|
# Defining FD_SIZE_1MB or FD_SIZE_2MB on the build command line can
|
|
# override this.
|
|
#
|
|
[Defines]
|
|
!if $(TARGET) == RELEASE
|
|
!ifndef $(FD_SIZE_2MB)
|
|
DEFINE FD_SIZE_1MB=
|
|
!endif
|
|
!endif
|
|
|
|
!include OvmfPkg.fdf.inc
|
|
|
|
#
|
|
# Build the variable store and the firmware code as one unified flash device
|
|
# image.
|
|
#
|
|
[FD.OVMF]
|
|
BaseAddress = $(FW_BASE_ADDRESS)
|
|
Size = $(FW_SIZE)
|
|
ErasePolarity = 1
|
|
BlockSize = $(BLOCK_SIZE)
|
|
NumBlocks = $(FW_BLOCKS)
|
|
|
|
!include VarStore.fdf.inc
|
|
|
|
$(VARS_SIZE)|$(FVMAIN_SIZE)
|
|
FV = FVMAIN_COMPACT
|
|
|
|
$(SECFV_OFFSET)|$(SECFV_SIZE)
|
|
FV = SECFV
|
|
|
|
#
|
|
# Build the variable store and the firmware code as separate flash device
|
|
# images.
|
|
#
|
|
[FD.OVMF_VARS]
|
|
BaseAddress = $(FW_BASE_ADDRESS)
|
|
Size = $(VARS_SIZE)
|
|
ErasePolarity = 1
|
|
BlockSize = $(BLOCK_SIZE)
|
|
NumBlocks = $(VARS_BLOCKS)
|
|
|
|
!include VarStore.fdf.inc
|
|
|
|
[FD.OVMF_CODE]
|
|
BaseAddress = $(CODE_BASE_ADDRESS)
|
|
Size = $(CODE_SIZE)
|
|
ErasePolarity = 1
|
|
BlockSize = $(BLOCK_SIZE)
|
|
NumBlocks = $(CODE_BLOCKS)
|
|
|
|
0x00000000|$(FVMAIN_SIZE)
|
|
FV = FVMAIN_COMPACT
|
|
|
|
$(FVMAIN_SIZE)|$(SECFV_SIZE)
|
|
FV = SECFV
|
|
|
|
################################################################################
|
|
|
|
[FD.MEMFD]
|
|
BaseAddress = 0x800000
|
|
Size = 0x900000
|
|
ErasePolarity = 1
|
|
BlockSize = 0x10000
|
|
NumBlocks = 0x90
|
|
|
|
0x000000|0x006000
|
|
gUefiOvmfPkgTokenSpaceGuid.PcdOvmfSecPageTablesBase|gUefiOvmfPkgTokenSpaceGuid.PcdOvmfSecPageTablesSize
|
|
|
|
0x006000|0x001000
|
|
gUefiOvmfPkgTokenSpaceGuid.PcdOvmfLockBoxStorageBase|gUefiOvmfPkgTokenSpaceGuid.PcdOvmfLockBoxStorageSize
|
|
|
|
0x007000|0x001000
|
|
gEfiMdePkgTokenSpaceGuid.PcdGuidedExtractHandlerTableAddress|gUefiOvmfPkgTokenSpaceGuid.PcdGuidedExtractHandlerTableSize
|
|
|
|
0x010000|0x008000
|
|
gUefiOvmfPkgTokenSpaceGuid.PcdOvmfSecPeiTempRamBase|gUefiOvmfPkgTokenSpaceGuid.PcdOvmfSecPeiTempRamSize
|
|
|
|
0x018000|0x008000
|
|
gUefiOvmfPkgTokenSpaceGuid.PcdS3AcpiReservedMemoryBase|gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdS3AcpiReservedMemorySize
|
|
|
|
0x020000|0x0E0000
|
|
gUefiOvmfPkgTokenSpaceGuid.PcdOvmfPeiMemFvBase|gUefiOvmfPkgTokenSpaceGuid.PcdOvmfPeiMemFvSize
|
|
FV = PEIFV
|
|
|
|
0x100000|0x800000
|
|
gUefiOvmfPkgTokenSpaceGuid.PcdOvmfDxeMemFvBase|gUefiOvmfPkgTokenSpaceGuid.PcdOvmfDxeMemFvSize
|
|
FV = DXEFV
|
|
|
|
################################################################################
|
|
|
|
[FV.SECFV]
|
|
BlockSize = 0x1000
|
|
FvAlignment = 16
|
|
ERASE_POLARITY = 1
|
|
MEMORY_MAPPED = TRUE
|
|
STICKY_WRITE = TRUE
|
|
LOCK_CAP = TRUE
|
|
LOCK_STATUS = TRUE
|
|
WRITE_DISABLED_CAP = TRUE
|
|
WRITE_ENABLED_CAP = TRUE
|
|
WRITE_STATUS = TRUE
|
|
WRITE_LOCK_CAP = TRUE
|
|
WRITE_LOCK_STATUS = TRUE
|
|
READ_DISABLED_CAP = TRUE
|
|
READ_ENABLED_CAP = TRUE
|
|
READ_STATUS = TRUE
|
|
READ_LOCK_CAP = TRUE
|
|
READ_LOCK_STATUS = TRUE
|
|
|
|
#
|
|
# SEC Phase modules
|
|
#
|
|
# The code in this FV handles the initial firmware startup, and
|
|
# decompresses the PEI and DXE FVs which handles the rest of the boot sequence.
|
|
#
|
|
INF OvmfPkg/Sec/SecMain.inf
|
|
|
|
INF RuleOverride=RESET_VECTOR OvmfPkg/ResetVector/ResetVector.inf
|
|
|
|
################################################################################
|
|
[FV.PEIFV]
|
|
BlockSize = 0x10000
|
|
FvAlignment = 16
|
|
ERASE_POLARITY = 1
|
|
MEMORY_MAPPED = TRUE
|
|
STICKY_WRITE = TRUE
|
|
LOCK_CAP = TRUE
|
|
LOCK_STATUS = TRUE
|
|
WRITE_DISABLED_CAP = TRUE
|
|
WRITE_ENABLED_CAP = TRUE
|
|
WRITE_STATUS = TRUE
|
|
WRITE_LOCK_CAP = TRUE
|
|
WRITE_LOCK_STATUS = TRUE
|
|
READ_DISABLED_CAP = TRUE
|
|
READ_ENABLED_CAP = TRUE
|
|
READ_STATUS = TRUE
|
|
READ_LOCK_CAP = TRUE
|
|
READ_LOCK_STATUS = TRUE
|
|
|
|
APRIORI PEI {
|
|
INF MdeModulePkg/Universal/PCD/Pei/Pcd.inf
|
|
}
|
|
|
|
#
|
|
# PEI Phase modules
|
|
#
|
|
INF MdeModulePkg/Core/Pei/PeiMain.inf
|
|
INF MdeModulePkg/Universal/PCD/Pei/Pcd.inf
|
|
INF IntelFrameworkModulePkg/Universal/StatusCode/Pei/StatusCodePei.inf
|
|
INF OvmfPkg/PlatformPei/PlatformPei.inf
|
|
INF MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf
|
|
INF UefiCpuPkg/Universal/Acpi/S3Resume2Pei/S3Resume2Pei.inf
|
|
|
|
################################################################################
|
|
|
|
[FV.DXEFV]
|
|
BlockSize = 0x10000
|
|
FvAlignment = 16
|
|
ERASE_POLARITY = 1
|
|
MEMORY_MAPPED = TRUE
|
|
STICKY_WRITE = TRUE
|
|
LOCK_CAP = TRUE
|
|
LOCK_STATUS = TRUE
|
|
WRITE_DISABLED_CAP = TRUE
|
|
WRITE_ENABLED_CAP = TRUE
|
|
WRITE_STATUS = TRUE
|
|
WRITE_LOCK_CAP = TRUE
|
|
WRITE_LOCK_STATUS = TRUE
|
|
READ_DISABLED_CAP = TRUE
|
|
READ_ENABLED_CAP = TRUE
|
|
READ_STATUS = TRUE
|
|
READ_LOCK_CAP = TRUE
|
|
READ_LOCK_STATUS = TRUE
|
|
|
|
APRIORI DXE {
|
|
INF MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf
|
|
INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf
|
|
INF OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesRuntimeDxe.inf
|
|
}
|
|
|
|
#
|
|
# DXE Phase modules
|
|
#
|
|
INF MdeModulePkg/Core/Dxe/DxeMain.inf
|
|
|
|
INF IntelFrameworkModulePkg/Universal/StatusCode/RuntimeDxe/StatusCodeRuntimeDxe.inf
|
|
INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf
|
|
|
|
INF MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf
|
|
INF MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf
|
|
INF MdeModulePkg/Universal/EbcDxe/EbcDxe.inf
|
|
INF PcAtChipsetPkg/8259InterruptControllerDxe/8259.inf
|
|
INF UefiCpuPkg/CpuIo2Dxe/CpuIo2Dxe.inf
|
|
INF UefiCpuPkg/CpuDxe/CpuDxe.inf
|
|
INF PcAtChipsetPkg/8254TimerDxe/8254Timer.inf
|
|
INF PcAtChipsetPkg/PciHostBridgeDxe/PciHostBridgeDxe.inf
|
|
INF MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf
|
|
INF PcAtChipsetPkg/KbcResetDxe/Reset.inf
|
|
INF MdeModulePkg/Universal/Metronome/Metronome.inf
|
|
INF PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcatRealTimeClockRuntimeDxe.inf
|
|
|
|
INF OvmfPkg/BlockMmioToBlockIoDxe/BlockIo.inf
|
|
INF OvmfPkg/VirtioPciDeviceDxe/VirtioPciDeviceDxe.inf
|
|
INF OvmfPkg/VirtioBlkDxe/VirtioBlk.inf
|
|
INF OvmfPkg/VirtioScsiDxe/VirtioScsi.inf
|
|
INF OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesRuntimeDxe.inf
|
|
INF OvmfPkg/EmuVariableFvbRuntimeDxe/Fvb.inf
|
|
INF MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteDxe.inf
|
|
INF OvmfPkg/XenBusDxe/XenBusDxe.inf
|
|
INF OvmfPkg/XenPvBlkDxe/XenPvBlkDxe.inf
|
|
|
|
!if $(SECURE_BOOT_ENABLE) == TRUE
|
|
INF SecurityPkg/VariableAuthenticated/RuntimeDxe/VariableRuntimeDxe.inf
|
|
INF SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConfigDxe.inf
|
|
!else
|
|
INF MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf
|
|
!endif
|
|
|
|
INF MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf
|
|
INF MdeModulePkg/Universal/MonotonicCounterRuntimeDxe/MonotonicCounterRuntimeDxe.inf
|
|
INF MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf
|
|
INF MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf
|
|
INF MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf
|
|
INF MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.inf
|
|
INF MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf
|
|
INF IntelFrameworkModulePkg/Universal/BdsDxe/BdsDxe.inf
|
|
INF MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf
|
|
INF MdeModulePkg/Universal/PrintDxe/PrintDxe.inf
|
|
INF MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf
|
|
INF MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf
|
|
INF MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf
|
|
INF MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf
|
|
INF MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf
|
|
INF IntelFrameworkModulePkg/Bus/Pci/IdeBusDxe/IdeBusDxe.inf
|
|
INF PcAtChipsetPkg/Bus/Pci/IdeControllerDxe/IdeControllerDxe.inf
|
|
INF MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf
|
|
INF MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf
|
|
INF MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf
|
|
INF MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf
|
|
|
|
INF PcAtChipsetPkg/IsaAcpiDxe/IsaAcpi.inf
|
|
INF IntelFrameworkModulePkg/Bus/Isa/IsaBusDxe/IsaBusDxe.inf
|
|
|
|
!ifndef $(SOURCE_DEBUG_ENABLE)
|
|
INF IntelFrameworkModulePkg/Bus/Isa/IsaSerialDxe/IsaSerialDxe.inf
|
|
!endif
|
|
|
|
INF IntelFrameworkModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2keyboardDxe.inf
|
|
INF IntelFrameworkModulePkg/Bus/Isa/IsaFloppyDxe/IsaFloppyDxe.inf
|
|
|
|
INF MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf
|
|
INF OvmfPkg/SmbiosPlatformDxe/SmbiosPlatformDxe.inf
|
|
|
|
INF MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf
|
|
INF OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf
|
|
INF RuleOverride=ACPITABLE OvmfPkg/AcpiTables/AcpiTables.inf
|
|
INF OvmfPkg/AcpiS3SaveDxe/AcpiS3SaveDxe.inf
|
|
INF MdeModulePkg/Universal/Acpi/S3SaveStateDxe/S3SaveStateDxe.inf
|
|
INF MdeModulePkg/Universal/Acpi/BootScriptExecutorDxe/BootScriptExecutorDxe.inf
|
|
|
|
INF RuleOverride = BINARY FatBinPkg/EnhancedFatDxe/Fat.inf
|
|
|
|
!ifndef $(USE_OLD_SHELL)
|
|
INF ShellPkg/Application/Shell/Shell.inf
|
|
!else
|
|
INF RuleOverride = BINARY EdkShellBinPkg/FullShell/FullShell.inf
|
|
!endif
|
|
|
|
FILE FREEFORM = PCD(gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdLogoFile) {
|
|
SECTION RAW = MdeModulePkg/Logo/Logo.bmp
|
|
}
|
|
|
|
#
|
|
# Network modules
|
|
#
|
|
!if $(E1000_ENABLE)
|
|
FILE DRIVER = 5D695E11-9B3F-4b83-B25F-4A8D5D69BE07 {
|
|
SECTION PE32 = Intel3.5/EFIX64/E3507X2.EFI
|
|
}
|
|
!endif
|
|
INF MdeModulePkg/Universal/Network/SnpDxe/SnpDxe.inf
|
|
INF MdeModulePkg/Universal/Network/DpcDxe/DpcDxe.inf
|
|
INF MdeModulePkg/Universal/Network/MnpDxe/MnpDxe.inf
|
|
INF MdeModulePkg/Universal/Network/VlanConfigDxe/VlanConfigDxe.inf
|
|
INF MdeModulePkg/Universal/Network/ArpDxe/ArpDxe.inf
|
|
INF MdeModulePkg/Universal/Network/Dhcp4Dxe/Dhcp4Dxe.inf
|
|
INF MdeModulePkg/Universal/Network/Ip4ConfigDxe/Ip4ConfigDxe.inf
|
|
INF MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Dxe.inf
|
|
INF MdeModulePkg/Universal/Network/Mtftp4Dxe/Mtftp4Dxe.inf
|
|
INF MdeModulePkg/Universal/Network/Udp4Dxe/Udp4Dxe.inf
|
|
!if $(NETWORK_IP6_ENABLE) == TRUE
|
|
INF NetworkPkg/Ip6Dxe/Ip6Dxe.inf
|
|
INF NetworkPkg/TcpDxe/TcpDxe.inf
|
|
INF NetworkPkg/Udp6Dxe/Udp6Dxe.inf
|
|
INF NetworkPkg/Dhcp6Dxe/Dhcp6Dxe.inf
|
|
INF NetworkPkg/Mtftp6Dxe/Mtftp6Dxe.inf
|
|
INF NetworkPkg/UefiPxeBcDxe/UefiPxeBcDxe.inf
|
|
!if $(SECURE_BOOT_ENABLE) == TRUE
|
|
INF NetworkPkg/IScsiDxe/IScsiDxe.inf
|
|
!else
|
|
INF MdeModulePkg/Universal/Network/IScsiDxe/IScsiDxe.inf
|
|
!endif
|
|
!else
|
|
INF MdeModulePkg/Universal/Network/Tcp4Dxe/Tcp4Dxe.inf
|
|
INF MdeModulePkg/Universal/Network/UefiPxeBcDxe/UefiPxeBcDxe.inf
|
|
INF MdeModulePkg/Universal/Network/IScsiDxe/IScsiDxe.inf
|
|
!endif
|
|
INF OvmfPkg/VirtioNetDxe/VirtioNet.inf
|
|
|
|
#
|
|
# Usb Support
|
|
#
|
|
INF MdeModulePkg/Bus/Pci/UhciDxe/UhciDxe.inf
|
|
INF MdeModulePkg/Bus/Pci/EhciDxe/EhciDxe.inf
|
|
INF MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf
|
|
INF MdeModulePkg/Bus/Usb/UsbKbDxe/UsbKbDxe.inf
|
|
INF MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassStorageDxe.inf
|
|
|
|
!ifdef $(CSM_ENABLE)
|
|
INF IntelFrameworkModulePkg/Csm/BiosThunk/VideoDxe/VideoDxe.inf
|
|
INF IntelFrameworkModulePkg/Csm/LegacyBiosDxe/LegacyBiosDxe.inf
|
|
INF RuleOverride=CSM OvmfPkg/Csm/Csm16/Csm16.inf
|
|
!endif
|
|
|
|
INF OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf
|
|
INF OvmfPkg/PlatformDxe/Platform.inf
|
|
|
|
################################################################################
|
|
|
|
[FV.FVMAIN_COMPACT]
|
|
FvAlignment = 16
|
|
ERASE_POLARITY = 1
|
|
MEMORY_MAPPED = TRUE
|
|
STICKY_WRITE = TRUE
|
|
LOCK_CAP = TRUE
|
|
LOCK_STATUS = TRUE
|
|
WRITE_DISABLED_CAP = TRUE
|
|
WRITE_ENABLED_CAP = TRUE
|
|
WRITE_STATUS = TRUE
|
|
WRITE_LOCK_CAP = TRUE
|
|
WRITE_LOCK_STATUS = TRUE
|
|
READ_DISABLED_CAP = TRUE
|
|
READ_ENABLED_CAP = TRUE
|
|
READ_STATUS = TRUE
|
|
READ_LOCK_CAP = TRUE
|
|
READ_LOCK_STATUS = TRUE
|
|
|
|
FILE FV_IMAGE = 9E21FD93-9C72-4c15-8C4B-E77F1DB2D792 {
|
|
SECTION GUIDED EE4E5898-3914-4259-9D6E-DC7BD79403CF PROCESSING_REQUIRED = TRUE {
|
|
#
|
|
# These firmware volumes will have files placed in them uncompressed,
|
|
# and then both firmware volumes will be compressed in a single
|
|
# compression operation in order to achieve better overall compression.
|
|
#
|
|
SECTION FV_IMAGE = PEIFV
|
|
SECTION FV_IMAGE = DXEFV
|
|
}
|
|
}
|
|
|
|
################################################################################
|
|
|
|
[Rule.Common.SEC]
|
|
FILE SEC = $(NAMED_GUID) {
|
|
PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
|
|
UI STRING ="$(MODULE_NAME)" Optional
|
|
VERSION STRING ="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
|
|
}
|
|
|
|
[Rule.Common.PEI_CORE]
|
|
FILE PEI_CORE = $(NAMED_GUID) {
|
|
PE32 PE32 Align=32 $(INF_OUTPUT)/$(MODULE_NAME).efi
|
|
UI STRING ="$(MODULE_NAME)" Optional
|
|
VERSION STRING ="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
|
|
}
|
|
|
|
[Rule.Common.PEIM]
|
|
FILE PEIM = $(NAMED_GUID) {
|
|
PEI_DEPEX PEI_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
|
|
PE32 PE32 Align=32 $(INF_OUTPUT)/$(MODULE_NAME).efi
|
|
UI STRING="$(MODULE_NAME)" Optional
|
|
VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
|
|
}
|
|
|
|
[Rule.Common.DXE_CORE]
|
|
FILE DXE_CORE = $(NAMED_GUID) {
|
|
PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
|
|
UI STRING="$(MODULE_NAME)" Optional
|
|
VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
|
|
}
|
|
|
|
[Rule.Common.DXE_DRIVER]
|
|
FILE DRIVER = $(NAMED_GUID) {
|
|
DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
|
|
PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
|
|
UI STRING="$(MODULE_NAME)" Optional
|
|
VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
|
|
}
|
|
|
|
[Rule.Common.DXE_RUNTIME_DRIVER]
|
|
FILE DRIVER = $(NAMED_GUID) {
|
|
DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
|
|
PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
|
|
UI STRING="$(MODULE_NAME)" Optional
|
|
VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
|
|
}
|
|
|
|
[Rule.Common.UEFI_DRIVER]
|
|
FILE DRIVER = $(NAMED_GUID) {
|
|
DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
|
|
PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
|
|
UI STRING="$(MODULE_NAME)" Optional
|
|
VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
|
|
}
|
|
|
|
[Rule.Common.UEFI_DRIVER.BINARY]
|
|
FILE DRIVER = $(NAMED_GUID) {
|
|
DXE_DEPEX DXE_DEPEX Optional |.depex
|
|
PE32 PE32 |.efi
|
|
UI STRING="$(MODULE_NAME)" Optional
|
|
VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
|
|
}
|
|
|
|
[Rule.Common.UEFI_APPLICATION]
|
|
FILE APPLICATION = $(NAMED_GUID) {
|
|
PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
|
|
UI STRING="$(MODULE_NAME)" Optional
|
|
VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
|
|
}
|
|
|
|
[Rule.Common.UEFI_APPLICATION.BINARY]
|
|
FILE APPLICATION = $(NAMED_GUID) {
|
|
PE32 PE32 |.efi
|
|
UI STRING="$(MODULE_NAME)" Optional
|
|
VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
|
|
}
|
|
|
|
[Rule.Common.USER_DEFINED.ACPITABLE]
|
|
FILE FREEFORM = $(NAMED_GUID) {
|
|
RAW ACPI |.acpi
|
|
RAW ASL |.aml
|
|
}
|
|
|
|
[Rule.Common.USER_DEFINED.CSM]
|
|
FILE FREEFORM = $(NAMED_GUID) {
|
|
RAW BIN |.bin
|
|
}
|
|
|
|
[Rule.Common.SEC.RESET_VECTOR]
|
|
FILE RAW = $(NAMED_GUID) {
|
|
RAW BIN Align = 16 |.bin
|
|
}
|