All of lore.kernel.org
 help / color / mirror / Atom feed
From: Felix Fietkau <nbd@openwrt.org>
To: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>
Cc: "linux-mtd@lists.infradead.org" <linux-mtd@lists.infradead.org>,
	Brian Norris <computersforpeace@gmail.com>
Subject: Re: [PATCH] Revert "mtd: spi-nor: disable protection for Winbond flash at startup"
Date: Sat, 28 Nov 2015 23:12:38 +0100	[thread overview]
Message-ID: <565A26D6.5090504@openwrt.org> (raw)
In-Reply-To: <CAAEAJfDk=21tvXRMtpgckct9pKjUkmWJ9hPDikgt88sxhpvQ6A@mail.gmail.com>

On 2015-11-28 22:56, Ezequiel Garcia wrote:
> On 26 November 2015 at 13:27, Felix Fietkau <nbd@openwrt.org> wrote:
>> 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>
>> ---
>>  drivers/mtd/spi-nor/spi-nor.c | 7 +++----
>>  1 file changed, 3 insertions(+), 4 deletions(-)
>>
>> diff --git a/drivers/mtd/spi-nor/spi-nor.c b/drivers/mtd/spi-nor/spi-nor.c
>> index 4988390..8b8842e 100644
>> --- 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, const char *name, enum read_mode mode)
>>         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);
>>         }
> 
> As Brian mentioned, this looks definitely fishy.
> 
> IIUC, the above statement is trying to unlock flashes that power-up as
> locked. But you say your flash is still locked after booting? And
> moreover, removing the unlock quirk fixes it?
The flash isn't locked when the system boots, reads and writes work just
fine.

> I think a more complete description of your problem might help us fix
> this the right way. Perhaps the above line clearing the status
> register is wrong?
Without the write_enable/write_sr, the flash is readable and writable.
With it, any reads return only null-bytes as data. What other info about
the problem do you need?

I think it probably works just fine for Winbond flashes, but
unfortunately this also affects some Spansion flash chips with IDs that
start with 0xef (SNOR_MFR_WINBOND).

- Felix

  reply	other threads:[~2015-11-28 22:13 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-11-26 16:27 [PATCH] Revert "mtd: spi-nor: disable protection for Winbond flash at startup" Felix Fietkau
2015-11-27 22:27 ` Brian Norris
2015-11-28  8:59   ` Felix Fietkau
2015-12-08  2:43     ` Brian Norris
2015-11-28 21:56 ` Ezequiel Garcia
2015-11-28 22:12   ` Felix Fietkau [this message]
2015-11-30 14:50     ` Ezequiel Garcia
2015-11-30 17:11       ` Felix Fietkau
2015-12-08  2:49 ` 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=565A26D6.5090504@openwrt.org \
    --to=nbd@openwrt.org \
    --cc=computersforpeace@gmail.com \
    --cc=ezequiel@vanguardiasur.com.ar \
    --cc=linux-mtd@lists.infradead.org \
    /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.