aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGabor Juhos <juhosg@openwrt.org>2010-01-13 06:52:12 +0000
committerGabor Juhos <juhosg@openwrt.org>2010-01-13 06:52:12 +0000
commit7c1b3086d4ed043fb46dd0a0ca30ec7df56a9818 (patch)
tree94ae1c29e814303f52138609f6b23ba06717af17
parent8b84a711d8dab50385490394a946ac9936515d92 (diff)
downloadupstream-7c1b3086d4ed043fb46dd0a0ca30ec7df56a9818.tar.gz
upstream-7c1b3086d4ed043fb46dd0a0ca30ec7df56a9818.tar.bz2
upstream-7c1b3086d4ed043fb46dd0a0ca30ec7df56a9818.zip
ar71xx: fix 320S33B flash chip support
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@19114 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rw-r--r--target/linux/ar71xx/patches-2.6.30/106-mtd_m25p80_add_xxxs33b_support.patch15
-rw-r--r--target/linux/ar71xx/patches-2.6.30/109-mtd-wrt160nl-trx-parser.patch2
-rw-r--r--target/linux/ar71xx/patches-2.6.31/106-mtd_m25p80_add_xxxs33b_support.patch15
-rw-r--r--target/linux/ar71xx/patches-2.6.31/109-mtd-wrt160nl-trx-parser.patch2
-rw-r--r--target/linux/ar71xx/patches-2.6.32/106-mtd_m25p80_add_xxxs33b_support.patch15
-rw-r--r--target/linux/ar71xx/patches-2.6.32/109-mtd-wrt160nl-trx-parser.patch2
6 files changed, 48 insertions, 3 deletions
diff --git a/target/linux/ar71xx/patches-2.6.30/106-mtd_m25p80_add_xxxs33b_support.patch b/target/linux/ar71xx/patches-2.6.30/106-mtd_m25p80_add_xxxs33b_support.patch
index 68f17596fe..5bd20a7692 100644
--- a/target/linux/ar71xx/patches-2.6.30/106-mtd_m25p80_add_xxxs33b_support.patch
+++ b/target/linux/ar71xx/patches-2.6.30/106-mtd_m25p80_add_xxxs33b_support.patch
@@ -12,3 +12,18 @@
/* PMC -- pm25x "blocks" are 32K, sectors are 4K */
{ "pm25lv512", 0, 32 * 1024, 2, SECT_4K },
{ "pm25lv010", 0, 32 * 1024, 4, SECT_4K },
+@@ -656,11 +661,12 @@ static int __devinit m25p_probe(struct s
+ dev_set_drvdata(&spi->dev, flash);
+
+ /*
+- * Atmel serial flash tend to power up
++ * Atmel and Intel/Numonyx serial flash tend to power up
+ * with the software protection bits set
+ */
+
+- if (info->jedec_id >> 16 == 0x1f) {
++ if (info->jedec_id >> 16 == 0x1f ||
++ info->jedec_id >> 16 == 0x89) {
+ write_enable(flash);
+ write_sr(flash, 0);
+ }
diff --git a/target/linux/ar71xx/patches-2.6.30/109-mtd-wrt160nl-trx-parser.patch b/target/linux/ar71xx/patches-2.6.30/109-mtd-wrt160nl-trx-parser.patch
index 749c1d70dc..5696d39651 100644
--- a/target/linux/ar71xx/patches-2.6.30/109-mtd-wrt160nl-trx-parser.patch
+++ b/target/linux/ar71xx/patches-2.6.30/109-mtd-wrt160nl-trx-parser.patch
@@ -1,6 +1,6 @@
--- a/drivers/mtd/devices/m25p80.c
+++ b/drivers/mtd/devices/m25p80.c
-@@ -751,6 +751,16 @@ static int __devinit m25p_probe(struct s
+@@ -752,6 +752,16 @@ static int __devinit m25p_probe(struct s
part_probes, &parts, 0);
}
#endif
diff --git a/target/linux/ar71xx/patches-2.6.31/106-mtd_m25p80_add_xxxs33b_support.patch b/target/linux/ar71xx/patches-2.6.31/106-mtd_m25p80_add_xxxs33b_support.patch
index e4e01637d6..dfd855a499 100644
--- a/target/linux/ar71xx/patches-2.6.31/106-mtd_m25p80_add_xxxs33b_support.patch
+++ b/target/linux/ar71xx/patches-2.6.31/106-mtd_m25p80_add_xxxs33b_support.patch
@@ -12,3 +12,18 @@
/* PMC -- pm25x "blocks" are 32K, sectors are 4K */
{ "pm25lv512", 0, 32 * 1024, 2, SECT_4K },
{ "pm25lv010", 0, 32 * 1024, 4, SECT_4K },
+@@ -660,11 +665,12 @@ static int __devinit m25p_probe(struct s
+ dev_set_drvdata(&spi->dev, flash);
+
+ /*
+- * Atmel serial flash tend to power up
++ * Atmel and Intel/Numonyx serial flash tend to power up
+ * with the software protection bits set
+ */
+
+- if (info->jedec_id >> 16 == 0x1f) {
++ if (info->jedec_id >> 16 == 0x1f ||
++ info->jedec_id >> 16 == 0x89) {
+ write_enable(flash);
+ write_sr(flash, 0);
+ }
diff --git a/target/linux/ar71xx/patches-2.6.31/109-mtd-wrt160nl-trx-parser.patch b/target/linux/ar71xx/patches-2.6.31/109-mtd-wrt160nl-trx-parser.patch
index 4ab53a48d0..ccf4b66b60 100644
--- a/target/linux/ar71xx/patches-2.6.31/109-mtd-wrt160nl-trx-parser.patch
+++ b/target/linux/ar71xx/patches-2.6.31/109-mtd-wrt160nl-trx-parser.patch
@@ -1,6 +1,6 @@
--- a/drivers/mtd/devices/m25p80.c
+++ b/drivers/mtd/devices/m25p80.c
-@@ -755,6 +755,16 @@ static int __devinit m25p_probe(struct s
+@@ -756,6 +756,16 @@ static int __devinit m25p_probe(struct s
part_probes, &parts, 0);
}
#endif
diff --git a/target/linux/ar71xx/patches-2.6.32/106-mtd_m25p80_add_xxxs33b_support.patch b/target/linux/ar71xx/patches-2.6.32/106-mtd_m25p80_add_xxxs33b_support.patch
index 01be5dbb4e..8f1a842beb 100644
--- a/target/linux/ar71xx/patches-2.6.32/106-mtd_m25p80_add_xxxs33b_support.patch
+++ b/target/linux/ar71xx/patches-2.6.32/106-mtd_m25p80_add_xxxs33b_support.patch
@@ -12,3 +12,18 @@
/* PMC -- pm25x "blocks" are 32K, sectors are 4K */
{ "pm25lv512", 0, 32 * 1024, 2, SECT_4K },
{ "pm25lv010", 0, 32 * 1024, 4, SECT_4K },
+@@ -789,11 +794,12 @@ static int __devinit m25p_probe(struct s
+ dev_set_drvdata(&spi->dev, flash);
+
+ /*
+- * Atmel serial flash tend to power up
++ * Atmel and Intel/Numonyx serial flash tend to power up
+ * with the software protection bits set
+ */
+
+- if (info->jedec_id >> 16 == 0x1f) {
++ if (info->jedec_id >> 16 == 0x1f ||
++ info->jedec_id >> 16 == 0x89) {
+ write_enable(flash);
+ write_sr(flash, 0);
+ }
diff --git a/target/linux/ar71xx/patches-2.6.32/109-mtd-wrt160nl-trx-parser.patch b/target/linux/ar71xx/patches-2.6.32/109-mtd-wrt160nl-trx-parser.patch
index 4136db8e9a..b4eab674a9 100644
--- a/target/linux/ar71xx/patches-2.6.32/109-mtd-wrt160nl-trx-parser.patch
+++ b/target/linux/ar71xx/patches-2.6.32/109-mtd-wrt160nl-trx-parser.patch
@@ -1,6 +1,6 @@
--- a/drivers/mtd/devices/m25p80.c
+++ b/drivers/mtd/devices/m25p80.c
-@@ -889,6 +889,16 @@ static int __devinit m25p_probe(struct s
+@@ -890,6 +890,16 @@ static int __devinit m25p_probe(struct s
part_probes, &parts, 0);
}
#endif