]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
mtd: spi-nor: winbond: fix w25q128 regression
authorMichael Walle <mwalle@kernel.org>
Fri, 21 Jun 2024 12:09:29 +0000 (14:09 +0200)
committerPratyush Yadav <pratyush@kernel.org>
Fri, 21 Jun 2024 15:49:36 +0000 (17:49 +0200)
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 wasn't true. Add the no_sfdp_flags as well as the size
again.

We add the additional flags for dual and quad read because they have
been reported to work properly by Hartmut using both older and newer
versions of this flash, the similar flashes with 64Mbit and 256Mbit
already have these flags and because it will (luckily) trigger our
legacy SFDP parsing, so newer versions with SFDP support will still get
the parameters from the SFDP tables.

Reported-by: Hartmut Birr <e9hack@gmail.com>
Closes: https://lore.kernel.org/r/CALxbwRo_-9CaJmt7r7ELgu+vOcgk=xZcGHobnKf=oT2=u4d4aA@mail.gmail.com/
Fixes: 83e824a4a595 ("mtd: spi-nor: Correct flags for Winbond w25q128")
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Michael Walle <mwalle@kernel.org>
Acked-by: Tudor Ambarus <tudor.ambarus@linaro.org>
Reviewed-by: Esben Haabendal <esben@geanix.com>
Reviewed-by: Pratyush Yadav <pratyush@kernel.org>
Signed-off-by: Pratyush Yadav <pratyush@kernel.org>
Link: https://lore.kernel.org/r/20240621120929.2670185-1-mwalle@kernel.org
drivers/mtd/spi-nor/winbond.c

index 142fb27b2ea9a35da4a2eb74868df9a6b39d34fa..e065e4fd42a33dc953a4a8650b6b39552e6390b5 100644 (file)
@@ -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",