From: Brian Norris <computersforpeace@gmail.com>
To: <linux-mtd@lists.infradead.org>
Cc: linux-kernel@vger.kernel.org,
"Brian Norris" <computersforpeace@gmail.com>,
"Daniel Kurtz" <djkurtz@chromium.org>,
"Marek Vasut" <marex@denx.de>,
"Bayi Cheng" <bayi.cheng@mediatek.com>,
"Rafał Miłecki" <zajec5@gmail.com>,
"Felix Fietkau" <nbd@openwrt.org>,
"Eddie Huang (黃智傑)" <eddie.huang@mediatek.com>,
"Milton Chiang (江明晏)" <Milton.Chiang@mediatek.com>
Subject: [PATCH for-4.4 1/2] mtd: spi-nor: fix Spansion regressions (aliased with Winbond)
Date: Tue, 15 Dec 2015 10:48:20 -0800 [thread overview]
Message-ID: <1450205301-32207-1-git-send-email-computersforpeace@gmail.com> (raw)
Spansion and Winbond have occasionally used the same manufacturer ID,
and they don't support the same features. Particularly, writing SR=0
seems to break read access for Spansion's s25fl064k. Unfortunately, we
don't currently have a way to differentiate these Spansion and Winbond
parts, so rather than regressing support for these Spansion flash, let's
drop the new Winbond lock/unlock support for now. We can try to address
Winbond support during the next release cycle.
Original discussion:
http://patchwork.ozlabs.org/patch/549173/
http://patchwork.ozlabs.org/patch/553683/
Fixes: 357ca38d4751 ("mtd: spi-nor: support lock/unlock/is_locked for Winbond")
Fixes: c6fc2171b249 ("mtd: spi-nor: disable protection for Winbond flash at startup")
Signed-off-by: Brian Norris <computersforpeace@gmail.com>
Reported-by: Felix Fietkau <nbd@openwrt.org>
Cc: Felix Fietkau <nbd@openwrt.org>
---
drivers/mtd/spi-nor/spi-nor.c | 6 ++----
include/linux/mtd/spi-nor.h | 2 +-
2 files changed, 3 insertions(+), 5 deletions(-)
diff --git a/drivers/mtd/spi-nor/spi-nor.c b/drivers/mtd/spi-nor/spi-nor.c
index 49883905a434..f5d59de1ee6e 100644
--- a/drivers/mtd/spi-nor/spi-nor.c
+++ b/drivers/mtd/spi-nor/spi-nor.c
@@ -1200,8 +1200,7 @@ int spi_nor_scan(struct spi_nor *nor, const char *name, enum read_mode mode)
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);
}
@@ -1217,8 +1216,7 @@ int spi_nor_scan(struct spi_nor *nor, const char *name, enum read_mode mode)
mtd->_read = spi_nor_read;
/* NOR protection support for STmicro/Micron chips and similar */
- if (JEDEC_MFR(info) == SNOR_MFR_MICRON ||
- JEDEC_MFR(info) == SNOR_MFR_WINBOND) {
+ if (JEDEC_MFR(info) == SNOR_MFR_MICRON) {
nor->flash_lock = stm_lock;
nor->flash_unlock = stm_unlock;
nor->flash_is_locked = stm_is_locked;
diff --git a/include/linux/mtd/spi-nor.h b/include/linux/mtd/spi-nor.h
index c8723b62c4cd..bc742dac7d3a 100644
--- a/include/linux/mtd/spi-nor.h
+++ b/include/linux/mtd/spi-nor.h
@@ -25,7 +25,7 @@
#define SNOR_MFR_MACRONIX CFI_MFR_MACRONIX
#define SNOR_MFR_SPANSION CFI_MFR_AMD
#define SNOR_MFR_SST CFI_MFR_SST
-#define SNOR_MFR_WINBOND 0xef
+#define SNOR_MFR_WINBOND 0xef /* Also used by some Spansion */
/*
* Note on opcode nomenclature: some opcodes have a format like
--
2.6.0.rc2.230.g3dd15c0
next reply other threads:[~2015-12-15 18:48 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-12-15 18:48 Brian Norris [this message]
2015-12-15 18:48 ` [PATCH for-4.4 2/2] mtd: spi-nor: fix stm_is_locked_sr() parameters Brian Norris
2016-01-05 2:30 ` Brian Norris
2016-01-05 2:29 ` [PATCH for-4.4 1/2] mtd: spi-nor: fix Spansion regressions (aliased with Winbond) Brian Norris
2016-01-06 0:02 ` Brian Norris
2016-01-06 0:03 ` Felix Fietkau
2016-01-06 2:07 ` bayi cheng
2016-03-26 18:57 ` Matthias Schiffer
2016-03-27 22:52 ` Matthias Schiffer
2016-03-28 20:56 ` Brian Norris
2016-03-29 19:14 ` Matthias Schiffer
2016-03-30 12:47 ` Cyrille Pitchen
2016-04-01 3:05 ` James Cameron
2016-04-01 20:27 ` Brian Norris
2016-04-04 15:33 ` Cyrille Pitchen
2016-04-26 5:54 ` Brian Norris
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1450205301-32207-1-git-send-email-computersforpeace@gmail.com \
--to=computersforpeace@gmail.com \
--cc=Milton.Chiang@mediatek.com \
--cc=bayi.cheng@mediatek.com \
--cc=djkurtz@chromium.org \
--cc=eddie.huang@mediatek.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mtd@lists.infradead.org \
--cc=marex@denx.de \
--cc=nbd@openwrt.org \
--cc=zajec5@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.