X-Git-Url: http://git.rohieb.name/openwrt.git/blobdiff_plain/fc66ff967a15d664e2543d6a996d792ed39f6759..f877fc28f803080de2e7c0682878186ba3ea7cfa:/target/linux/generic-2.6/patches/060-rootfs_split.patch diff --git a/target/linux/generic-2.6/patches/060-rootfs_split.patch b/target/linux/generic-2.6/patches/060-rootfs_split.patch index ff800dcf3..adafdaacb 100644 --- a/target/linux/generic-2.6/patches/060-rootfs_split.patch +++ b/target/linux/generic-2.6/patches/060-rootfs_split.patch @@ -2,12 +2,17 @@ Index: linux/drivers/mtd/Kconfig =================================================================== --- linux.orig/drivers/mtd/Kconfig +++ linux/drivers/mtd/Kconfig -@@ -49,6 +49,11 @@ config MTD_PARTITIONS +@@ -49,6 +49,16 @@ config MTD_PARTITIONS devices. Partitioning on NFTL 'devices' is a different - that's the 'normal' form of partitioning used on a block device. -+config MTD_SPLIT_ROOTFS -+ bool "Automatically split rootfs partition for squashfs" ++config MTD_ROOTFS_ROOT_DEV ++ bool "Automatically set 'rootfs' partition to be root filesystem" ++ depends on MTD_PARTITIONS ++ default y ++ ++config MTD_ROOTFS_SPLIT ++ bool "Automatically split 'rootfs' partition for squashfs" + depends on MTD_PARTITIONS + default y + @@ -248,8 +253,8 @@ Index: linux/drivers/mtd/mtdpart.c + goto out; + } + -+ part->name = (unsigned char *)&part[1]; + memcpy(part, old, sizeof(*part)); ++ part->name = (unsigned char *)&part[1]; + strcpy(part->name, ROOTFS_SPLIT_NAME); + + len = (u32) sb->bytes_used; @@ -280,7 +285,7 @@ Index: linux/drivers/mtd/mtdpart.c + if (dpart == NULL) + return 1; + -+ printk(KERN_INFO "mtd: \"%s\" created, ofs=%lX, len=%lX \n", ++ printk(KERN_INFO "mtd: partition \"%s\" created automatically, ofs=%X, len=%X \n", + ROOTFS_SPLIT_NAME, dpart->offset, dpart->size); + + ret = add_one_partition(master, dpart, index, NULL); @@ -452,7 +457,7 @@ Index: linux/drivers/mtd/mtdpart.c - offs += slave->mtd.erasesize; + for (i = 0, j = 0; i < nbparts; i++) { + part = (struct mtd_partition *) &parts[i]; -+ ret = add_one_partition(master, part, i, &slave); ++ ret = add_one_partition(master, part, j, &slave); + if (ret) + return ret; + j++;