1
0
mirror of https://xff.cz/git/u-boot/ synced 2025-11-01 10:56:02 +01:00

efi_loader: do not install dtb if bootmgr fails

If the UEFI boot manager fails there is no point in installing the
device-tree as a configuration table.

Unload image if device-tree cannot be installed.

Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
This commit is contained in:
Heinrich Schuchardt
2024-04-22 11:03:10 +02:00
parent 566f067349
commit 2c4ca2d672

View File

@@ -1209,15 +1209,21 @@ efi_status_t efi_bootmgr_run(void *fdt)
return CMD_RET_FAILURE;
}
ret = efi_install_fdt(fdt);
if (ret != EFI_SUCCESS)
return ret;
ret = efi_bootmgr_load(&handle, &load_options);
if (ret != EFI_SUCCESS) {
log_notice("EFI boot manager: Cannot load any image\n");
return ret;
}
ret = efi_install_fdt(fdt);
if (ret != EFI_SUCCESS) {
if (EFI_CALL(efi_unload_image(handle)) == EFI_SUCCESS)
free(load_options);
else
log_err("Unloading image failed\n");
return ret;
}
return do_bootefi_exec(handle, load_options);
}