]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
spl: mmc: Support OP-TEE payloads in Falcon mode
authorAlexandru Gagniuc <mr.nuke.me@gmail.com>
Thu, 15 Jul 2021 19:19:23 +0000 (14:19 -0500)
committerPatrick Delaunay <patrick.delaunay@foss.st.com>
Tue, 27 Jul 2021 07:47:40 +0000 (09:47 +0200)
In general, Falcon mode means we're booting a linux kernel directly.
With FIT images, however, an OP-TEE secure kernel can be booted before
linux. Thus, if the next stage is an IH_OS_TEE, this isn't necessarily
a problem.

Of course, a general solution would involve mmc_load_image_raw_os()
only loading the binary, and leaving the decision of suitability to
someone else. However, a rework of the boot flow is beyond the scope
of this patch. Accept IH_OS_TEE as a valid OS value.

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Patrick Delaunay <patrick.delaunay@foss.st.com>
common/spl/spl_mmc.c

index 2377d0937d1d731774deeab2fc04f73f35119a0e..4dff9bfd6e871f22fa43df77f19540270181cea8 100644 (file)
@@ -230,8 +230,8 @@ static int mmc_load_image_raw_os(struct spl_image_info *spl_image,
        if (ret)
                return ret;
 
-       if (spl_image->os != IH_OS_LINUX) {
-               puts("Expected Linux image is not found. Trying to start U-boot\n");
+       if (spl_image->os != IH_OS_LINUX && spl_image->os != IH_OS_TEE) {
+               puts("Expected image is not found. Trying to start U-boot\n");
                return -ENOENT;
        }