]> git.ipfire.org Git - thirdparty/openwrt.git/commitdiff
generic: mtdsplit: fit: improve detecting external-data FIT
authorDaniel Golle <daniel@makrotopia.org>
Sat, 4 Oct 2025 23:34:42 +0000 (00:34 +0100)
committerDaniel Golle <daniel@makrotopia.org>
Wed, 5 Nov 2025 14:19:39 +0000 (14:19 +0000)
Currently the detection of external-data FIT images works by checking
if the FIT structure is more than 4 kiB. However, for boards with lots
of different DT-overlays and configurations the FIT structure can
exceed 4 kiB which results in the FIT splitter to fail detecting the
rootfs.
Increase the threshold for external-data FIT to 512 kiB as there aren't
any kernel images smaller than that, and FIT structure less than 512 kiB
will always be an external-data FIT.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_fit.c

index a271a676e10e101fb8d4c2092176657229be4986..29d26f4057179d4dc3187491a56bf34883588099 100644 (file)
@@ -258,7 +258,7 @@ mtdsplit_fit_parse(struct mtd_info *mtd,
         * hence we need to parse FDT structure to find the end of the
         * last external data refernced.
         */
-       if (fit_size > 0x1000) {
+       if (fit_size > 0x80000) {
                enum mtdsplit_part_type type;
 
                /* Search for the rootfs partition after the FIT image */