The EFI System Resource Table (ESRT) is updated after the firmware image GUID is copied to the fw_images structure. This ensures that the ESRT accurately reflects the current firmware resources.
Signed-off-by: Padmarao Begari <[email protected]> --- board/xilinx/common/board.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/board/xilinx/common/board.c b/board/xilinx/common/board.c index 26facb6daea..ab50a795e6b 100644 --- a/board/xilinx/common/board.c +++ b/board/xilinx/common/board.c @@ -766,6 +766,17 @@ int fwu_platform_hook(struct udevice *dev, struct fwu_data *data) /* Copy image type GUID */ memcpy(&fw_images[0].image_type_id, &img_entry->image_type_guid, 16); + if (IS_ENABLED(CONFIG_EFI_ESRT)) { + efi_status_t ret; + + /* Rebuild the ESRT to reflect any updated FW images. */ + ret = efi_esrt_populate(); + if (ret != EFI_SUCCESS) { + log_warning("ESRT update failed\n"); + return ret; + } + } + return 0; } -- 2.25.1

