diff options
author | Felix Fietkau <nbd@openwrt.org> | 2015-11-26 16:40:11 +0000 |
---|---|---|
committer | Felix Fietkau <nbd@openwrt.org> | 2015-11-26 16:40:11 +0000 |
commit | b44a27885ff6e18f7a2ac03f4bfbb5dd23fee0d4 (patch) | |
tree | 813c960d6f0fd6a3f2eb90847974f00b55a22522 | |
parent | 963fc89df2cf074bcf03e3010c7d36d12b2f4d34 (diff) | |
download | upstream-b44a27885ff6e18f7a2ac03f4bfbb5dd23fee0d4.tar.gz upstream-b44a27885ff6e18f7a2ac03f4bfbb5dd23fee0d4.tar.bz2 upstream-b44a27885ff6e18f7a2ac03f4bfbb5dd23fee0d4.zip |
kernel: revert a faulty upstream commit that was added with the spi-nor/m25p80 backport (fixes #20971)
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
SVN-Revision: 47664
4 files changed, 74 insertions, 4 deletions
diff --git a/target/linux/generic/patches-4.1/141-Revert-mtd-spi-nor-disable-protection-for-Winbond-fl.patch b/target/linux/generic/patches-4.1/141-Revert-mtd-spi-nor-disable-protection-for-Winbond-fl.patch new file mode 100644 index 0000000000..10b43d51bc --- /dev/null +++ b/target/linux/generic/patches-4.1/141-Revert-mtd-spi-nor-disable-protection-for-Winbond-fl.patch @@ -0,0 +1,35 @@ +From: Felix Fietkau <nbd@openwrt.org> +Date: Thu, 26 Nov 2015 17:03:46 +0100 +Subject: [PATCH] Revert "mtd: spi-nor: disable protection for Winbond flash at + startup" + +This reverts commit c6fc2171b249e73745c497b578b417a2946f1b2f. + +This commit is breaking read access on at least s25fl064k, but also +possibly other Spansion flash chips. + +Any mtd read seems to succeed, but simply returns a zero-filled buffer. + +Signed-off-by: Felix Fietkau <nbd@openwrt.org> +--- + +--- a/drivers/mtd/spi-nor/spi-nor.c ++++ b/drivers/mtd/spi-nor/spi-nor.c +@@ -1194,14 +1194,13 @@ int spi_nor_scan(struct spi_nor *nor, co + mutex_init(&nor->lock); + + /* +- * Atmel, SST, Intel/Numonyx, and others serial NOR tend to power up +- * with the software protection bits set ++ * Atmel, SST and Intel/Numonyx serial nor tend to power ++ * up with the software protection bits set + */ + + if (JEDEC_MFR(info) == SNOR_MFR_ATMEL || + JEDEC_MFR(info) == SNOR_MFR_INTEL || +- JEDEC_MFR(info) == SNOR_MFR_SST || +- JEDEC_MFR(info) == SNOR_MFR_WINBOND) { ++ JEDEC_MFR(info) == SNOR_MFR_SST) { + write_enable(nor); + write_sr(nor, 0); + } diff --git a/target/linux/generic/patches-4.1/465-m25p80-mx-disable-software-protection.patch b/target/linux/generic/patches-4.1/465-m25p80-mx-disable-software-protection.patch index dcf594bad1..e977e41a4b 100644 --- a/target/linux/generic/patches-4.1/465-m25p80-mx-disable-software-protection.patch +++ b/target/linux/generic/patches-4.1/465-m25p80-mx-disable-software-protection.patch @@ -9,6 +9,6 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org> if (JEDEC_MFR(info) == SNOR_MFR_ATMEL || JEDEC_MFR(info) == SNOR_MFR_INTEL || + JEDEC_MFR(info) == SNOR_MFR_MACRONIX || - JEDEC_MFR(info) == SNOR_MFR_SST || - JEDEC_MFR(info) == SNOR_MFR_WINBOND) { + JEDEC_MFR(info) == SNOR_MFR_SST) { write_enable(nor); + write_sr(nor, 0); diff --git a/target/linux/generic/patches-4.3/141-Revert-mtd-spi-nor-disable-protection-for-Winbond-fl.patch b/target/linux/generic/patches-4.3/141-Revert-mtd-spi-nor-disable-protection-for-Winbond-fl.patch new file mode 100644 index 0000000000..10b43d51bc --- /dev/null +++ b/target/linux/generic/patches-4.3/141-Revert-mtd-spi-nor-disable-protection-for-Winbond-fl.patch @@ -0,0 +1,35 @@ +From: Felix Fietkau <nbd@openwrt.org> +Date: Thu, 26 Nov 2015 17:03:46 +0100 +Subject: [PATCH] Revert "mtd: spi-nor: disable protection for Winbond flash at + startup" + +This reverts commit c6fc2171b249e73745c497b578b417a2946f1b2f. + +This commit is breaking read access on at least s25fl064k, but also +possibly other Spansion flash chips. + +Any mtd read seems to succeed, but simply returns a zero-filled buffer. + +Signed-off-by: Felix Fietkau <nbd@openwrt.org> +--- + +--- a/drivers/mtd/spi-nor/spi-nor.c ++++ b/drivers/mtd/spi-nor/spi-nor.c +@@ -1194,14 +1194,13 @@ int spi_nor_scan(struct spi_nor *nor, co + mutex_init(&nor->lock); + + /* +- * Atmel, SST, Intel/Numonyx, and others serial NOR tend to power up +- * with the software protection bits set ++ * Atmel, SST and Intel/Numonyx serial nor tend to power ++ * up with the software protection bits set + */ + + if (JEDEC_MFR(info) == SNOR_MFR_ATMEL || + JEDEC_MFR(info) == SNOR_MFR_INTEL || +- JEDEC_MFR(info) == SNOR_MFR_SST || +- JEDEC_MFR(info) == SNOR_MFR_WINBOND) { ++ JEDEC_MFR(info) == SNOR_MFR_SST) { + write_enable(nor); + write_sr(nor, 0); + } diff --git a/target/linux/generic/patches-4.3/465-m25p80-mx-disable-software-protection.patch b/target/linux/generic/patches-4.3/465-m25p80-mx-disable-software-protection.patch index dcf594bad1..e977e41a4b 100644 --- a/target/linux/generic/patches-4.3/465-m25p80-mx-disable-software-protection.patch +++ b/target/linux/generic/patches-4.3/465-m25p80-mx-disable-software-protection.patch @@ -9,6 +9,6 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org> if (JEDEC_MFR(info) == SNOR_MFR_ATMEL || JEDEC_MFR(info) == SNOR_MFR_INTEL || + JEDEC_MFR(info) == SNOR_MFR_MACRONIX || - JEDEC_MFR(info) == SNOR_MFR_SST || - JEDEC_MFR(info) == SNOR_MFR_WINBOND) { + JEDEC_MFR(info) == SNOR_MFR_SST) { write_enable(nor); + write_sr(nor, 0); |