Hi, According to Takahiro's suggestion and discussion, I made a patchset to update the EFI capsule-on-disk, so that it does not use UpdateCapsule() EFI API and reset after completing the capsule-on-disk.
The reset after completing the capsule-on-disk is stated in the UEFI specification 2.9, section 8.5.5 "Delivery of Capsules via file on Mass Storage device" as below, In all cases that a capsule is identified for processing the system is restarted after capsule processing is completed. Note that this feature is enabled by CONFIG_EFI_RESET_AFTER_CAPSULE_ON_DISK. If you want to keep the current firmware runs after capsule-on-disk (e.g. for debugging), you can configure it disabled. Thank you, --- Masami Hiramatsu (2): efi_loader: Avoid using efi_update_capsule() from update capsule on disk efi_loader: Reset system after CapsuleUpdate on disk lib/efi_loader/Kconfig | 10 ++++++++++ lib/efi_loader/efi_capsule.c | 18 +++++++++++++++++- 2 files changed, 27 insertions(+), 1 deletion(-) -- Masami Hiramatsu <masami.hirama...@linaro.org>