kernel: update kernel to 3.10.15
[oweals/openwrt.git] / target / linux / generic / patches-3.10 / 411-mtd-partial_eraseblock_write.patch
index 07db13706197fb5bc8f68009d05f4a8087721ccd..560096f854b1642e13129b02b16946ed688a73fe 100644 (file)
@@ -1,15 +1,15 @@
 --- a/drivers/mtd/mtdpart.c
 +++ b/drivers/mtd/mtdpart.c
-@@ -35,6 +35,8 @@
+@@ -36,6 +36,8 @@
  #include "mtdcore.h"
+ #include "mtdsplit.h"
  
 +#define MTD_ERASE_PARTIAL     0x8000 /* partition only covers parts of an erase block */
 +
  /* Our partition linked list */
  static LIST_HEAD(mtd_partitions);
  static DEFINE_MUTEX(mtd_partitions_mutex);
-@@ -231,13 +233,60 @@ static int part_erase(struct mtd_info *m
+@@ -232,13 +234,60 @@ static int part_erase(struct mtd_info *m
        struct mtd_part *part = PART(mtd);
        int ret;
  
@@ -70,7 +70,7 @@
        return ret;
  }
  
-@@ -245,7 +294,25 @@ void mtd_erase_callback(struct erase_inf
+@@ -246,7 +295,25 @@ void mtd_erase_callback(struct erase_inf
  {
        if (instr->mtd->_erase == part_erase) {
                struct mtd_part *part = PART(instr->mtd);
@@ -96,7 +96,7 @@
                if (instr->fail_addr != MTD_FAIL_ADDR_UNKNOWN)
                        instr->fail_addr -= part->offset;
                instr->addr -= part->offset;
-@@ -505,18 +572,24 @@ static struct mtd_part *allocate_partiti
+@@ -504,18 +571,24 @@ 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 */