MdePkg: Modify default supported image type to PE, for both FV and NON_FV

UE is experimental and non-standard, so should not be supported by default.

For platforms that opt in to UE, like OVMF and DUET, globally for the
platform (not overridden per-module) the FV PCD should either be PE | UE
or only UE, depending on where support is at.

Signed-off-by: Mike Beaton <mjsbeaton@gmail.com>
Signed-off-by: Marvin Häuser <mhaeuser@posteo.de>
This commit is contained in:
Mike Beaton 2024-04-22 07:45:40 +01:00
parent bb321e039a
commit b84c1aab2c
11 changed files with 60 additions and 4 deletions

View File

@ -155,6 +155,11 @@
gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|3
gEfiShellPkgTokenSpaceGuid.PcdShellFileOperationSize|0x20000
#
# Firmware volume supports UE, and may require PE.
#
gEfiMdePkgTokenSpaceGuid.PcdUefiImageFormatSupportFv|0x03
[PcdsFixedAtBuild.AARCH64]
# Clearing BIT0 in this PCD prevents installing a 32-bit SMBIOS entry point,
# if the entry point version is >= 3.0. AARCH64 OSes cannot assume the

View File

@ -167,6 +167,11 @@
#
gEmbeddedTokenSpaceGuid.PcdPrePiCpuIoSize|16
#
# Firmware volume supports UE, and may require PE.
#
gEfiMdePkgTokenSpaceGuid.PcdUefiImageFormatSupportFv|0x03
[PcdsPatchableInModule.common]
#
# This will be overridden in the code

View File

@ -233,6 +233,11 @@
# System Memory Size -- 128 MB initially, actual size will be fetched from DT
gArmTokenSpaceGuid.PcdSystemMemorySize|0x8000000
#
# Firmware volume supports UE, and may require PE.
#
gEfiMdePkgTokenSpaceGuid.PcdUefiImageFormatSupportFv|0x03
[PcdsFixedAtBuild.AARCH64]
# Clearing BIT0 in this PCD prevents installing a 32-bit SMBIOS entry point,
# if the entry point version is >= 3.0. AARCH64 OSes cannot assume the

View File

@ -181,6 +181,11 @@
gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|3
gEfiShellPkgTokenSpaceGuid.PcdShellFileOperationSize|0x20000
#
# Firmware volume supports UE, and may require PE.
#
gEfiMdePkgTokenSpaceGuid.PcdUefiImageFormatSupportFv|0x03
[PcdsPatchableInModule.common]
# we need to provide a resolution for this PCD that supports PcdSet64()
# being called from ArmVirtPkg/Library/PlatformPeiLib/PlatformPeiLib.c,

View File

@ -103,6 +103,11 @@
#
gEfiMdeModulePkgTokenSpaceGuid.PcdEmuVariableNvModeEnable|TRUE
#
# Firmware volume supports UE, and may require PE.
#
gEfiMdePkgTokenSpaceGuid.PcdUefiImageFormatSupportFv|0x03
[PcdsPatchableInModule.common]
# we need to provide a resolution for this PCD that supports PcdSet64()
# being called from ArmVirtPkg/Library/PlatformPeiLib/PlatformPeiLib.c,

View File

@ -2305,17 +2305,23 @@
# @Prompt Remove X permission from WX sections.
gEfiMdePkgTokenSpaceGuid.PcdImageLoaderRemoveXForWX|FALSE|BOOLEAN|0x40001021
## Indicates the UEFI image file formats supported outside FVs.<BR><BR>
## Indicates the UEFI image file formats supported outside FVs.
# UE is experimental and not enabled by default.
# For correct usage in a platform which opts in to UE support, this should
# be overridden globally, not within individual modules.<BR><BR>
# BIT0 - PE.<BR>
# BIT1 - UE.<BR>
# @Prompt Supported UEFI image file formats outside FVs.
gEfiMdePkgTokenSpaceGuid.PcdUefiImageFormatSupportNonFv|0x02|UINT8|0x40002000
gEfiMdePkgTokenSpaceGuid.PcdUefiImageFormatSupportNonFv|0x01|UINT8|0x40002000
## Indicates the UEFI image file formats supported inside FVs.<BR><BR>
## Indicates the UEFI image file formats supported inside FVs.
# UE is experimental and not enabled by default.
# For correct usage in a platform which opts in to UE support, this should
# be overridden globally, not within individual modules.<BR><BR>
# BIT0 - PE.<BR>
# BIT1 - UE.<BR>
# @Prompt Supported UEFI image file formats inside FVs.
gEfiMdePkgTokenSpaceGuid.PcdUefiImageFormatSupportFv|0x03|UINT8|0x40002001
gEfiMdePkgTokenSpaceGuid.PcdUefiImageFormatSupportFv|0x01|UINT8|0x40002001
## Set image protection policy. The policy is applied for each source individually.
# If a bit is set, aligned images from this source will be protected and

View File

@ -491,6 +491,11 @@
gEfiMdeModulePkgTokenSpaceGuid.PcdDxeNxMemoryProtectionPolicy|0xFFFFFFFFFFFFFF45
!endif
#
# Firmware volume is PE.
#
gEfiMdePkgTokenSpaceGuid.PcdUefiImageFormatSupportFv|0x01
################################################################################
#
# Pcd Dynamic Section - list of all EDK II PCD Entries defined by this Platform

View File

@ -599,6 +599,11 @@
gEfiMdePkgTokenSpaceGuid.PcdImageProtectionPolicy|0x70000000
!endif
#
# Firmware volume supports UE, and may require PE.
#
gEfiMdePkgTokenSpaceGuid.PcdUefiImageFormatSupportFv|0x03
################################################################################
#
# Pcd Dynamic Section - list of all EDK II PCD Entries defined by this Platform

View File

@ -566,6 +566,11 @@
gEfiMdePkgTokenSpaceGuid.PcdControlFlowEnforcementPropertyMask|0x1
#
# Firmware volume supports UE, and may require PE.
#
gEfiMdePkgTokenSpaceGuid.PcdUefiImageFormatSupportFv|0x03
[PcdsFixedAtBuild.IA32]
#
# The NumberOfPages values below are ad-hoc. They are updated sporadically at

View File

@ -626,6 +626,11 @@
gEfiMdePkgTokenSpaceGuid.PcdImageProtectionPolicy|0x00000003
!endif
#
# Firmware volume supports UE, and may require PE.
#
gEfiMdePkgTokenSpaceGuid.PcdUefiImageFormatSupportFv|0x03
################################################################################
#
# Pcd Dynamic Section - list of all EDK II PCD Entries defined by this Platform

View File

@ -484,6 +484,11 @@
gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.TlsGet.Family | PCD_CRYPTO_SERVICE_ENABLE_FAMILY
!endif
#
# Firmware volume supports UE, and may require PE.
#
gEfiMdePkgTokenSpaceGuid.PcdUefiImageFormatSupportFv|0x03
[PcdsPatchableInModule.X64]
!if $(NETWORK_DRIVER_ENABLE) == TRUE
gEfiNetworkPkgTokenSpaceGuid.PcdAllowHttpConnections|TRUE