ar71xx: fix 320S33B flash chip support
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@19114 3c298f89-4303-0410-b956-a3cf2f4a3e73master
parent
8b84a711d8
commit
7c1b3086d4
|
@ -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);
|
||||
}
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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);
|
||||
}
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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);
|
||||
}
|
||||
|
|
|
@ -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
|
||||
|
|
Loading…
Reference in New Issue