From 11d354945c204588c98f74cfd8b6d18433d621c4 Mon Sep 17 00:00:00 2001 From: Eric Jin Date: Fri, 26 Jul 2019 15:45:19 +0800 Subject: FmpDevicePkg/FmpDxe: Add PcdFmpDeviceStorageAccessEnable REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1525 Add PCD PcdFmpDeviceStorageAccessEnable. If this PCD is TRUE, then the Firmware Management Protocol supports access to the firmware storage device. This is the default setting. If FALSE, then Firmware Management Protocol services that access the firmware storage device return EFI_UNSUPPORTED except GetImageInfo(). Setting this value to FALSE produces the smallest possible FmpDxe driver that still advertises the updatable firmware component in the ESRT. Cc: Sean Brogan Cc: Bret Barkelew Cc: Liming Gao Signed-off-by: Michael D Kinney Reviewed-by: Eric Jin Reviewed-by: Liming Gao --- FmpDevicePkg/FmpDevicePkg.dec | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'FmpDevicePkg/FmpDevicePkg.dec') diff --git a/FmpDevicePkg/FmpDevicePkg.dec b/FmpDevicePkg/FmpDevicePkg.dec index 56ed5fbb4a..8312b7cb22 100644 --- a/FmpDevicePkg/FmpDevicePkg.dec +++ b/FmpDevicePkg/FmpDevicePkg.dec @@ -52,6 +52,18 @@ ## Capsule Update Policy Protocol gEdkiiCapuleUpdatePolicyProtocolGuid = { 0x487784c5, 0x6299, 0x4ba6, { 0xb0, 0x96, 0x5c, 0xc5, 0x27, 0x7c, 0xf7, 0x57 } } +[PcdsFeatureFlag] + ## Indicates if the Firmware Management Protocol supports access to + # to a firmware storage device. If set to FALSE, then only GetImageInfo() + # is supported. This is used by FMP drivers that require the samllest + # possible Firmware Management Protocol implementation that supports + # advertising the updatable firmware device in the ESRT.
+ # TRUE - All Firmware Management Protocol services supported.
+ # FALSE - Firmware Management Protocol returns EFI_UNSUPPORTED for + # all services except GetImageInfo().
+ # @Prompt Firmware Device Storage Access Enabled. + gFmpDevicePkgTokenSpaceGuid.PcdFmpDeviceStorageAccessEnable|TRUE|BOOLEAN|0x40000011 + [PcdsFixedAtBuild] ## The SHA-256 hash of a PKCS7 test key that is used to detect if a test key # is being used to authenticate capsules. Test key detection is disabled by -- cgit v1.2.3