efi_loader: returning from UEFI FIT images
authorHeinrich Schuchardt <xypron.glpk@gmx.de>
Sat, 18 Jul 2020 08:54:26 +0000 (10:54 +0200)
committerHeinrich Schuchardt <xypron.glpk@gmx.de>
Wed, 22 Jul 2020 10:32:42 +0000 (12:32 +0200)
Do not reset the board when returning from an UEFI FIT image.

For failed UEFI binary we already print the return status in efi_run_image.
Remove duplicate output.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
common/bootm_os.c

index 6a95e0d..e9aaddf 100644 (file)
@@ -542,15 +542,14 @@ static int do_bootm_efi(int flag, int argc, char *const argv[],
               images->ep);
        bootstage_mark(BOOTSTAGE_ID_RUN_OS);
 
+       /* We expect to return */
+       images->os.type = IH_TYPE_STANDALONE;
+
        image_buf = map_sysmem(images->ep, images->os.image_len);
 
        efi_ret = efi_run_image(image_buf, images->os.image_len);
-       if (efi_ret != EFI_SUCCESS) {
-               printf("## Failed to run EFI image: r = %lu\n",
-                      efi_ret & ~EFI_ERROR_MASK);
+       if (efi_ret != EFI_SUCCESS)
                return 1;
-       }
-
        return 0;
 }
 #endif