diff mbox series

[v2,1/1] drivers: mtd: spi-nor: update read capabilities for w25q64 and s25fl064k

Message ID 20200529071655.739-1-rayagonda.kokatanur@broadcom.com
State Accepted
Delegated to: Ambarus Tudor
Headers show
Series [v2,1/1] drivers: mtd: spi-nor: update read capabilities for w25q64 and s25fl064k | expand

Commit Message

Rayagonda Kokatanur May 29, 2020, 7:16 a.m. UTC
Both w25q64 and s25fl064k nor flash support QUAD and DUAL read
command, hence update the same in flash_info table.

This is tested on Broadcom Stingray SoC (bcm958742t).

Signed-off-by: Rayagonda Kokatanur <rayagonda.kokatanur@broadcom.com>
---
Changes from v1:
 -Address review comments from Vignesh Raghavendra
  Update commit message with testing details.

 drivers/mtd/spi-nor/spansion.c | 3 ++-
 drivers/mtd/spi-nor/winbond.c  | 3 ++-
 2 files changed, 4 insertions(+), 2 deletions(-)

Comments

Tudor Ambarus July 1, 2020, 6:51 a.m. UTC | #1
On 5/29/20 10:16 AM, Rayagonda Kokatanur wrote:
> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
> 
> Both w25q64 and s25fl064k nor flash support QUAD and DUAL read
> command, hence update the same in flash_info table.
> 
> This is tested on Broadcom Stingray SoC (bcm958742t).
> 
> Signed-off-by: Rayagonda Kokatanur <rayagonda.kokatanur@broadcom.com>
> ---
> Changes from v1:
>  -Address review comments from Vignesh Raghavendra
>   Update commit message with testing details.
> 
>  drivers/mtd/spi-nor/spansion.c | 3 ++-
>  drivers/mtd/spi-nor/winbond.c  | 3 ++-
>  2 files changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/mtd/spi-nor/spansion.c b/drivers/mtd/spi-nor/spansion.c
> index 6756202ace4b..c91bbb8d9cd6 100644
> --- a/drivers/mtd/spi-nor/spansion.c
> +++ b/drivers/mtd/spi-nor/spansion.c
> @@ -52,7 +52,8 @@ static const struct flash_info spansion_parts[] = {
>                              SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) },
>         { "s25fl016k",  INFO(0xef4015,      0,  64 * 1024,  32,
>                              SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) },
> -       { "s25fl064k",  INFO(0xef4017,      0,  64 * 1024, 128, SECT_4K) },
> +       { "s25fl064k",  INFO(0xef4017,      0,  64 * 1024, 128,
> +                            SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) },
>         { "s25fl116k",  INFO(0x014015,      0,  64 * 1024,  32,
>                              SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) },
>         { "s25fl132k",  INFO(0x014016,      0,  64 * 1024,  64, SECT_4K) },
> diff --git a/drivers/mtd/spi-nor/winbond.c b/drivers/mtd/spi-nor/winbond.c
> index 17deabad57e1..2028cab3eff9 100644
> --- a/drivers/mtd/spi-nor/winbond.c
> +++ b/drivers/mtd/spi-nor/winbond.c
> @@ -39,7 +39,8 @@ static const struct flash_info winbond_parts[] = {
>                             SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ |
>                             SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB) },
>         { "w25x64", INFO(0xef3017, 0, 64 * 1024, 128, SECT_4K) },
> -       { "w25q64", INFO(0xef4017, 0, 64 * 1024, 128, SECT_4K) },
> +       { "w25q64", INFO(0xef4017, 0, 64 * 1024, 128,
> +                        SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) },

I checked the winbond website and from all the w25q64 flashes, W25Q64JV-IQ/JQ
and W25Q64FV share the 0xef4017 flash ID. Both support 0x3b and 0x6b commands,
which is fine.

I see that s25fl064k and w25q64 share the same flash ID. The search alg will
return the first hit, so s25fl064k even for the winbond parts. What is the
difference between s25fl064k and W25Q64JVQ/W25Q64FV?

