[PATCH] Revert "mtd: spi-nor: disable protection for Winbond flash at startup"

Brian Norris computersforpeace at gmail.com
Fri Nov 27 17:27:01 EST 2015


Hi Felix,

On Thu, Nov 26, 2015 at 05:27:01PM +0100, Felix Fietkau wrote:
> This reverts commit c6fc2171b249e73745c497b578b417a2946f1b2f.
> 
> This commit is breaking read access on at least s25fl064k, but also
> possibly other Spansion flash chips.

This makes no sense. This patch is about Winbond flash, but you're
referencing Spansion flash in the commit subject. I suspect you have
either some more explaining, or some better investigation to do, because
I don't understand how the commit in question could be the problem for
you.

> Any mtd read seems to succeed, but simply returns a zero-filled buffer.

If this is the symptom you're looking at, I doubt you have the right
fix. Wild guess: something similar to this patch:

  http://patchwork.ozlabs.org/patch/547367/
  "mtd: spi-nor: wait until lock/unlock operations are ready"

Brian

> Signed-off-by: Felix Fietkau <nbd at 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);
>  	}
> -- 
> 2.2.2
> 



More information about the linux-mtd mailing list