Firmware Management Protocol (FMP) Device Package¶
FmpDevicePkg provides the common resources necessary to manage the firmware on a given device. The UEFI Specification defines several elements used in the firmware management process that are implemented or depended upon in FmpDevicePkg such as:
EFI_FIRMWARE_MANAGEMENT_PROTOCOL
- Firmware Management Protocol dependency expression support
- FMP capsule format
- EFI System Resource Table (ESRT)
Package Organization¶
This section briefly describes the package modules and libraries.
Modules¶
- CapsuleUpdatePolicyDxe readme
- Purpose: \ Produces the Capsule Update Policy Protocol using the services of the Capsule Update Policy Library.
- FmpDxe readme
- Purpose: \
Produces an instance of the Firmware Management Protocol (
EFI_FIRMWARE_MANAGEMENT_PROTOCOL
) that is used to support updates to a firmware image stored on a firmware device
Libraries¶
- CapsuleUpdatePolicyLib
-
Purpose: \ Provides platform policy services used during a capsule update.
- CapsuleUpdatePolicyLibNull readme
- CapsuleUpdatePolicyLibOnProtocol readme
- FmpDependencyCheckLib
-
Purpose: \ Provides services to check that capsule dependencies are met during firmware update.
-
FmpDependencyCheckLib readme
- FmpDependencyCheckLibNull readme
- FmpDependencyDeviceLib
-
Purpose: \ Provides firmware device specific services to support saving dependency expressions to a firmware device and getting dependency expressions from a firmware device.
-
FmpDependencyDeviceLibNull readme
- FmpDependencyLib
-
Purpose: \ Provides functions used to manage dependencies between firmware components during the update of device firmware images.
-
FmpDependencyLib readme
- FmpDeviceLib
-
Purpose: \ Provides firmware device specific services to support firmware updates on a given device.
-
FmpDeviceLibNull readme
- FmpPayloadHeaderLib
-
Purpose: \ Provides services to retrieve values from a capsule FMP Payload Header.
-
FmpPayloadHeaderLibV1 readme
Further Reading¶
Several documents describe important elements involved in understanding FmpDevicePkg
. Consult the following
resource for more information on a particular topic.
-
FmpDevicePkg
Overview- The ReadMe documents referenced above that reside in the package.
- Tianocore wiki: FmpDevicePkg
-
UEFI Specification Definitions for Firmware Updating and Reporting
-
Technical Overview of the EDK II Capsule Update and Recovery Flow
-
Windows UEFI Firmware Update Resources
-
NIST Guidelines for Authenticated Firmware Update