2024-06-10 07:49:10

by Michael Walle

[permalink] [raw]
Subject: [PATCH] mtd: spi-nor: winbond: fix w25q128 regression

Commit 83e824a4a595 ("mtd: spi-nor: Correct flags for Winbond w25q128")
removed the flags for non-SFDP devices. It was assumed that it wasn't in
use anymore. This turned out to be wrong. Add the no_sfdp_flags as
well as the size again.

Reported-by: e9hack <[email protected]>
Fixes: 83e824a4a595 ("mtd: spi-nor: Correct flags for Winbond w25q128")
Signed-off-by: Michael Walle <[email protected]>
---
Hartmut, Linus, could you please test it on your boards? Also, do
you have a real name we should put in the Reported-by tag?

This will also need a manual backport to the stable kernels due to
the new syntax. But that should be straight forward.
---
drivers/mtd/spi-nor/winbond.c | 2 ++
1 file changed, 2 insertions(+)

diff --git a/drivers/mtd/spi-nor/winbond.c b/drivers/mtd/spi-nor/winbond.c
index ca67bf2c46c3..6b6dec6f8faf 100644
--- a/drivers/mtd/spi-nor/winbond.c
+++ b/drivers/mtd/spi-nor/winbond.c
@@ -105,7 +105,9 @@ static const struct flash_info winbond_nor_parts[] = {
}, {
.id = SNOR_ID(0xef, 0x40, 0x18),
.name = "w25q128",
+ .size = SZ_16M,
.flags = SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB,
+ .no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ,
}, {
.id = SNOR_ID(0xef, 0x40, 0x19),
.name = "w25q256",
--
2.39.2



2024-06-10 18:11:12

by e9hack

[permalink] [raw]
Subject: Re: [PATCH] mtd: spi-nor: winbond: fix w25q128 regression

Am 10.06.2024 um 09:48 schrieb Michael Walle:
> Commit 83e824a4a595 ("mtd: spi-nor: Correct flags for Winbond w25q128")
> removed the flags for non-SFDP devices. It was assumed that it wasn't in
> use anymore. This turned out to be wrong. Add the no_sfdp_flags as
> well as the size again.
>
> Reported-by: e9hack <[email protected]>

Reported-by: Hartmut Birr <[email protected]>

> Fixes: 83e824a4a595 ("mtd: spi-nor: Correct flags for Winbond w25q128")
> Signed-off-by: Michael Walle <[email protected]>
> ---
> Hartmut, Linus, could you please test it on your boards? Also, do
> you have a real name we should put in the Reported-by tag?

I cannot test it. I'm using OpenWRT on both routers. OpenWRT uses linux 6.6.32. The differences are to big.

Regards,
Hartmut

>
> This will also need a manual backport to the stable kernels due to
> the new syntax. But that should be straight forward.
> ---
> drivers/mtd/spi-nor/winbond.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/drivers/mtd/spi-nor/winbond.c b/drivers/mtd/spi-nor/winbond.c
> index ca67bf2c46c3..6b6dec6f8faf 100644
> --- a/drivers/mtd/spi-nor/winbond.c
> +++ b/drivers/mtd/spi-nor/winbond.c
> @@ -105,7 +105,9 @@ static const struct flash_info winbond_nor_parts[] = {
> }, {
> .id = SNOR_ID(0xef, 0x40, 0x18),
> .name = "w25q128",
> + .size = SZ_16M,
> .flags = SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB,
> + .no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ,
> }, {
> .id = SNOR_ID(0xef, 0x40, 0x19),
> .name = "w25q256",