]> git.ipfire.org Git - thirdparty/u-boot.git/commitdiff
cmd/bootefi: move efi_init_obj_list() to the start of do_bootefi
authorHeinrich Schuchardt <heinrich.schuchardt@canonical.com>
Mon, 20 Apr 2026 22:03:18 +0000 (00:03 +0200)
committerHeinrich Schuchardt <heinrich.schuchardt@canonical.com>
Fri, 1 May 2026 08:30:03 +0000 (10:30 +0200)
None of the bootefi commands can be executed if the EFI sub-system cannot
be initialized.

Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
cmd/bootefi.c

index 85f41c3b0a06483d1dc414a9fa7e8688ae86ff6f..6dab709e5075a629451af809934d46dab186b8db 100644 (file)
@@ -142,6 +142,14 @@ static int do_bootefi(struct cmd_tbl *cmdtp, int flag, int argc,
        if (argc < 2)
                return CMD_RET_USAGE;
 
+       /* Initialize EFI drivers */
+       ret = efi_init_obj_list();
+       if (ret != EFI_SUCCESS) {
+               log_err("Error: Cannot initialize UEFI sub-system, r = %lu\n",
+                       ret & ~EFI_ERROR_MASK);
+               return CMD_RET_FAILURE;
+       }
+
        if (argc > 2) {
                ulong rd_addr = 0;
                char *end = strchr(argv[2], ':');
@@ -179,14 +187,6 @@ static int do_bootefi(struct cmd_tbl *cmdtp, int flag, int argc,
 
        if (IS_ENABLED(CONFIG_CMD_BOOTEFI_SELFTEST) &&
            !strcmp(argv[1], "selftest")) {
-               /* Initialize EFI drivers */
-               ret = efi_init_obj_list();
-               if (ret != EFI_SUCCESS) {
-                       log_err("Error: Cannot initialize UEFI sub-system, r = %lu\n",
-                               ret & ~EFI_ERROR_MASK);
-                       return CMD_RET_FAILURE;
-               }
-
                ret = efi_install_fdt(fdt);
                if (ret != EFI_SUCCESS)
                        return CMD_RET_FAILURE;