kernel: bump kernel 4.4 to version 4.4.140
[openwrt/staging/chunkeey.git] / target / linux / ar71xx / patches-4.4 / 403-mtd_fix_cfi_cmdset_0002_status_check.patch
index 1ccce4ecec99fd99bc22f3d97e87bc2a9ad6c12b..040d83d4cb70ce25b8bbb329e104613e9da298fd 100644 (file)
@@ -1,6 +1,6 @@
 --- a/drivers/mtd/chips/cfi_cmdset_0002.c
 +++ b/drivers/mtd/chips/cfi_cmdset_0002.c
-@@ -1632,8 +1632,8 @@ static int __xipram do_write_oneword(str
+@@ -1633,8 +1633,8 @@ static int __xipram do_write_oneword(str
                        break;
                }
  
@@ -11,7 +11,7 @@
  
                /* Latency issues. Drop the lock, wait a while and retry */
                UDELAY(map, chip, adr, 1);
-@@ -1649,6 +1649,8 @@ static int __xipram do_write_oneword(str
+@@ -1650,6 +1650,8 @@ static int __xipram do_write_oneword(str
  
                ret = -EIO;
        }
        xip_enable(map, chip, adr);
   op_done:
        if (mode == FL_OTP_WRITE)
-@@ -2227,7 +2229,6 @@ static int cfi_amdstd_panic_write(struct
-       return 0;
- }
--
- /*
-  * Handle devices with one erase region, that only implement
-  * the chip erase command.
-@@ -2291,8 +2292,8 @@ static int __xipram do_erase_chip(struct
-                       chip->erase_suspended = 0;
-               }
--              if (chip_ready(map, adr))
--                      break;
-+              if (chip_good(map, adr, map_word_ff(map)))
-+                      goto op_done;
-               if (time_after(jiffies, timeo)) {
-                       printk(KERN_WARNING "MTD %s(): software timeout\n",
-@@ -2312,6 +2313,7 @@ static int __xipram do_erase_chip(struct
-               ret = -EIO;
-       }
-+ op_done:
-       chip->state = FL_READY;
-       xip_enable(map, chip, adr);
-       DISABLE_VPP(map);
-@@ -2380,9 +2382,9 @@ static int __xipram do_erase_oneblock(st
-                       chip->erase_suspended = 0;
-               }
--              if (chip_ready(map, adr)) {
-+              if (chip_good(map, adr, map_word_ff(map))) {
-                       xip_enable(map, chip, adr);
--                      break;
-+                      goto op_done;
-               }
-               if (time_after(jiffies, timeo)) {
-@@ -2404,6 +2406,7 @@ static int __xipram do_erase_oneblock(st
-               ret = -EIO;
-       }
-+ op_done:
-       chip->state = FL_READY;
-       DISABLE_VPP(map);
-       put_chip(map, chip, adr);