SignedCapsulePkg/SystemFirmwareUpdate: Add SystemFirmwareUpdate.
authorJiewen Yao <>
Wed, 21 Sep 2016 02:30:12 +0000 (10:30 +0800)
committerJiewen Yao <>
Tue, 8 Nov 2016 14:41:02 +0000 (22:41 +0800)
SignedCapsulePkg/SystemFirmwareUpdate: Add SystemFirmwareUpdate.

SystemFirmwareUpdate supports update system firmware via UEFI FMP capsule.

SystemFirmwareReportDxe.inf can be included in system BIOS. It is a
lightweight FMP protocol implementation and it only reports FMP
information, so that ESRT table can report the system firmware
information. SetImage() will dispatch the driver FV in the EDKII system
FMP image (SystemFirmwareUpdateDxe),
then pass thru the SetImage() request to latter.

SystemFirmwareUpdateDxe.inf can be included in EDKII system capsule image.
It is a full feature FMP protocol implementation and supports SetImage().
It can be used to update the system firmware.
SystemFirmwareUpdateDxe.inf can also be included in system firmware.
If so SystemFirmwareReportDxe.inf is not needed.

SystemFirmwareUpdateDxe SetImage() will perform the FMP authentication and
version check. If and only if the FMP authentication passes, and new
EDKII system capsule version is no less than current system firmware
LowestSupportedVersion, the system firmware will be updated.

Cc: Feng Tian <>
Cc: Star Zeng <>
Cc: Michael D Kinney <>
Cc: Liming Gao <>
Cc: Chao Zhang <>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jiewen Yao <>
Reviewed-by: Liming Gao <>
Reviewed-by: Michael Kinney <>
Tested-by: Michael Kinney <>
SignedCapsulePkg/Universal/SystemFirmwareUpdate/ParseConfigProfile.c [new file with mode: 0644]
SignedCapsulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareCommonDxe.c [new file with mode: 0644]
SignedCapsulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareDxe.h [new file with mode: 0644]
SignedCapsulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareReportDxe.c [new file with mode: 0644]
SignedCapsulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareReportDxe.inf [new file with mode: 0644]
SignedCapsulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareReportDxe.uni [new file with mode: 0644]
SignedCapsulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareReportDxeExtra.uni [new file with mode: 0644]
SignedCapsulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareUpdateDxe.c [new file with mode: 0644]
SignedCapsulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareUpdateDxe.inf [new file with mode: 0644]
SignedCapsulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareUpdateDxe.uni [new file with mode: 0644]
SignedCapsulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareUpdateDxeExtra.uni [new file with mode: 0644]