]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
bootm: optee: Drop special call to bootm_find_other()
authorSimon Glass <sjg@chromium.org>
Sat, 18 Nov 2023 21:05:15 +0000 (14:05 -0700)
committerTom Rini <trini@konsulko.com>
Wed, 13 Dec 2023 16:51:24 +0000 (11:51 -0500)
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.

Also drop the confusing check for the OS type, since do_bootm_tee() is
only called if the condition is met - see bootm_os_get_boot_func()

Signed-off-by: Simon Glass <sjg@chromium.org>
boot/bootm.c
boot/bootm_os.c

index dc64de952c23782cc59524a8d4b814ee30909c79..45491e3f30aa4392131d5b1bbc3999a441fe02b0 100644 (file)
@@ -584,7 +584,7 @@ static int bootm_find_other(struct cmd_tbl *cmdtp, int flag, int argc,
             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))
+            images.os.os == IH_OS_EFI || images.os.os == IH_OS_TEE))
                return bootm_find_images(flag, argc, argv, 0, 0);
 
        return 0;
index af25c9e7c81bb444c6cfbeb66b9214dff8752ef7..b92422171a8499cbc0c9e27bc4786e20f75da0a4 100644 (file)
@@ -460,11 +460,6 @@ static int do_bootm_tee(int flag, int argc, char *const argv[],
 {
        int ret;
 
-       /* Verify OS type */
-       if (images->os.os != IH_OS_TEE) {
-               return 1;
-       };
-
        /* Validate OPTEE header */
        ret = optee_verify_bootm_image(images->os.image_start,
                                       images->os.load,
@@ -472,11 +467,6 @@ static int do_bootm_tee(int flag, int argc, char *const argv[],
        if (ret)
                return ret;
 
-       /* Locate FDT etc */
-       ret = bootm_find_images(flag, argc, argv, 0, 0);
-       if (ret)
-               return ret;
-
        /* From here we can run the regular linux boot path */
        return do_bootm_linux(flag, argc, argv, images);
 }