Change ESRT System Firmware Update GUID - jljusten/tianocore GitHub Wiki
Back to Capsule Based System Firmware Update
- Run
CapsuleApp.efi -Eto see current ESRT GUID in theFwTypefield. - Generate a new GUID value.
- Change
IMAGE_TYPE_ID_GUIDinSystemFirmwareDescriptor.aslcto new GUID Value.
#define IMAGE_TYPE_ID_GUID { 0xdd3b39b6, 0xd919, 0x46b5, { 0x89, 0x62, 0x4b, 0xb6, 0xd2, 0x27, 0x9a, 0xf7 } }
- Set PCD
gEfiMdeModulePkgTokenSpaceGuid.PcdSystemFmpCapsuleImageTypeIdGuidin Platform DSC to the same new GUID value used forIMAGE_TYPE_ID_GUID.
[PcdsDynamicExDefault.common.DEFAULT]
!if $(CAPSULE_ENABLE)
gEfiMdeModulePkgTokenSpaceGuid.PcdSystemFmpCapsuleImageTypeIdGuid|{0xb6, 0x39, 0x3b, 0xdd, 0x19, 0xd9, 0xb5, 0x46, 0x89, 0x62, 0x4b, 0xb6, 0xd2, 0x27, 0x9a, 0xf7}
!endif
- Build firmware image
- Update target with new firmware image
- Run
CapsuleApp -Eto see current ESRT GUID in theFwTypefield.
NOTE: If an attempt is made to use
CapsuleApp.efi <CapsuleImage>to update the firmware using a capsule that uses the old ESRT GUID value, the update will fail. Capsules must also be updated with the new GUID value.
- Change
[FmpPayload]sectionIMAGE_TYPE_IDfield in Platform FDF file to the same new GUID value used forIMAGE_TYPE_ID_GUIDin theSystemFirmwareDescriptor.aslcfile. - Build capsule image.
CapsuleApp.efi <CapsuleImage>for newly generated capsules works.