X-Git-Url: http://git.openwrt.org/?p=openwrt%2Fstaging%2Fchunkeey.git;a=blobdiff_plain;f=target%2Flinux%2Fgeneric%2Fpatches-3.18%2F411-mtd-partial_eraseblock_write.patch;h=5d5c6ed5d3aef9765640982c28d6a909cac4ef0d;hp=0c117c27030f1cdf46fd170ff4eb43e926bd1661;hb=de350550ef648d9728351b986b0516fa29465c45;hpb=ac0e2479dc5a720d1ad70fb558fe415588f05a27 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 0c117c2703..5d5c6ed5d3 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 @@ -1,6 +1,6 @@ --- a/drivers/mtd/mtdpart.c +++ b/drivers/mtd/mtdpart.c -@@ -35,6 +35,8 @@ +@@ -36,6 +36,8 @@ #include "mtdcore.h" #include "mtdsplit/mtdsplit.h" @@ -9,7 +9,7 @@ /* Our partition linked list */ static LIST_HEAD(mtd_partitions); static DEFINE_MUTEX(mtd_partitions_mutex); -@@ -233,13 +235,61 @@ static int part_erase(struct mtd_info *m +@@ -234,13 +236,61 @@ static int part_erase(struct mtd_info *m struct mtd_part *part = PART(mtd); int ret; @@ -71,7 +71,7 @@ return ret; } -@@ -247,7 +297,25 @@ void mtd_erase_callback(struct erase_inf +@@ -248,7 +298,25 @@ void mtd_erase_callback(struct erase_inf { if (instr->mtd->_erase == part_erase) { struct mtd_part *part = PART(instr->mtd); @@ -97,7 +97,7 @@ if (instr->fail_addr != MTD_FAIL_ADDR_UNKNOWN) instr->fail_addr -= part->offset; instr->addr -= part->offset; -@@ -514,18 +582,21 @@ static struct mtd_part *allocate_partiti +@@ -515,17 +583,20 @@ static struct mtd_part *allocate_partiti if ((slave->mtd.flags & MTD_WRITEABLE) && mtd_mod_by_eb(slave->offset, &slave->mtd)) { /* Doesn't start on a boundary of major erase size */ @@ -127,7 +127,6 @@ } slave->mtd.ecclayout = master->ecclayout; - slave->mtd.ecc_step_size = master->ecc_step_size; --- a/include/linux/mtd/mtd.h +++ b/include/linux/mtd/mtd.h @@ -55,6 +55,10 @@ struct erase_info {