
The normal bootm flow calls bootm_find_other() can call the BOOTM_STATE_FINDOTHER state as part of its processing. Fix the condition there so that this hack can be removed.
Signed-off-by: Simon Glass sjg@chromium.org ---
(no changes since v1)
boot/bootm.c | 10 +++++----- boot/bootm_os.c | 6 ------ 2 files changed, 5 insertions(+), 11 deletions(-)
diff --git a/boot/bootm.c b/boot/bootm.c index db1466cecf2d..dc64de952c23 100644 --- a/boot/bootm.c +++ b/boot/bootm.c @@ -580,11 +580,11 @@ int bootm_find_images(int flag, int argc, char *const argv[], ulong start, static int bootm_find_other(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[]) { - if (((images.os.type == IH_TYPE_KERNEL) || - (images.os.type == IH_TYPE_KERNEL_NOLOAD) || - (images.os.type == IH_TYPE_MULTI)) && - (images.os.os == IH_OS_LINUX || - images.os.os == IH_OS_VXWORKS)) + if ((images.os.type == IH_TYPE_KERNEL || + images.os.type == IH_TYPE_KERNEL_NOLOAD || + images.os.type == IH_TYPE_MULTI) && + (images.os.os == IH_OS_LINUX || images.os.os == IH_OS_VXWORKS || + images.os.os == IH_OS_EFI)) return bootm_find_images(flag, argc, argv, 0, 0);
return 0; diff --git a/boot/bootm_os.c b/boot/bootm_os.c index 30296eb27d7d..af25c9e7c81b 100644 --- a/boot/bootm_os.c +++ b/boot/bootm_os.c @@ -486,18 +486,12 @@ static int do_bootm_tee(int flag, int argc, char *const argv[], static int do_bootm_efi(int flag, int argc, char *const argv[], struct bootm_headers *images) { - int ret; efi_status_t efi_ret; void *image_buf;
if (flag != BOOTM_STATE_OS_GO) return 0;
- /* Locate FDT, if provided */ - ret = bootm_find_images(flag, argc, argv, 0, 0); - if (ret) - return ret; - /* Initialize EFI drivers */ efi_ret = efi_init_obj_list(); if (efi_ret != EFI_SUCCESS) {