[openwrt/openwrt] kernel: mtdsplit: support UBI after FIT images

LEDE Commits lede-commits at lists.infradead.org
Fri Mar 25 13:12:15 PDT 2022


nbd pushed a commit to openwrt/openwrt.git, branch master:
https://git.openwrt.org/62fd9f97090d05637a283d594f2d02958fd36a80

commit 62fd9f97090d05637a283d594f2d02958fd36a80
Author: Felix Fietkau <nbd at nbd.name>
AuthorDate: Thu Mar 10 17:32:20 2022 +0100

    kernel: mtdsplit: support UBI after FIT images
    
    Change the partition name accordingly. Same behavior as mtdsplit_uimage
    
    Signed-off-by: Felix Fietkau <nbd at nbd.name>
---
 target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_fit.c | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_fit.c b/target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_fit.c
index 3230d859b0..d8fb74ea38 100644
--- a/target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_fit.c
+++ b/target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_fit.c
@@ -256,9 +256,11 @@ mtdsplit_fit_parse(struct mtd_info *mtd,
 	 * last external data refernced.
 	 */
 	if (fit_size > 0x1000) {
+		enum mtdsplit_part_type type;
+
 		/* Search for the rootfs partition after the FIT image */
 		ret = mtd_find_rootfs_from(mtd, fit_offset + fit_size, mtd->size,
-					   &rootfs_offset, NULL);
+					   &rootfs_offset, &type);
 		if (ret) {
 			pr_info("no rootfs found after FIT image in \"%s\"\n",
 				mtd->name);
@@ -275,7 +277,10 @@ mtdsplit_fit_parse(struct mtd_info *mtd,
 		parts[0].offset = fit_offset;
 		parts[0].size = mtd_rounddown_to_eb(fit_size, mtd) + mtd->erasesize;
 
-		parts[1].name = ROOTFS_PART_NAME;
+		if (type == MTDSPLIT_PART_TYPE_UBI)
+			parts[1].name = UBI_PART_NAME;
+		else
+			parts[1].name = ROOTFS_PART_NAME;
 		parts[1].offset = rootfs_offset;
 		parts[1].size = rootfs_size;
 




More information about the lede-commits mailing list