aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/generic
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/generic')
-rw-r--r--target/linux/generic/files/drivers/mtd/mtdsplit/Kconfig12
-rw-r--r--target/linux/generic/files/drivers/mtd/mtdsplit/Makefile5
-rw-r--r--target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit.c (renamed from target/linux/generic/files/drivers/mtd/mtdsplit.c)0
-rw-r--r--target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit.h (renamed from target/linux/generic/files/drivers/mtd/mtdsplit.h)0
-rw-r--r--target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_lzma.c (renamed from target/linux/generic/files/drivers/mtd/mtdsplit_lzma.c)0
-rw-r--r--target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_seama.c (renamed from target/linux/generic/files/drivers/mtd/mtdsplit_seama.c)0
-rw-r--r--target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_squashfs.c (renamed from target/linux/generic/files/drivers/mtd/mtdsplit_squashfs.c)0
-rw-r--r--target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_uimage.c (renamed from target/linux/generic/files/drivers/mtd/mtdsplit_uimage.c)0
-rw-r--r--target/linux/generic/patches-3.10/400-mtd-add-rootfs-split-support.patch18
-rw-r--r--target/linux/generic/patches-3.10/401-mtd-add-support-for-different-partition-parser-types.patch4
-rw-r--r--target/linux/generic/patches-3.10/402-mtd-use-typed-mtd-parsers-for-rootfs-and-firmware-split.patch6
-rw-r--r--target/linux/generic/patches-3.10/403-mtd-hook-mtdsplit-to-Kbuild.patch9
-rw-r--r--target/linux/generic/patches-3.10/404-mtd-use-mtd_get_squashfs_len-in-split_squasfh.patch10
-rw-r--r--target/linux/generic/patches-3.10/406-mtd-add-squashfs-parser.patch30
-rw-r--r--target/linux/generic/patches-3.10/407-mtd-hook-mtdsplit_uimage-into-Kbuild.patch25
-rw-r--r--target/linux/generic/patches-3.10/408-mtd-hook-mtdsplit_seama-into-Kbuild.patch23
-rw-r--r--target/linux/generic/patches-3.10/409-mtd-hook-mtdsplit_lzma-into-Kbuild.patch23
-rw-r--r--target/linux/generic/patches-3.10/411-mtd-partial_eraseblock_write.patch2
-rw-r--r--target/linux/generic/patches-3.10/430-mtd-add-myloader-partition-parser.patch4
-rw-r--r--target/linux/generic/patches-3.10/490-ubi-auto-attach-mtd-device-named-ubi-or-data-on-boot.patch4
-rw-r--r--target/linux/generic/patches-3.13/400-mtd-add-rootfs-split-support.patch18
-rw-r--r--target/linux/generic/patches-3.13/401-mtd-add-support-for-different-partition-parser-types.patch4
-rw-r--r--target/linux/generic/patches-3.13/402-mtd-use-typed-mtd-parsers-for-rootfs-and-firmware-split.patch6
-rw-r--r--target/linux/generic/patches-3.13/403-mtd-hook-mtdsplit-to-Kbuild.patch9
-rw-r--r--target/linux/generic/patches-3.13/404-mtd-use-mtd_get_squashfs_len-in-split_squasfh.patch10
-rw-r--r--target/linux/generic/patches-3.13/406-mtd-add-squashfs-parser.patch30
-rw-r--r--target/linux/generic/patches-3.13/407-mtd-hook-mtdsplit_uimage-into-Kbuild.patch25
-rw-r--r--target/linux/generic/patches-3.13/408-mtd-hook-mtdsplit_seama-into-Kbuild.patch23
-rw-r--r--target/linux/generic/patches-3.13/409-mtd-hook-mtdsplit_lzma-into-Kbuild.patch23
-rw-r--r--target/linux/generic/patches-3.13/411-mtd-partial_eraseblock_write.patch2
-rw-r--r--target/linux/generic/patches-3.13/430-mtd-add-myloader-partition-parser.patch4
-rw-r--r--target/linux/generic/patches-3.13/471-mtd-m25p80-allow-to-disable-small-sector-erase.patch2
-rw-r--r--target/linux/generic/patches-3.13/502-yaffs-3.10-disable-proc-entry.patch2
-rw-r--r--target/linux/generic/patches-3.14/400-mtd-add-rootfs-split-support.patch2
-rw-r--r--target/linux/generic/patches-3.14/403-mtd-hook-mtdsplit-to-Kbuild.patch9
-rw-r--r--target/linux/generic/patches-3.14/404-mtd-add-more-helper-functions.patch (renamed from target/linux/generic/patches-3.14/405-mtd-add-more-helper-functions.patch)0
-rw-r--r--target/linux/generic/patches-3.14/405-mtd-old-firmware-uimage-splitter.patch (renamed from target/linux/generic/patches-3.18/407-mtd-old-firmware-uimage-splitter.patch)6
-rw-r--r--target/linux/generic/patches-3.14/406-mtd-hook-mtdsplit-into-Kbuild.patch24
-rw-r--r--target/linux/generic/patches-3.14/406-mtd-old-rootfs-squashfs-splitter.patch (renamed from target/linux/generic/patches-3.14/408-mtd-old-rootfs-squashfs-splitter.patch)2
-rw-r--r--target/linux/generic/patches-3.14/411-mtd-partial_eraseblock_write.patch2
-rw-r--r--target/linux/generic/patches-3.14/430-mtd-add-myloader-partition-parser.patch4
-rw-r--r--target/linux/generic/patches-3.14/431-mtd-bcm47xxpart-support-TRX-data-partition-being-UBI.patch2
-rw-r--r--target/linux/generic/patches-3.14/471-mtd-m25p80-allow-to-disable-small-sector-erase.patch2
-rw-r--r--target/linux/generic/patches-3.18/400-mtd-add-rootfs-split-support.patch2
-rw-r--r--target/linux/generic/patches-3.18/403-mtd-hook-mtdsplit-to-Kbuild.patch9
-rw-r--r--target/linux/generic/patches-3.18/404-mtd-add-more-helper-functions.patch (renamed from target/linux/generic/patches-3.18/405-mtd-add-more-helper-functions.patch)0
-rw-r--r--target/linux/generic/patches-3.18/405-mtd-old-firmware-uimage-splitter.patch (renamed from target/linux/generic/patches-3.14/407-mtd-old-firmware-uimage-splitter.patch)6
-rw-r--r--target/linux/generic/patches-3.18/406-mtd-hook-mtdsplit-into-Kbuild.patch24
-rw-r--r--target/linux/generic/patches-3.18/406-mtd-old-rootfs-squashfs-splitter.patch (renamed from target/linux/generic/patches-3.18/408-mtd-old-rootfs-squashfs-splitter.patch)2
-rw-r--r--target/linux/generic/patches-3.18/411-mtd-partial_eraseblock_write.patch2
-rw-r--r--target/linux/generic/patches-3.18/430-mtd-add-myloader-partition-parser.patch4
-rw-r--r--target/linux/generic/patches-3.18/431-mtd-bcm47xxpart-support-TRX-data-partition-being-UBI.patch2
-rw-r--r--target/linux/generic/patches-3.18/502-yaffs-3.10-disable-proc-entry.patch2
53 files changed, 93 insertions, 346 deletions
diff --git a/target/linux/generic/files/drivers/mtd/mtdsplit/Kconfig b/target/linux/generic/files/drivers/mtd/mtdsplit/Kconfig
index 09794f4f84..9a32daadc8 100644
--- a/target/linux/generic/files/drivers/mtd/mtdsplit/Kconfig
+++ b/target/linux/generic/files/drivers/mtd/mtdsplit/Kconfig
@@ -1,7 +1,16 @@
+config MTD_SPLIT
+ def_bool n
+ help
+ Generic MTD split support.
+
+config MTD_SPLIT_SUPPORT
+ def_bool MTD = y
+
comment "Rootfs partition parsers"
config MTD_SPLIT_SQUASHFS_ROOT
bool "Squashfs based root partition parser"
+ depends on MTD_SPLIT_SUPPORT
select MTD_SPLIT
default n
help
@@ -13,12 +22,15 @@ comment "Firmware partition parsers"
config MTD_SPLIT_SEAMA_FW
bool "Seama firmware parser"
+ depends on MTD_SPLIT_SUPPORT
select MTD_SPLIT
config MTD_SPLIT_UIMAGE_FW
bool "uImage based firmware partition parser"
+ depends on MTD_SPLIT_SUPPORT
select MTD_SPLIT
config MTD_SPLIT_LZMA_FW
bool "LZMA compressed kernel based firmware partition parser"
+ depends on MTD_SPLIT_SUPPORT
select MTD_SPLIT
diff --git a/target/linux/generic/files/drivers/mtd/mtdsplit/Makefile b/target/linux/generic/files/drivers/mtd/mtdsplit/Makefile
new file mode 100644
index 0000000000..41bc1dec10
--- /dev/null
+++ b/target/linux/generic/files/drivers/mtd/mtdsplit/Makefile
@@ -0,0 +1,5 @@
+obj-$(CONFIG_MTD_SPLIT) += mtdsplit.o
+obj-$(CONFIG_MTD_SPLIT_SEAMA_FW) += mtdsplit_seama.o
+obj-$(CONFIG_MTD_SPLIT_SQUASHFS_ROOT) += mtdsplit_squashfs.o
+obj-$(CONFIG_MTD_SPLIT_UIMAGE_FW) += mtdsplit_uimage.o
+obj-$(CONFIG_MTD_SPLIT_LZMA_FW) += mtdsplit_lzma.o
diff --git a/target/linux/generic/files/drivers/mtd/mtdsplit.c b/target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit.c
index 162739f472..162739f472 100644
--- a/target/linux/generic/files/drivers/mtd/mtdsplit.c
+++ b/target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit.c
diff --git a/target/linux/generic/files/drivers/mtd/mtdsplit.h b/target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit.h
index 7ee88b0bb4..7ee88b0bb4 100644
--- a/target/linux/generic/files/drivers/mtd/mtdsplit.h
+++ b/target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit.h
diff --git a/target/linux/generic/files/drivers/mtd/mtdsplit_lzma.c b/target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_lzma.c
index 64dc7cb31c..64dc7cb31c 100644
--- a/target/linux/generic/files/drivers/mtd/mtdsplit_lzma.c
+++ b/target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_lzma.c
diff --git a/target/linux/generic/files/drivers/mtd/mtdsplit_seama.c b/target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_seama.c
index 6f21f8fb58..6f21f8fb58 100644
--- a/target/linux/generic/files/drivers/mtd/mtdsplit_seama.c
+++ b/target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_seama.c
diff --git a/target/linux/generic/files/drivers/mtd/mtdsplit_squashfs.c b/target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_squashfs.c
index 3d80e078b5..3d80e078b5 100644
--- a/target/linux/generic/files/drivers/mtd/mtdsplit_squashfs.c
+++ b/target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_squashfs.c
diff --git a/target/linux/generic/files/drivers/mtd/mtdsplit_uimage.c b/target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_uimage.c
index 7dad63c9bb..7dad63c9bb 100644
--- a/target/linux/generic/files/drivers/mtd/mtdsplit_uimage.c
+++ b/target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_uimage.c
diff --git a/target/linux/generic/patches-3.10/400-mtd-add-rootfs-split-support.patch b/target/linux/generic/patches-3.10/400-mtd-add-rootfs-split-support.patch
index 6c17b01e53..e14e7c094b 100644
--- a/target/linux/generic/patches-3.10/400-mtd-add-rootfs-split-support.patch
+++ b/target/linux/generic/patches-3.10/400-mtd-add-rootfs-split-support.patch
@@ -35,7 +35,7 @@
depends on m
--- a/drivers/mtd/mtdpart.c
+++ b/drivers/mtd/mtdpart.c
-@@ -29,6 +29,7 @@
+@@ -29,9 +29,11 @@
#include <linux/kmod.h>
#include <linux/mtd/mtd.h>
#include <linux/mtd/partitions.h>
@@ -43,7 +43,11 @@
#include <linux/err.h>
#include "mtdcore.h"
-@@ -45,13 +46,14 @@ struct mtd_part {
++#include "mtdsplit/mtdsplit.h"
+
+ /* Our partition linked list */
+ static LIST_HEAD(mtd_partitions);
+@@ -45,13 +47,14 @@ struct mtd_part {
struct list_head list;
};
@@ -59,7 +63,7 @@
/*
* MTD methods which simply translate the effective address and pass through
* to the _real_ device.
-@@ -533,8 +535,10 @@ out_register:
+@@ -533,8 +536,10 @@ out_register:
return slave;
}
@@ -72,7 +76,7 @@
{
struct mtd_partition part;
struct mtd_part *p, *new;
-@@ -566,21 +570,24 @@ int mtd_add_partition(struct mtd_info *m
+@@ -566,21 +571,24 @@ int mtd_add_partition(struct mtd_info *m
end = offset + length;
mutex_lock(&mtd_partitions_mutex);
@@ -107,7 +111,7 @@
return ret;
err_inv:
-@@ -590,6 +597,12 @@ err_inv:
+@@ -590,6 +598,12 @@ err_inv:
}
EXPORT_SYMBOL_GPL(mtd_add_partition);
@@ -120,7 +124,7 @@
int mtd_del_partition(struct mtd_info *master, int partno)
{
struct mtd_part *slave, *next;
-@@ -613,6 +626,144 @@ int mtd_del_partition(struct mtd_info *m
+@@ -613,6 +627,144 @@ int mtd_del_partition(struct mtd_info *m
}
EXPORT_SYMBOL_GPL(mtd_del_partition);
@@ -265,7 +269,7 @@
/*
* This function, given a master MTD object and a partition table, creates
* and registers slave MTD objects which are bound to the master according to
-@@ -642,6 +793,7 @@ int add_mtd_partitions(struct mtd_info *
+@@ -642,6 +794,7 @@ int add_mtd_partitions(struct mtd_info *
mutex_unlock(&mtd_partitions_mutex);
add_mtd_device(&slave->mtd);
diff --git a/target/linux/generic/patches-3.10/401-mtd-add-support-for-different-partition-parser-types.patch b/target/linux/generic/patches-3.10/401-mtd-add-support-for-different-partition-parser-types.patch
index bd35aa7d35..52b87f56cc 100644
--- a/target/linux/generic/patches-3.10/401-mtd-add-support-for-different-partition-parser-types.patch
+++ b/target/linux/generic/patches-3.10/401-mtd-add-support-for-different-partition-parser-types.patch
@@ -11,7 +11,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
--- a/drivers/mtd/mtdpart.c
+++ b/drivers/mtd/mtdpart.c
-@@ -823,6 +823,30 @@ static struct mtd_part_parser *get_parti
+@@ -824,6 +824,30 @@ static struct mtd_part_parser *get_parti
#define put_partition_parser(p) do { module_put((p)->owner); } while (0)
@@ -42,7 +42,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
int register_mtd_parser(struct mtd_part_parser *p)
{
spin_lock(&part_parser_lock);
-@@ -899,6 +923,38 @@ int parse_mtd_partitions(struct mtd_info
+@@ -900,6 +924,38 @@ int parse_mtd_partitions(struct mtd_info
return ret;
}
diff --git a/target/linux/generic/patches-3.10/402-mtd-use-typed-mtd-parsers-for-rootfs-and-firmware-split.patch b/target/linux/generic/patches-3.10/402-mtd-use-typed-mtd-parsers-for-rootfs-and-firmware-split.patch
index 649693ff22..a614094851 100644
--- a/target/linux/generic/patches-3.10/402-mtd-use-typed-mtd-parsers-for-rootfs-and-firmware-split.patch
+++ b/target/linux/generic/patches-3.10/402-mtd-use-typed-mtd-parsers-for-rootfs-and-firmware-split.patch
@@ -1,6 +1,6 @@
--- a/drivers/mtd/mtdpart.c
+++ b/drivers/mtd/mtdpart.c
-@@ -626,6 +626,37 @@ int mtd_del_partition(struct mtd_info *m
+@@ -627,6 +627,37 @@ int mtd_del_partition(struct mtd_info *m
}
EXPORT_SYMBOL_GPL(mtd_del_partition);
@@ -38,7 +38,7 @@
static inline unsigned long
mtd_pad_erasesize(struct mtd_info *mtd, int offset, int len)
{
-@@ -685,6 +716,10 @@ static void split_rootfs_data(struct mtd
+@@ -686,6 +717,10 @@ static void split_rootfs_data(struct mtd
unsigned int split_size;
int ret;
@@ -49,7 +49,7 @@
ret = split_squashfs(master, part->offset, &split_offset);
if (ret)
return;
-@@ -734,6 +769,12 @@ static void split_uimage(struct mtd_info
+@@ -735,6 +770,12 @@ static void split_uimage(struct mtd_info
static void split_firmware(struct mtd_info *master, struct mtd_part *part)
{
diff --git a/target/linux/generic/patches-3.10/403-mtd-hook-mtdsplit-to-Kbuild.patch b/target/linux/generic/patches-3.10/403-mtd-hook-mtdsplit-to-Kbuild.patch
index c24f34c5cc..23cbd6243c 100644
--- a/target/linux/generic/patches-3.10/403-mtd-hook-mtdsplit-to-Kbuild.patch
+++ b/target/linux/generic/patches-3.10/403-mtd-hook-mtdsplit-to-Kbuild.patch
@@ -1,13 +1,10 @@
--- a/drivers/mtd/Kconfig
+++ b/drivers/mtd/Kconfig
-@@ -36,6 +36,11 @@ config MTD_UIMAGE_SPLIT
+@@ -36,6 +36,8 @@ config MTD_UIMAGE_SPLIT
depends on MTD_SPLIT_FIRMWARE
default y
-+config MTD_SPLIT
-+ def_bool n
-+ help
-+ Generic MTD split support.
++source "drivers/mtd/mtdsplit/Kconfig"
+
endmenu
@@ -18,7 +15,7 @@
obj-$(CONFIG_MTD) += mtd.o
mtd-y := mtdcore.o mtdsuper.o mtdconcat.o mtdpart.o mtdchar.o
-+mtd-$(CONFIG_MTD_SPLIT) += mtdsplit.o
++obj-$(CONFIG_MTD_SPLIT) += mtdsplit/
+
obj-$(CONFIG_MTD_OF_PARTS) += ofpart.o
obj-$(CONFIG_MTD_REDBOOT_PARTS) += redboot.o
diff --git a/target/linux/generic/patches-3.10/404-mtd-use-mtd_get_squashfs_len-in-split_squasfh.patch b/target/linux/generic/patches-3.10/404-mtd-use-mtd_get_squashfs_len-in-split_squasfh.patch
index 02e4e038c2..e4dd1e4852 100644
--- a/target/linux/generic/patches-3.10/404-mtd-use-mtd_get_squashfs_len-in-split_squasfh.patch
+++ b/target/linux/generic/patches-3.10/404-mtd-use-mtd_get_squashfs_len-in-split_squasfh.patch
@@ -1,14 +1,6 @@
--- a/drivers/mtd/mtdpart.c
+++ b/drivers/mtd/mtdpart.c
-@@ -33,6 +33,7 @@
- #include <linux/err.h>
-
- #include "mtdcore.h"
-+#include "mtdsplit.h"
-
- /* Our partition linked list */
- static LIST_HEAD(mtd_partitions);
-@@ -668,43 +669,16 @@ mtd_pad_erasesize(struct mtd_info *mtd,
+@@ -669,43 +669,16 @@ mtd_pad_erasesize(struct mtd_info *mtd,
return len;
}
diff --git a/target/linux/generic/patches-3.10/406-mtd-add-squashfs-parser.patch b/target/linux/generic/patches-3.10/406-mtd-add-squashfs-parser.patch
deleted file mode 100644
index b3ff9d9ab2..0000000000
--- a/target/linux/generic/patches-3.10/406-mtd-add-squashfs-parser.patch
+++ /dev/null
@@ -1,30 +0,0 @@
---- a/drivers/mtd/Kconfig
-+++ b/drivers/mtd/Kconfig
-@@ -37,6 +37,17 @@ config MTD_UIMAGE_SPLIT
- depends on MTD_SPLIT_FIRMWARE
- default y
-
-+comment "Rootfs partition parsers"
-+
-+config MTD_SPLIT_SQUASHFS_ROOT
-+ bool "Squashfs based root partition parser"
-+ select MTD_SPLIT
-+ default n
-+ help
-+ This provides a parsing function which allows to detect the
-+ offset and size of the unused portion of a rootfs partition
-+ containing a squashfs.
-+
- config MTD_SPLIT
- def_bool n
- help
---- a/drivers/mtd/Makefile
-+++ b/drivers/mtd/Makefile
-@@ -7,6 +7,7 @@ obj-$(CONFIG_MTD) += mtd.o
- mtd-y := mtdcore.o mtdsuper.o mtdconcat.o mtdpart.o mtdchar.o
-
- mtd-$(CONFIG_MTD_SPLIT) += mtdsplit.o
-+mtd-$(CONFIG_MTD_SPLIT_SQUASHFS_ROOT) += mtdsplit_squashfs.o
-
- obj-$(CONFIG_MTD_OF_PARTS) += ofpart.o
- obj-$(CONFIG_MTD_REDBOOT_PARTS) += redboot.o
diff --git a/target/linux/generic/patches-3.10/407-mtd-hook-mtdsplit_uimage-into-Kbuild.patch b/target/linux/generic/patches-3.10/407-mtd-hook-mtdsplit_uimage-into-Kbuild.patch
deleted file mode 100644
index 02697f64eb..0000000000
--- a/target/linux/generic/patches-3.10/407-mtd-hook-mtdsplit_uimage-into-Kbuild.patch
+++ /dev/null
@@ -1,25 +0,0 @@
---- a/drivers/mtd/Kconfig
-+++ b/drivers/mtd/Kconfig
-@@ -48,6 +48,12 @@ config MTD_SPLIT_SQUASHFS_ROOT
- offset and size of the unused portion of a rootfs partition
- containing a squashfs.
-
-+comment "Firmware partition parsers"
-+
-+config MTD_SPLIT_UIMAGE_FW
-+ bool "uImage based firmware partition parser"
-+ select MTD_SPLIT
-+
- config MTD_SPLIT
- def_bool n
- help
---- a/drivers/mtd/Makefile
-+++ b/drivers/mtd/Makefile
-@@ -8,6 +8,7 @@ mtd-y := mtdcore.o mtdsuper.o mtdconc
-
- mtd-$(CONFIG_MTD_SPLIT) += mtdsplit.o
- mtd-$(CONFIG_MTD_SPLIT_SQUASHFS_ROOT) += mtdsplit_squashfs.o
-+mtd-$(CONFIG_MTD_SPLIT_UIMAGE_FW) += mtdsplit_uimage.o
-
- obj-$(CONFIG_MTD_OF_PARTS) += ofpart.o
- obj-$(CONFIG_MTD_REDBOOT_PARTS) += redboot.o
diff --git a/target/linux/generic/patches-3.10/408-mtd-hook-mtdsplit_seama-into-Kbuild.patch b/target/linux/generic/patches-3.10/408-mtd-hook-mtdsplit_seama-into-Kbuild.patch
deleted file mode 100644
index 016a9b6e4c..0000000000
--- a/target/linux/generic/patches-3.10/408-mtd-hook-mtdsplit_seama-into-Kbuild.patch
+++ /dev/null
@@ -1,23 +0,0 @@
---- a/drivers/mtd/Kconfig
-+++ b/drivers/mtd/Kconfig
-@@ -50,6 +50,10 @@ config MTD_SPLIT_SQUASHFS_ROOT
-
- comment "Firmware partition parsers"
-
-+config MTD_SPLIT_SEAMA_FW
-+ bool "Seama firmware parser"
-+ select MTD_SPLIT
-+
- config MTD_SPLIT_UIMAGE_FW
- bool "uImage based firmware partition parser"
- select MTD_SPLIT
---- a/drivers/mtd/Makefile
-+++ b/drivers/mtd/Makefile
-@@ -7,6 +7,7 @@ obj-$(CONFIG_MTD) += mtd.o
- mtd-y := mtdcore.o mtdsuper.o mtdconcat.o mtdpart.o mtdchar.o
-
- mtd-$(CONFIG_MTD_SPLIT) += mtdsplit.o
-+mtd-$(CONFIG_MTD_SPLIT_SEAMA_FW) += mtdsplit_seama.o
- mtd-$(CONFIG_MTD_SPLIT_SQUASHFS_ROOT) += mtdsplit_squashfs.o
- mtd-$(CONFIG_MTD_SPLIT_UIMAGE_FW) += mtdsplit_uimage.o
-
diff --git a/target/linux/generic/patches-3.10/409-mtd-hook-mtdsplit_lzma-into-Kbuild.patch b/target/linux/generic/patches-3.10/409-mtd-hook-mtdsplit_lzma-into-Kbuild.patch
deleted file mode 100644
index cc9a971573..0000000000
--- a/target/linux/generic/patches-3.10/409-mtd-hook-mtdsplit_lzma-into-Kbuild.patch
+++ /dev/null
@@ -1,23 +0,0 @@
---- a/drivers/mtd/Kconfig
-+++ b/drivers/mtd/Kconfig
-@@ -58,6 +58,10 @@ config MTD_SPLIT_UIMAGE_FW
- bool "uImage based firmware partition parser"
- select MTD_SPLIT
-
-+config MTD_SPLIT_LZMA_FW
-+ bool "LZMA compressed kernel based firmware partition parser"
-+ select MTD_SPLIT
-+
- config MTD_SPLIT
- def_bool n
- help
---- a/drivers/mtd/Makefile
-+++ b/drivers/mtd/Makefile
-@@ -10,6 +10,7 @@ mtd-$(CONFIG_MTD_SPLIT) += mtdsplit.o
- mtd-$(CONFIG_MTD_SPLIT_SEAMA_FW) += mtdsplit_seama.o
- mtd-$(CONFIG_MTD_SPLIT_SQUASHFS_ROOT) += mtdsplit_squashfs.o
- mtd-$(CONFIG_MTD_SPLIT_UIMAGE_FW) += mtdsplit_uimage.o
-+mtd-$(CONFIG_MTD_SPLIT_LZMA_FW) += mtdsplit_lzma.o
-
- obj-$(CONFIG_MTD_OF_PARTS) += ofpart.o
- obj-$(CONFIG_MTD_REDBOOT_PARTS) += redboot.o
diff --git a/target/linux/generic/patches-3.10/411-mtd-partial_eraseblock_write.patch b/target/linux/generic/patches-3.10/411-mtd-partial_eraseblock_write.patch
index 9407411207..31d126c0a6 100644
--- a/target/linux/generic/patches-3.10/411-mtd-partial_eraseblock_write.patch
+++ b/target/linux/generic/patches-3.10/411-mtd-partial_eraseblock_write.patch
@@ -2,7 +2,7 @@
+++ b/drivers/mtd/mtdpart.c
@@ -35,6 +35,8 @@
#include "mtdcore.h"
- #include "mtdsplit.h"
+ #include "mtdsplit/mtdsplit.h"
+#define MTD_ERASE_PARTIAL 0x8000 /* partition only covers parts of an erase block */
+
diff --git a/target/linux/generic/patches-3.10/430-mtd-add-myloader-partition-parser.patch b/target/linux/generic/patches-3.10/430-mtd-add-myloader-partition-parser.patch
index fc352d2779..b6a6b6e57c 100644
--- a/target/linux/generic/patches-3.10/430-mtd-add-myloader-partition-parser.patch
+++ b/target/linux/generic/patches-3.10/430-mtd-add-myloader-partition-parser.patch
@@ -1,6 +1,6 @@
--- a/drivers/mtd/Kconfig
+++ b/drivers/mtd/Kconfig
-@@ -212,6 +212,22 @@ config MTD_BCM47XX_PARTS
+@@ -184,6 +184,22 @@ config MTD_BCM47XX_PARTS
This provides partitions parser for devices based on BCM47xx
boards.
@@ -25,7 +25,7 @@
config MTD_BLKDEVS
--- a/drivers/mtd/Makefile
+++ b/drivers/mtd/Makefile
-@@ -19,6 +19,7 @@ obj-$(CONFIG_MTD_AFS_PARTS) += afs.o
+@@ -15,6 +15,7 @@ obj-$(CONFIG_MTD_AFS_PARTS) += afs.o
obj-$(CONFIG_MTD_AR7_PARTS) += ar7part.o
obj-$(CONFIG_MTD_BCM63XX_PARTS) += bcm63xxpart.o
obj-$(CONFIG_MTD_BCM47XX_PARTS) += bcm47xxpart.o
diff --git a/target/linux/generic/patches-3.10/490-ubi-auto-attach-mtd-device-named-ubi-or-data-on-boot.patch b/target/linux/generic/patches-3.10/490-ubi-auto-attach-mtd-device-named-ubi-or-data-on-boot.patch
index f97a442cb1..002a79ab73 100644
--- a/target/linux/generic/patches-3.10/490-ubi-auto-attach-mtd-device-named-ubi-or-data-on-boot.patch
+++ b/target/linux/generic/patches-3.10/490-ubi-auto-attach-mtd-device-named-ubi-or-data-on-boot.patch
@@ -11,7 +11,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
--- a/drivers/mtd/ubi/build.c
+++ b/drivers/mtd/ubi/build.c
-@@ -1209,6 +1209,48 @@
+@@ -1207,6 +1207,48 @@ static struct mtd_info * __init open_mtd
return mtd;
}
@@ -60,7 +60,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
static int __init ubi_init(void)
{
int err, i, k;
-@@ -1298,6 +1340,12 @@
+@@ -1290,6 +1332,12 @@ static int __init ubi_init(void)
}
}
diff --git a/target/linux/generic/patches-3.13/400-mtd-add-rootfs-split-support.patch b/target/linux/generic/patches-3.13/400-mtd-add-rootfs-split-support.patch
index ce91d7ba5e..ae8c45fa99 100644
--- a/target/linux/generic/patches-3.13/400-mtd-add-rootfs-split-support.patch
+++ b/target/linux/generic/patches-3.13/400-mtd-add-rootfs-split-support.patch
@@ -35,7 +35,7 @@
depends on m
--- a/drivers/mtd/mtdpart.c
+++ b/drivers/mtd/mtdpart.c
-@@ -29,6 +29,7 @@
+@@ -29,9 +29,11 @@
#include <linux/kmod.h>
#include <linux/mtd/mtd.h>
#include <linux/mtd/partitions.h>
@@ -43,7 +43,11 @@
#include <linux/err.h>
#include "mtdcore.h"
-@@ -45,13 +46,14 @@ struct mtd_part {
++#include "mtdsplit/mtdsplit.h"
+
+ /* Our partition linked list */
+ static LIST_HEAD(mtd_partitions);
+@@ -45,13 +47,14 @@ struct mtd_part {
struct list_head list;
};
@@ -59,7 +63,7 @@
/*
* MTD methods which simply translate the effective address and pass through
* to the _real_ device.
-@@ -534,8 +536,10 @@ out_register:
+@@ -534,8 +537,10 @@ out_register:
return slave;
}
@@ -72,7 +76,7 @@
{
struct mtd_partition part;
struct mtd_part *p, *new;
-@@ -567,21 +571,24 @@ int mtd_add_partition(struct mtd_info *m
+@@ -567,21 +572,24 @@ int mtd_add_partition(struct mtd_info *m
end = offset + length;
mutex_lock(&mtd_partitions_mutex);
@@ -107,7 +111,7 @@
return ret;
err_inv:
-@@ -591,6 +598,12 @@ err_inv:
+@@ -591,6 +599,12 @@ err_inv:
}
EXPORT_SYMBOL_GPL(mtd_add_partition);
@@ -120,7 +124,7 @@
int mtd_del_partition(struct mtd_info *master, int partno)
{
struct mtd_part *slave, *next;
-@@ -614,6 +627,144 @@ int mtd_del_partition(struct mtd_info *m
+@@ -614,6 +628,144 @@ int mtd_del_partition(struct mtd_info *m
}
EXPORT_SYMBOL_GPL(mtd_del_partition);
@@ -265,7 +269,7 @@
/*
* This function, given a master MTD object and a partition table, creates
* and registers slave MTD objects which are bound to the master according to
-@@ -643,6 +794,7 @@ int add_mtd_partitions(struct mtd_info *
+@@ -643,6 +795,7 @@ int add_mtd_partitions(struct mtd_info *
mutex_unlock(&mtd_partitions_mutex);
add_mtd_device(&slave->mtd);
diff --git a/target/linux/generic/patches-3.13/401-mtd-add-support-for-different-partition-parser-types.patch b/target/linux/generic/patches-3.13/401-mtd-add-support-for-different-partition-parser-types.patch
index 52b87f56cc..793005d6e1 100644
--- a/target/linux/generic/patches-3.13/401-mtd-add-support-for-different-partition-parser-types.patch
+++ b/target/linux/generic/patches-3.13/401-mtd-add-support-for-different-partition-parser-types.patch
@@ -11,7 +11,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
--- a/drivers/mtd/mtdpart.c
+++ b/drivers/mtd/mtdpart.c
-@@ -824,6 +824,30 @@ static struct mtd_part_parser *get_parti
+@@ -825,6 +825,30 @@ static struct mtd_part_parser *get_parti
#define put_partition_parser(p) do { module_put((p)->owner); } while (0)
@@ -42,7 +42,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
int register_mtd_parser(struct mtd_part_parser *p)
{
spin_lock(&part_parser_lock);
-@@ -900,6 +924,38 @@ int parse_mtd_partitions(struct mtd_info
+@@ -901,6 +925,38 @@ int parse_mtd_partitions(struct mtd_info
return ret;
}
diff --git a/target/linux/generic/patches-3.13/402-mtd-use-typed-mtd-parsers-for-rootfs-and-firmware-split.patch b/target/linux/generic/patches-3.13/402-mtd-use-typed-mtd-parsers-for-rootfs-and-firmware-split.patch
index a614094851..8d0bda825f 100644
--- a/target/linux/generic/patches-3.13/402-mtd-use-typed-mtd-parsers-for-rootfs-and-firmware-split.patch
+++ b/target/linux/generic/patches-3.13/402-mtd-use-typed-mtd-parsers-for-rootfs-and-firmware-split.patch
@@ -1,6 +1,6 @@
--- a/drivers/mtd/mtdpart.c
+++ b/drivers/mtd/mtdpart.c
-@@ -627,6 +627,37 @@ int mtd_del_partition(struct mtd_info *m
+@@ -628,6 +628,37 @@ int mtd_del_partition(struct mtd_info *m
}
EXPORT_SYMBOL_GPL(mtd_del_partition);
@@ -38,7 +38,7 @@
static inline unsigned long
mtd_pad_erasesize(struct mtd_info *mtd, int offset, int len)
{
-@@ -686,6 +717,10 @@ static void split_rootfs_data(struct mtd
+@@ -687,6 +718,10 @@ static void split_rootfs_data(struct mtd
unsigned int split_size;
int ret;
@@ -49,7 +49,7 @@
ret = split_squashfs(master, part->offset, &split_offset);
if (ret)
return;
-@@ -735,6 +770,12 @@ static void split_uimage(struct mtd_info
+@@ -736,6 +771,12 @@ static void split_uimage(struct mtd_info
static void split_firmware(struct mtd_info *master, struct mtd_part *part)
{
diff --git a/target/linux/generic/patches-3.13/403-mtd-hook-mtdsplit-to-Kbuild.patch b/target/linux/generic/patches-3.13/403-mtd-hook-mtdsplit-to-Kbuild.patch
index c24f34c5cc..23cbd6243c 100644
--- a/target/linux/generic/patches-3.13/403-mtd-hook-mtdsplit-to-Kbuild.patch
+++ b/target/linux/generic/patches-3.13/403-mtd-hook-mtdsplit-to-Kbuild.patch
@@ -1,13 +1,10 @@
--- a/drivers/mtd/Kconfig
+++ b/drivers/mtd/Kconfig
-@@ -36,6 +36,11 @@ config MTD_UIMAGE_SPLIT
+@@ -36,6 +36,8 @@ config MTD_UIMAGE_SPLIT
depends on MTD_SPLIT_FIRMWARE
default y
-+config MTD_SPLIT
-+ def_bool n
-+ help
-+ Generic MTD split support.
++source "drivers/mtd/mtdsplit/Kconfig"
+
endmenu
@@ -18,7 +15,7 @@
obj-$(CONFIG_MTD) += mtd.o
mtd-y := mtdcore.o mtdsuper.o mtdconcat.o mtdpart.o mtdchar.o
-+mtd-$(CONFIG_MTD_SPLIT) += mtdsplit.o
++obj-$(CONFIG_MTD_SPLIT) += mtdsplit/
+
obj-$(CONFIG_MTD_OF_PARTS) += ofpart.o
obj-$(CONFIG_MTD_REDBOOT_PARTS) += redboot.o
diff --git a/target/linux/generic/patches-3.13/404-mtd-use-mtd_get_squashfs_len-in-split_squasfh.patch b/target/linux/generic/patches-3.13/404-mtd-use-mtd_get_squashfs_len-in-split_squasfh.patch
index a54b97b07c..4ae675faf9 100644
--- a/target/linux/generic/patches-3.13/404-mtd-use-mtd_get_squashfs_len-in-split_squasfh.patch
+++ b/target/linux/generic/patches-3.13/404-mtd-use-mtd_get_squashfs_len-in-split_squasfh.patch
@@ -1,14 +1,6 @@
--- a/drivers/mtd/mtdpart.c
+++ b/drivers/mtd/mtdpart.c
-@@ -33,6 +33,7 @@
- #include <linux/err.h>
-
- #include "mtdcore.h"
-+#include "mtdsplit.h"
-
- /* Our partition linked list */
- static LIST_HEAD(mtd_partitions);
-@@ -669,43 +670,16 @@ mtd_pad_erasesize(struct mtd_info *mtd,
+@@ -670,43 +670,16 @@ mtd_pad_erasesize(struct mtd_info *mtd,
return len;
}
diff --git a/target/linux/generic/patches-3.13/406-mtd-add-squashfs-parser.patch b/target/linux/generic/patches-3.13/406-mtd-add-squashfs-parser.patch
deleted file mode 100644
index b3ff9d9ab2..0000000000
--- a/target/linux/generic/patches-3.13/406-mtd-add-squashfs-parser.patch
+++ /dev/null
@@ -1,30 +0,0 @@
---- a/drivers/mtd/Kconfig
-+++ b/drivers/mtd/Kconfig
-@@ -37,6 +37,17 @@ config MTD_UIMAGE_SPLIT
- depends on MTD_SPLIT_FIRMWARE
- default y
-
-+comment "Rootfs partition parsers"
-+
-+config MTD_SPLIT_SQUASHFS_ROOT
-+ bool "Squashfs based root partition parser"
-+ select MTD_SPLIT
-+ default n
-+ help
-+ This provides a parsing function which allows to detect the
-+ offset and size of the unused portion of a rootfs partition
-+ containing a squashfs.
-+
- config MTD_SPLIT
- def_bool n
- help
---- a/drivers/mtd/Makefile
-+++ b/drivers/mtd/Makefile
-@@ -7,6 +7,7 @@ obj-$(CONFIG_MTD) += mtd.o
- mtd-y := mtdcore.o mtdsuper.o mtdconcat.o mtdpart.o mtdchar.o
-
- mtd-$(CONFIG_MTD_SPLIT) += mtdsplit.o
-+mtd-$(CONFIG_MTD_SPLIT_SQUASHFS_ROOT) += mtdsplit_squashfs.o
-
- obj-$(CONFIG_MTD_OF_PARTS) += ofpart.o
- obj-$(CONFIG_MTD_REDBOOT_PARTS) += redboot.o
diff --git a/target/linux/generic/patches-3.13/407-mtd-hook-mtdsplit_uimage-into-Kbuild.patch b/target/linux/generic/patches-3.13/407-mtd-hook-mtdsplit_uimage-into-Kbuild.patch
deleted file mode 100644
index 02697f64eb..0000000000
--- a/target/linux/generic/patches-3.13/407-mtd-hook-mtdsplit_uimage-into-Kbuild.patch
+++ /dev/null
@@ -1,25 +0,0 @@
---- a/drivers/mtd/Kconfig
-+++ b/drivers/mtd/Kconfig
-@@ -48,6 +48,12 @@ config MTD_SPLIT_SQUASHFS_ROOT
- offset and size of the unused portion of a rootfs partition
- containing a squashfs.
-
-+comment "Firmware partition parsers"
-+
-+config MTD_SPLIT_UIMAGE_FW
-+ bool "uImage based firmware partition parser"
-+ select MTD_SPLIT
-+
- config MTD_SPLIT
- def_bool n
- help
---- a/drivers/mtd/Makefile
-+++ b/drivers/mtd/Makefile
-@@ -8,6 +8,7 @@ mtd-y := mtdcore.o mtdsuper.o mtdconc
-
- mtd-$(CONFIG_MTD_SPLIT) += mtdsplit.o
- mtd-$(CONFIG_MTD_SPLIT_SQUASHFS_ROOT) += mtdsplit_squashfs.o
-+mtd-$(CONFIG_MTD_SPLIT_UIMAGE_FW) += mtdsplit_uimage.o
-
- obj-$(CONFIG_MTD_OF_PARTS) += ofpart.o
- obj-$(CONFIG_MTD_REDBOOT_PARTS) += redboot.o
diff --git a/target/linux/generic/patches-3.13/408-mtd-hook-mtdsplit_seama-into-Kbuild.patch b/target/linux/generic/patches-3.13/408-mtd-hook-mtdsplit_seama-into-Kbuild.patch
deleted file mode 100644
index 016a9b6e4c..0000000000
--- a/target/linux/generic/patches-3.13/408-mtd-hook-mtdsplit_seama-into-Kbuild.patch
+++ /dev/null
@@ -1,23 +0,0 @@
---- a/drivers/mtd/Kconfig
-+++ b/drivers/mtd/Kconfig
-@@ -50,6 +50,10 @@ config MTD_SPLIT_SQUASHFS_ROOT
-
- comment "Firmware partition parsers"
-
-+config MTD_SPLIT_SEAMA_FW
-+ bool "Seama firmware parser"
-+ select MTD_SPLIT
-+
- config MTD_SPLIT_UIMAGE_FW
- bool "uImage based firmware partition parser"
- select MTD_SPLIT
---- a/drivers/mtd/Makefile
-+++ b/drivers/mtd/Makefile
-@@ -7,6 +7,7 @@ obj-$(CONFIG_MTD) += mtd.o
- mtd-y := mtdcore.o mtdsuper.o mtdconcat.o mtdpart.o mtdchar.o
-
- mtd-$(CONFIG_MTD_SPLIT) += mtdsplit.o
-+mtd-$(CONFIG_MTD_SPLIT_SEAMA_FW) += mtdsplit_seama.o
- mtd-$(CONFIG_MTD_SPLIT_SQUASHFS_ROOT) += mtdsplit_squashfs.o
- mtd-$(CONFIG_MTD_SPLIT_UIMAGE_FW) += mtdsplit_uimage.o
-
diff --git a/target/linux/generic/patches-3.13/409-mtd-hook-mtdsplit_lzma-into-Kbuild.patch b/target/linux/generic/patches-3.13/409-mtd-hook-mtdsplit_lzma-into-Kbuild.patch
deleted file mode 100644
index cc9a971573..0000000000
--- a/target/linux/generic/patches-3.13/409-mtd-hook-mtdsplit_lzma-into-Kbuild.patch
+++ /dev/null
@@ -1,23 +0,0 @@
---- a/drivers/mtd/Kconfig
-+++ b/drivers/mtd/Kconfig
-@@ -58,6 +58,10 @@ config MTD_SPLIT_UIMAGE_FW
- bool "uImage based firmware partition parser"
- select MTD_SPLIT
-
-+config MTD_SPLIT_LZMA_FW
-+ bool "LZMA compressed kernel based firmware partition parser"
-+ select MTD_SPLIT
-+
- config MTD_SPLIT
- def_bool n
- help
---- a/drivers/mtd/Makefile
-+++ b/drivers/mtd/Makefile
-@@ -10,6 +10,7 @@ mtd-$(CONFIG_MTD_SPLIT) += mtdsplit.o
- mtd-$(CONFIG_MTD_SPLIT_SEAMA_FW) += mtdsplit_seama.o
- mtd-$(CONFIG_MTD_SPLIT_SQUASHFS_ROOT) += mtdsplit_squashfs.o
- mtd-$(CONFIG_MTD_SPLIT_UIMAGE_FW) += mtdsplit_uimage.o
-+mtd-$(CONFIG_MTD_SPLIT_LZMA_FW) += mtdsplit_lzma.o
-
- obj-$(CONFIG_MTD_OF_PARTS) += ofpart.o
- obj-$(CONFIG_MTD_REDBOOT_PARTS) += redboot.o
diff --git a/target/linux/generic/patches-3.13/411-mtd-partial_eraseblock_write.patch b/target/linux/generic/patches-3.13/411-mtd-partial_eraseblock_write.patch
index 8da080b2ad..668b7d7289 100644
--- a/target/linux/generic/patches-3.13/411-mtd-partial_eraseblock_write.patch
+++ b/target/linux/generic/patches-3.13/411-mtd-partial_eraseblock_write.patch
@@ -2,7 +2,7 @@
+++ b/drivers/mtd/mtdpart.c
@@ -35,6 +35,8 @@
#include "mtdcore.h"
- #include "mtdsplit.h"
+ #include "mtdsplit/mtdsplit.h"
+#define MTD_ERASE_PARTIAL 0x8000 /* partition only covers parts of an erase block */
+
diff --git a/target/linux/generic/patches-3.13/430-mtd-add-myloader-partition-parser.patch b/target/linux/generic/patches-3.13/430-mtd-add-myloader-partition-parser.patch
index fc352d2779..b6a6b6e57c 100644
--- a/target/linux/generic/patches-3.13/430-mtd-add-myloader-partition-parser.patch
+++ b/target/linux/generic/patches-3.13/430-mtd-add-myloader-partition-parser.patch
@@ -1,6 +1,6 @@
--- a/drivers/mtd/Kconfig
+++ b/drivers/mtd/Kconfig
-@@ -212,6 +212,22 @@ config MTD_BCM47XX_PARTS
+@@ -184,6 +184,22 @@ config MTD_BCM47XX_PARTS
This provides partitions parser for devices based on BCM47xx
boards.
@@ -25,7 +25,7 @@
config MTD_BLKDEVS
--- a/drivers/mtd/Makefile
+++ b/drivers/mtd/Makefile
-@@ -19,6 +19,7 @@ obj-$(CONFIG_MTD_AFS_PARTS) += afs.o
+@@ -15,6 +15,7 @@ obj-$(CONFIG_MTD_AFS_PARTS) += afs.o
obj-$(CONFIG_MTD_AR7_PARTS) += ar7part.o
obj-$(CONFIG_MTD_BCM63XX_PARTS) += bcm63xxpart.o
obj-$(CONFIG_MTD_BCM47XX_PARTS) += bcm47xxpart.o
diff --git a/target/linux/generic/patches-3.13/471-mtd-m25p80-allow-to-disable-small-sector-erase.patch b/target/linux/generic/patches-3.13/471-mtd-m25p80-allow-to-disable-small-sector-erase.patch
index 9bf5e33a08..372e578326 100644
--- a/target/linux/generic/patches-3.13/471-mtd-m25p80-allow-to-disable-small-sector-erase.patch
+++ b/target/linux/generic/patches-3.13/471-mtd-m25p80-allow-to-disable-small-sector-erase.patch
@@ -30,7 +30,7 @@
/****************************************************************************/
struct m25p {
-@@ -1032,7 +1038,7 @@ static int m25p_probe(struct spi_device
+@@ -1032,7 +1038,7 @@ static int m25p_probe(struct spi_device
flash->mtd._write = m25p80_write;
/* prefer "small sector" erase if possible */
diff --git a/target/linux/generic/patches-3.13/502-yaffs-3.10-disable-proc-entry.patch b/target/linux/generic/patches-3.13/502-yaffs-3.10-disable-proc-entry.patch
index 5b73d3898b..5345678c56 100644
--- a/target/linux/generic/patches-3.13/502-yaffs-3.10-disable-proc-entry.patch
+++ b/target/linux/generic/patches-3.13/502-yaffs-3.10-disable-proc-entry.patch
@@ -8,7 +8,7 @@
static struct proc_dir_entry *my_proc_entry;
static char *yaffs_dump_dev_part0(char *buf, struct yaffs_dev *dev)
-@@ -3398,6 +3399,7 @@ static int yaffs_proc_write(struct file
+@@ -3398,6 +3399,7 @@ static int yaffs_proc_write(struct file
return yaffs_proc_debug_write(file, buf, count, data);
return yaffs_proc_write_trace_options(file, buf, count, data);
}
diff --git a/target/linux/generic/patches-3.14/400-mtd-add-rootfs-split-support.patch b/target/linux/generic/patches-3.14/400-mtd-add-rootfs-split-support.patch
index 5ffacaf642..94551e247f 100644
--- a/target/linux/generic/patches-3.14/400-mtd-add-rootfs-split-support.patch
+++ b/target/linux/generic/patches-3.14/400-mtd-add-rootfs-split-support.patch
@@ -34,7 +34,7 @@
#include <linux/err.h>
#include "mtdcore.h"
-+#include "mtdsplit.h"
++#include "mtdsplit/mtdsplit.h"
/* Our partition linked list */
static LIST_HEAD(mtd_partitions);
diff --git a/target/linux/generic/patches-3.14/403-mtd-hook-mtdsplit-to-Kbuild.patch b/target/linux/generic/patches-3.14/403-mtd-hook-mtdsplit-to-Kbuild.patch
index d897034abd..0cf1c38555 100644
--- a/target/linux/generic/patches-3.14/403-mtd-hook-mtdsplit-to-Kbuild.patch
+++ b/target/linux/generic/patches-3.14/403-mtd-hook-mtdsplit-to-Kbuild.patch
@@ -1,13 +1,10 @@
--- a/drivers/mtd/Kconfig
+++ b/drivers/mtd/Kconfig
-@@ -27,6 +27,11 @@ config MTD_SPLIT_FIRMWARE_NAME
+@@ -27,6 +27,8 @@ config MTD_SPLIT_FIRMWARE_NAME
depends on MTD_SPLIT_FIRMWARE
default "firmware"
-+config MTD_SPLIT
-+ def_bool n
-+ help
-+ Generic MTD split support.
++source "drivers/mtd/mtdsplit/Kconfig"
+
endmenu
@@ -18,7 +15,7 @@
obj-$(CONFIG_MTD) += mtd.o
mtd-y := mtdcore.o mtdsuper.o mtdconcat.o mtdpart.o mtdchar.o
-+mtd-$(CONFIG_MTD_SPLIT) += mtdsplit.o
++obj-$(CONFIG_MTD_SPLIT) += mtdsplit/
+
obj-$(CONFIG_MTD_OF_PARTS) += ofpart.o
obj-$(CONFIG_MTD_REDBOOT_PARTS) += redboot.o
diff --git a/target/linux/generic/patches-3.14/405-mtd-add-more-helper-functions.patch b/target/linux/generic/patches-3.14/404-mtd-add-more-helper-functions.patch
index f3f957b33f..f3f957b33f 100644
--- a/target/linux/generic/patches-3.14/405-mtd-add-more-helper-functions.patch
+++ b/target/linux/generic/patches-3.14/404-mtd-add-more-helper-functions.patch
diff --git a/target/linux/generic/patches-3.18/407-mtd-old-firmware-uimage-splitter.patch b/target/linux/generic/patches-3.14/405-mtd-old-firmware-uimage-splitter.patch
index 34a4b1aa8c..c4ceb82a32 100644
--- a/target/linux/generic/patches-3.18/407-mtd-old-firmware-uimage-splitter.patch
+++ b/target/linux/generic/patches-3.14/405-mtd-old-firmware-uimage-splitter.patch
@@ -11,10 +11,10 @@
+
source "drivers/mtd/mtdsplit/Kconfig"
- config MTD_SPLIT
+ endmenu
--- a/drivers/mtd/mtdpart.c
+++ b/drivers/mtd/mtdpart.c
-@@ -681,6 +681,37 @@ mtd_pad_erasesize(struct mtd_info *mtd,
+@@ -668,6 +668,37 @@ mtd_pad_erasesize(struct mtd_info *mtd,
return len;
}
@@ -52,7 +52,7 @@
#ifdef CONFIG_MTD_SPLIT_FIRMWARE_NAME
#define SPLIT_FIRMWARE_NAME CONFIG_MTD_SPLIT_FIRMWARE_NAME
#else
-@@ -689,7 +720,14 @@ mtd_pad_erasesize(struct mtd_info *mtd,
+@@ -676,7 +707,14 @@ mtd_pad_erasesize(struct mtd_info *mtd,
static void split_firmware(struct mtd_info *master, struct mtd_part *part)
{
diff --git a/target/linux/generic/patches-3.14/406-mtd-hook-mtdsplit-into-Kbuild.patch b/target/linux/generic/patches-3.14/406-mtd-hook-mtdsplit-into-Kbuild.patch
deleted file mode 100644
index 008714bd15..0000000000
--- a/target/linux/generic/patches-3.14/406-mtd-hook-mtdsplit-into-Kbuild.patch
+++ /dev/null
@@ -1,24 +0,0 @@
---- a/drivers/mtd/Kconfig
-+++ b/drivers/mtd/Kconfig
-@@ -27,6 +27,8 @@ config MTD_SPLIT_FIRMWARE_NAME
- depends on MTD_SPLIT_FIRMWARE
- default "firmware"
-
-+source "drivers/mtd/mtdsplit/Kconfig"
-+
- config MTD_SPLIT
- def_bool n
- help
---- a/drivers/mtd/Makefile
-+++ b/drivers/mtd/Makefile
-@@ -7,6 +7,10 @@ obj-$(CONFIG_MTD) += mtd.o
- mtd-y := mtdcore.o mtdsuper.o mtdconcat.o mtdpart.o mtdchar.o
-
- mtd-$(CONFIG_MTD_SPLIT) += mtdsplit.o
-+mtd-$(CONFIG_MTD_SPLIT_SEAMA_FW) += mtdsplit_seama.o
-+mtd-$(CONFIG_MTD_SPLIT_SQUASHFS_ROOT) += mtdsplit_squashfs.o
-+mtd-$(CONFIG_MTD_SPLIT_UIMAGE_FW) += mtdsplit_uimage.o
-+mtd-$(CONFIG_MTD_SPLIT_LZMA_FW) += mtdsplit_lzma.o
-
- obj-$(CONFIG_MTD_OF_PARTS) += ofpart.o
- obj-$(CONFIG_MTD_REDBOOT_PARTS) += redboot.o
diff --git a/target/linux/generic/patches-3.14/408-mtd-old-rootfs-squashfs-splitter.patch b/target/linux/generic/patches-3.14/406-mtd-old-rootfs-squashfs-splitter.patch
index c29b137774..9147d1df46 100644
--- a/target/linux/generic/patches-3.14/408-mtd-old-rootfs-squashfs-splitter.patch
+++ b/target/linux/generic/patches-3.14/406-mtd-old-rootfs-squashfs-splitter.patch
@@ -14,7 +14,7 @@
default y
--- a/drivers/mtd/mtdpart.c
+++ b/drivers/mtd/mtdpart.c
-@@ -668,6 +668,47 @@ mtd_pad_erasesize(struct mtd_info *mtd,
+@@ -668,6 +668,47 @@ mtd_pad_erasesize(struct mtd_info *mtd,
return len;
}
diff --git a/target/linux/generic/patches-3.14/411-mtd-partial_eraseblock_write.patch b/target/linux/generic/patches-3.14/411-mtd-partial_eraseblock_write.patch
index 8da080b2ad..668b7d7289 100644
--- a/target/linux/generic/patches-3.14/411-mtd-partial_eraseblock_write.patch
+++ b/target/linux/generic/patches-3.14/411-mtd-partial_eraseblock_write.patch
@@ -2,7 +2,7 @@
+++ b/drivers/mtd/mtdpart.c
@@ -35,6 +35,8 @@
#include "mtdcore.h"
- #include "mtdsplit.h"
+ #include "mtdsplit/mtdsplit.h"
+#define MTD_ERASE_PARTIAL 0x8000 /* partition only covers parts of an erase block */
+
diff --git a/target/linux/generic/patches-3.14/430-mtd-add-myloader-partition-parser.patch b/target/linux/generic/patches-3.14/430-mtd-add-myloader-partition-parser.patch
index ffc9e2199c..45af25dd61 100644
--- a/target/linux/generic/patches-3.14/430-mtd-add-myloader-partition-parser.patch
+++ b/target/linux/generic/patches-3.14/430-mtd-add-myloader-partition-parser.patch
@@ -1,6 +1,6 @@
--- a/drivers/mtd/Kconfig
+++ b/drivers/mtd/Kconfig
-@@ -189,6 +189,22 @@ config MTD_BCM47XX_PARTS
+@@ -184,6 +184,22 @@ config MTD_BCM47XX_PARTS
This provides partitions parser for devices based on BCM47xx
boards.
@@ -25,7 +25,7 @@
#
--- a/drivers/mtd/Makefile
+++ b/drivers/mtd/Makefile
-@@ -19,6 +19,7 @@ obj-$(CONFIG_MTD_AFS_PARTS) += afs.o
+@@ -15,6 +15,7 @@ obj-$(CONFIG_MTD_AFS_PARTS) += afs.o
obj-$(CONFIG_MTD_AR7_PARTS) += ar7part.o
obj-$(CONFIG_MTD_BCM63XX_PARTS) += bcm63xxpart.o
obj-$(CONFIG_MTD_BCM47XX_PARTS) += bcm47xxpart.o
diff --git a/target/linux/generic/patches-3.14/431-mtd-bcm47xxpart-support-TRX-data-partition-being-UBI.patch b/target/linux/generic/patches-3.14/431-mtd-bcm47xxpart-support-TRX-data-partition-being-UBI.patch
index 4c4720341e..46881fca2c 100644
--- a/target/linux/generic/patches-3.14/431-mtd-bcm47xxpart-support-TRX-data-partition-being-UBI.patch
+++ b/target/linux/generic/patches-3.14/431-mtd-bcm47xxpart-support-TRX-data-partition-being-UBI.patch
@@ -17,7 +17,7 @@
u64 offset, uint32_t mask_flags)
{
part->name = name;
-@@ -58,6 +59,26 @@ static void bcm47xxpart_add_part(struct
+@@ -58,6 +59,26 @@ static void bcm47xxpart_add_part(struct
part->mask_flags = mask_flags;
}
diff --git a/target/linux/generic/patches-3.14/471-mtd-m25p80-allow-to-disable-small-sector-erase.patch b/target/linux/generic/patches-3.14/471-mtd-m25p80-allow-to-disable-small-sector-erase.patch
index eec90fa413..4f2f4e6586 100644
--- a/target/linux/generic/patches-3.14/471-mtd-m25p80-allow-to-disable-small-sector-erase.patch
+++ b/target/linux/generic/patches-3.14/471-mtd-m25p80-allow-to-disable-small-sector-erase.patch
@@ -30,7 +30,7 @@
/****************************************************************************/
enum read_type {
-@@ -1192,7 +1198,7 @@ static int m25p_probe(struct spi_device
+@@ -1192,7 +1198,7 @@ static int m25p_probe(struct spi_device
flash->mtd._write = m25p80_write;
/* prefer "small sector" erase if possible */
diff --git a/target/linux/generic/patches-3.18/400-mtd-add-rootfs-split-support.patch b/target/linux/generic/patches-3.18/400-mtd-add-rootfs-split-support.patch
index 597adf5445..bf69a3509d 100644
--- a/target/linux/generic/patches-3.18/400-mtd-add-rootfs-split-support.patch
+++ b/target/linux/generic/patches-3.18/400-mtd-add-rootfs-split-support.patch
@@ -34,7 +34,7 @@
#include <linux/err.h>
#include "mtdcore.h"
-+#include "mtdsplit.h"
++#include "mtdsplit/mtdsplit.h"
/* Our partition linked list */
static LIST_HEAD(mtd_partitions);
diff --git a/target/linux/generic/patches-3.18/403-mtd-hook-mtdsplit-to-Kbuild.patch b/target/linux/generic/patches-3.18/403-mtd-hook-mtdsplit-to-Kbuild.patch
index d897034abd..0cf1c38555 100644
--- a/target/linux/generic/patches-3.18/403-mtd-hook-mtdsplit-to-Kbuild.patch
+++ b/target/linux/generic/patches-3.18/403-mtd-hook-mtdsplit-to-Kbuild.patch
@@ -1,13 +1,10 @@
--- a/drivers/mtd/Kconfig
+++ b/drivers/mtd/Kconfig
-@@ -27,6 +27,11 @@ config MTD_SPLIT_FIRMWARE_NAME
+@@ -27,6 +27,8 @@ config MTD_SPLIT_FIRMWARE_NAME
depends on MTD_SPLIT_FIRMWARE
default "firmware"
-+config MTD_SPLIT
-+ def_bool n
-+ help
-+ Generic MTD split support.
++source "drivers/mtd/mtdsplit/Kconfig"
+
endmenu
@@ -18,7 +15,7 @@
obj-$(CONFIG_MTD) += mtd.o
mtd-y := mtdcore.o mtdsuper.o mtdconcat.o mtdpart.o mtdchar.o
-+mtd-$(CONFIG_MTD_SPLIT) += mtdsplit.o
++obj-$(CONFIG_MTD_SPLIT) += mtdsplit/
+
obj-$(CONFIG_MTD_OF_PARTS) += ofpart.o
obj-$(CONFIG_MTD_REDBOOT_PARTS) += redboot.o
diff --git a/target/linux/generic/patches-3.18/405-mtd-add-more-helper-functions.patch b/target/linux/generic/patches-3.18/404-mtd-add-more-helper-functions.patch
index d7c38011ec..d7c38011ec 100644
--- a/target/linux/generic/patches-3.18/405-mtd-add-more-helper-functions.patch
+++ b/target/linux/generic/patches-3.18/404-mtd-add-more-helper-functions.patch
diff --git a/target/linux/generic/patches-3.14/407-mtd-old-firmware-uimage-splitter.patch b/target/linux/generic/patches-3.18/405-mtd-old-firmware-uimage-splitter.patch
index 3f7e910e72..a19202a870 100644
--- a/target/linux/generic/patches-3.14/407-mtd-old-firmware-uimage-splitter.patch
+++ b/target/linux/generic/patches-3.18/405-mtd-old-firmware-uimage-splitter.patch
@@ -11,10 +11,10 @@
+
source "drivers/mtd/mtdsplit/Kconfig"
- config MTD_SPLIT
+ endmenu
--- a/drivers/mtd/mtdpart.c
+++ b/drivers/mtd/mtdpart.c
-@@ -668,6 +668,37 @@ mtd_pad_erasesize(struct mtd_info *mtd,
+@@ -681,6 +681,37 @@ mtd_pad_erasesize(struct mtd_info *mtd,
return len;
}
@@ -52,7 +52,7 @@
#ifdef CONFIG_MTD_SPLIT_FIRMWARE_NAME
#define SPLIT_FIRMWARE_NAME CONFIG_MTD_SPLIT_FIRMWARE_NAME
#else
-@@ -676,7 +707,14 @@ mtd_pad_erasesize(struct mtd_info *mtd,
+@@ -689,7 +720,14 @@ mtd_pad_erasesize(struct mtd_info *mtd,
static void split_firmware(struct mtd_info *master, struct mtd_part *part)
{
diff --git a/target/linux/generic/patches-3.18/406-mtd-hook-mtdsplit-into-Kbuild.patch b/target/linux/generic/patches-3.18/406-mtd-hook-mtdsplit-into-Kbuild.patch
deleted file mode 100644
index 008714bd15..0000000000
--- a/target/linux/generic/patches-3.18/406-mtd-hook-mtdsplit-into-Kbuild.patch
+++ /dev/null
@@ -1,24 +0,0 @@
---- a/drivers/mtd/Kconfig
-+++ b/drivers/mtd/Kconfig
-@@ -27,6 +27,8 @@ config MTD_SPLIT_FIRMWARE_NAME
- depends on MTD_SPLIT_FIRMWARE
- default "firmware"
-
-+source "drivers/mtd/mtdsplit/Kconfig"
-+
- config MTD_SPLIT
- def_bool n
- help
---- a/drivers/mtd/Makefile
-+++ b/drivers/mtd/Makefile
-@@ -7,6 +7,10 @@ obj-$(CONFIG_MTD) += mtd.o
- mtd-y := mtdcore.o mtdsuper.o mtdconcat.o mtdpart.o mtdchar.o
-
- mtd-$(CONFIG_MTD_SPLIT) += mtdsplit.o
-+mtd-$(CONFIG_MTD_SPLIT_SEAMA_FW) += mtdsplit_seama.o
-+mtd-$(CONFIG_MTD_SPLIT_SQUASHFS_ROOT) += mtdsplit_squashfs.o
-+mtd-$(CONFIG_MTD_SPLIT_UIMAGE_FW) += mtdsplit_uimage.o
-+mtd-$(CONFIG_MTD_SPLIT_LZMA_FW) += mtdsplit_lzma.o
-
- obj-$(CONFIG_MTD_OF_PARTS) += ofpart.o
- obj-$(CONFIG_MTD_REDBOOT_PARTS) += redboot.o
diff --git a/target/linux/generic/patches-3.18/408-mtd-old-rootfs-squashfs-splitter.patch b/target/linux/generic/patches-3.18/406-mtd-old-rootfs-squashfs-splitter.patch
index ca81958432..d48a681483 100644
--- a/target/linux/generic/patches-3.18/408-mtd-old-rootfs-squashfs-splitter.patch
+++ b/target/linux/generic/patches-3.18/406-mtd-old-rootfs-squashfs-splitter.patch
@@ -14,7 +14,7 @@
default y
--- a/drivers/mtd/mtdpart.c
+++ b/drivers/mtd/mtdpart.c
-@@ -681,6 +681,47 @@ mtd_pad_erasesize(struct mtd_info *mtd,
+@@ -681,6 +681,47 @@ mtd_pad_erasesize(struct mtd_info *mtd,
return len;
}
diff --git a/target/linux/generic/patches-3.18/411-mtd-partial_eraseblock_write.patch b/target/linux/generic/patches-3.18/411-mtd-partial_eraseblock_write.patch
index 4a17ccd8d6..0bb7be0848 100644
--- a/target/linux/generic/patches-3.18/411-mtd-partial_eraseblock_write.patch
+++ b/target/linux/generic/patches-3.18/411-mtd-partial_eraseblock_write.patch
@@ -2,7 +2,7 @@
+++ b/drivers/mtd/mtdpart.c
@@ -35,6 +35,8 @@
#include "mtdcore.h"
- #include "mtdsplit.h"
+ #include "mtdsplit/mtdsplit.h"
+#define MTD_ERASE_PARTIAL 0x8000 /* partition only covers parts of an erase block */
+
diff --git a/target/linux/generic/patches-3.18/430-mtd-add-myloader-partition-parser.patch b/target/linux/generic/patches-3.18/430-mtd-add-myloader-partition-parser.patch
index ffc9e2199c..45af25dd61 100644
--- a/target/linux/generic/patches-3.18/430-mtd-add-myloader-partition-parser.patch
+++ b/target/linux/generic/patches-3.18/430-mtd-add-myloader-partition-parser.patch
@@ -1,6 +1,6 @@
--- a/drivers/mtd/Kconfig
+++ b/drivers/mtd/Kconfig
-@@ -189,6 +189,22 @@ config MTD_BCM47XX_PARTS
+@@ -184,6 +184,22 @@ config MTD_BCM47XX_PARTS
This provides partitions parser for devices based on BCM47xx
boards.
@@ -25,7 +25,7 @@
#
--- a/drivers/mtd/Makefile
+++ b/drivers/mtd/Makefile
-@@ -19,6 +19,7 @@ obj-$(CONFIG_MTD_AFS_PARTS) += afs.o
+@@ -15,6 +15,7 @@ obj-$(CONFIG_MTD_AFS_PARTS) += afs.o
obj-$(CONFIG_MTD_AR7_PARTS) += ar7part.o
obj-$(CONFIG_MTD_BCM63XX_PARTS) += bcm63xxpart.o
obj-$(CONFIG_MTD_BCM47XX_PARTS) += bcm47xxpart.o
diff --git a/target/linux/generic/patches-3.18/431-mtd-bcm47xxpart-support-TRX-data-partition-being-UBI.patch b/target/linux/generic/patches-3.18/431-mtd-bcm47xxpart-support-TRX-data-partition-being-UBI.patch
index 4c4720341e..46881fca2c 100644
--- a/target/linux/generic/patches-3.18/431-mtd-bcm47xxpart-support-TRX-data-partition-being-UBI.patch
+++ b/target/linux/generic/patches-3.18/431-mtd-bcm47xxpart-support-TRX-data-partition-being-UBI.patch
@@ -17,7 +17,7 @@
u64 offset, uint32_t mask_flags)
{
part->name = name;
-@@ -58,6 +59,26 @@ static void bcm47xxpart_add_part(struct
+@@ -58,6 +59,26 @@ static void bcm47xxpart_add_part(struct
part->mask_flags = mask_flags;
}
diff --git a/target/linux/generic/patches-3.18/502-yaffs-3.10-disable-proc-entry.patch b/target/linux/generic/patches-3.18/502-yaffs-3.10-disable-proc-entry.patch
index 5b73d3898b..5345678c56 100644
--- a/target/linux/generic/patches-3.18/502-yaffs-3.10-disable-proc-entry.patch
+++ b/target/linux/generic/patches-3.18/502-yaffs-3.10-disable-proc-entry.patch
@@ -8,7 +8,7 @@
static struct proc_dir_entry *my_proc_entry;
static char *yaffs_dump_dev_part0(char *buf, struct yaffs_dev *dev)
-@@ -3398,6 +3399,7 @@ static int yaffs_proc_write(struct file
+@@ -3398,6 +3399,7 @@ static int yaffs_proc_write(struct file
return yaffs_proc_debug_write(file, buf, count, data);
return yaffs_proc_write_trace_options(file, buf, count, data);
}