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 <[email protected]>
---
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) },
{ "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) },
--
2.17.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 <[email protected]>
> ---
> 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
On Wed, Jul 1, 2020 at 12:21 PM <[email protected]> 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 <[email protected]>
> > ---
> > 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
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,
--
Tudor Ambarus <[email protected]>