[amazon] Extends workaround for swapping problem.
[openwrt.git] / target / linux / amazon / patches / 160-cfi-swap.patch
index 9e20f05..03c26da 100644 (file)
@@ -1,6 +1,6 @@
---- linux-2.6.21.5/drivers/mtd/chips/cfi_cmdset_0002.c 2007-07-23 23:15:50.403369508 +0200
-+++ linux-2.6.21.5.orig/drivers/mtd/chips/cfi_cmdset_0002.c    2007-07-23 23:26:43.028560499 +0200
-@@ -1007,7 +1007,9 @@
+--- a/drivers/mtd/chips/cfi_cmdset_0002.c
++++ b/drivers/mtd/chips/cfi_cmdset_0002.c
+@@ -1007,7 +1007,9 @@ static int __xipram do_write_oneword(str
        int ret = 0;
        map_word oldd;
        int retry_cnt = 0;
        adr += chip->start;
  
        spin_lock(chip->mutex);
-
+@@ -1291,7 +1293,11 @@ static int __xipram do_write_buffer(stru
+       z = 0;
+       while(z < words * map_bankwidth(map)) {
+               datum = map_word_load(map, buf);
++#ifdef CONFIG_AMAZON
++              map_write(map, datum, (adr + z) ^ 0x2);
++#else
+               map_write(map, datum, adr + z);
++#endif
+               z += map_bankwidth(map);
+               buf += map_bankwidth(map);