Cheers,
ta
Rayagonda Kokatanur July 7, 2020, 6:03 a.m. UTC | #2
On Wed, Jul 1, 2020 at 12:21 PM <Tudor.Ambarus@microchip.com> wrote:
>
> On 5/29/20 10:16 AM, Rayagonda Kokatanur wrote:
> > EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
> >
> > Both w25q64 and s25fl064k nor flash support QUAD and DUAL read
> > command, hence update the same in flash_info table.
> >
> > This is tested on Broadcom Stingray SoC (bcm958742t).
> >
> > Signed-off-by: Rayagonda Kokatanur <rayagonda.kokatanur@broadcom.com>
> > ---
> > Changes from v1:
> >  -Address review comments from Vignesh Raghavendra
> >   Update commit message with testing details.
> >
> >  drivers/mtd/spi-nor/spansion.c | 3 ++-
> >  drivers/mtd/spi-nor/winbond.c  | 3 ++-
> >  2 files changed, 4 insertions(+), 2 deletions(-)
> >
> > diff --git a/drivers/mtd/spi-nor/spansion.c b/drivers/mtd/spi-nor/spansion.c
> > index 6756202ace4b..c91bbb8d9cd6 100644
> > --- a/drivers/mtd/spi-nor/spansion.c
> > +++ b/drivers/mtd/spi-nor/spansion.c
> > @@ -52,7 +52,8 @@ static const struct flash_info spansion_parts[] = {
> >                              SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) },
> >         { "s25fl016k",  INFO(0xef4015,      0,  64 * 1024,  32,
> >                              SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) },
> > -       { "s25fl064k",  INFO(0xef4017,      0,  64 * 1024, 128, SECT_4K) },
> > +       { "s25fl064k",  INFO(0xef4017,      0,  64 * 1024, 128,
> > +                            SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) },
> >         { "s25fl116k",  INFO(0x014015,      0,  64 * 1024,  32,
> >                              SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) },
> >         { "s25fl132k",  INFO(0x014016,      0,  64 * 1024,  64, SECT_4K) },
> > diff --git a/drivers/mtd/spi-nor/winbond.c b/drivers/mtd/spi-nor/winbond.c
> > index 17deabad57e1..2028cab3eff9 100644
> > --- a/drivers/mtd/spi-nor/winbond.c
> > +++ b/drivers/mtd/spi-nor/winbond.c
> > @@ -39,7 +39,8 @@ static const struct flash_info winbond_parts[] = {
> >                             SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ |
> >                             SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB) },
> >         { "w25x64", INFO(0xef3017, 0, 64 * 1024, 128, SECT_4K) },
> > -       { "w25q64", INFO(0xef4017, 0, 64 * 1024, 128, SECT_4K) },
> > +       { "w25q64", INFO(0xef4017, 0, 64 * 1024, 128,
> > +                        SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) },
>
> I checked the winbond website and from all the w25q64 flashes, W25Q64JV-IQ/JQ
> and W25Q64FV share the 0xef4017 flash ID. Both support 0x3b and 0x6b commands,
> which is fine.
>
> I see that s25fl064k and w25q64 share the same flash ID. The search alg will
> return the first hit, so s25fl064k even for the winbond parts. What is the
> difference between s25fl064k and W25Q64JVQ/W25Q64FV?

I think both are from different vendor.
Please refer link for more info -
https://lore.kernel.org/patchwork/patch/628090/

Best regards,
Rayagonda

>
> Cheers,
> ta
Tudor Ambarus July 27, 2020, 12:33 p.m. UTC | #3
On Fri, 29 May 2020 12:46:55 +0530, Rayagonda Kokatanur wrote:
> Both w25q64 and s25fl064k nor flash support QUAD and DUAL read
> command, hence update the same in flash_info table.
> 
> This is tested on Broadcom Stingray SoC (bcm958742t).

Applied to spi-nor/next, thanks!

[1/1] mtd: spi-nor: update read capabilities for w25q64 and s25fl064k
      https://git.kernel.org/mtd/c/99eae48fd4c5

Best regards,
diff mbox series

Patch

diff --git a/drivers/mtd/spi-nor/spansion.c b/drivers/mtd/spi-nor/spansion.c
index 6756202ace4b..c91bbb8d9cd6 100644
--- a/drivers/mtd/spi-nor/spansion.c
+++ b/drivers/mtd/spi-nor/spansion.c
@@ -52,7 +52,8 @@  static const struct flash_info spansion_parts[] = {
 			     SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) },
 	{ "s25fl016k",  INFO(0xef4015,      0,  64 * 1024,  32,
 			     SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) },
-	{ "s25fl064k",  INFO(0xef4017,      0,  64 * 1024, 128, SECT_4K) },
+	{ "s25fl064k",  INFO(0xef4017,      0,  64 * 1024, 128,
+			     SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) },
 	{ "s25fl116k",  INFO(0x014015,      0,  64 * 1024,  32,
 			     SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) },
 	{ "s25fl132k",  INFO(0x014016,      0,  64 * 1024,  64, SECT_4K) },
diff --git a/drivers/mtd/spi-nor/winbond.c b/drivers/mtd/spi-nor/winbond.c
index 17deabad57e1..2028cab3eff9 100644
--- a/drivers/mtd/spi-nor/winbond.c
+++ b/drivers/mtd/spi-nor/winbond.c
@@ -39,7 +39,8 @@  static const struct flash_info winbond_parts[] = {
 			    SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ |
 			    SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB) },
 	{ "w25x64", INFO(0xef3017, 0, 64 * 1024, 128, SECT_4K) },
-	{ "w25q64", INFO(0xef4017, 0, 64 * 1024, 128, SECT_4K) },
+	{ "w25q64", INFO(0xef4017, 0, 64 * 1024, 128,
+			 SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) },
 	{ "w25q64dw", INFO(0xef6017, 0, 64 * 1024, 128,
 			   SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ |
 			   SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB) },