[amazon] Extends workaround for swapping problem.
[openwrt.git] / target / linux / amazon / patches / 160-cfi-swap.patch
index f9305fd..03c26da 100644 (file)
@@ -1,7 +1,5 @@
-Index: linux-2.6.21.7/drivers/mtd/chips/cfi_cmdset_0002.c
-===================================================================
---- linux-2.6.21.7.orig/drivers/mtd/chips/cfi_cmdset_0002.c
-+++ linux-2.6.21.7/drivers/mtd/chips/cfi_cmdset_0002.c
+--- 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;
@@ -13,3 +11,15 @@ Index: linux-2.6.21.7/drivers/mtd/chips/cfi_cmdset_0002.c
        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);