[openwrt/openwrt] kernel: create bootfs partition when parsing on BCM4908

LEDE Commits lede-commits at lists.infradead.org
Thu Apr 8 12:40:46 BST 2021


rmilecki pushed a commit to openwrt/openwrt.git, branch openwrt-21.02:
https://git.openwrt.org/76423e236475f7fb6ee863f28a18b20f97ccec44

commit 76423e236475f7fb6ee863f28a18b20f97ccec44
Author: Rafał Miłecki <rafal at milecki.pl>
AuthorDate: Wed Mar 24 18:20:13 2021 +0100

    kernel: create bootfs partition when parsing on BCM4908
    
    It's helpful for accessing booting data (DTS, kernel, etc.). It has to
    be used carefully as CFE's JFFS2 support is quite dumb. It doesn't
    recognize deleted files and has problems handling 0 inode.
    
    Signed-off-by: Rafał Miłecki <rafal at milecki.pl>
    (cherry picked from commit 6dd727ac24fa36ac3f23e9a5cf6781a7d1c6b797)
---
 .../files/drivers/mtd/mtdsplit/mtdsplit_cfe_bootfs.c       | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)

diff --git a/target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_cfe_bootfs.c b/target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_cfe_bootfs.c
index 5c8a5e1b9b..a3474c9dc2 100644
--- a/target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_cfe_bootfs.c
+++ b/target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_cfe_bootfs.c
@@ -17,7 +17,7 @@
 #define je16_to_cpu(x) ((x).v16)
 #define je32_to_cpu(x) ((x).v32)
 
-#define NR_PARTS		1
+#define NR_PARTS		2
 
 static int mtdsplit_cfe_bootfs_parse(struct mtd_info *mtd,
 				     const struct mtd_partition **pparts,
@@ -58,12 +58,16 @@ static int mtdsplit_cfe_bootfs_parse(struct mtd_info *mtd,
 	if (!parts)
 		return -ENOMEM;
 
+	parts[0].name = "bootfs";
+	parts[0].offset = 0;
+	parts[0].size = rootfs_offset;
+
 	if (type == MTDSPLIT_PART_TYPE_UBI)
-		parts[0].name = UBI_PART_NAME;
+		parts[1].name = UBI_PART_NAME;
 	else
-		parts[0].name = ROOTFS_PART_NAME;
-	parts[0].offset = rootfs_offset;
-	parts[0].size = mtd->size - rootfs_offset;
+		parts[1].name = ROOTFS_PART_NAME;
+	parts[1].offset = rootfs_offset;
+	parts[1].size = mtd->size - rootfs_offset;
 
 	*pparts = parts;
 



More information about the lede-commits mailing list