mtd: spi-nor: issi: is25wp256: Init flash based on SFDP
authorSudip Mukherjee <sudip.mukherjee@sifive.com>
Tue, 20 Sep 2022 18:48:07 +0000 (19:48 +0100)
committerTudor Ambarus <tudor.ambarus@microchip.com>
Tue, 22 Nov 2022 06:17:46 +0000 (08:17 +0200)
The datasheet of is25wp256 says it supports SFDP. Get rid of the static
initialization of the flash parameters and init them when parsing SFDP.

Testing showed the flash using SPINOR_OP_READ_1_1_4_4B 0x6c,
SPINOR_OP_PP_4B 0x12 and SPINOR_OP_BE_4K_4B 0x21 before enabling SFDP.
After this patch, it parses the SFDP information and still uses the
same opcodes.

Set sector_size and n_sectors to zero as they will be discovered when
parsing SFDP.

Signed-off-by: Sudip Mukherjee <sudip.mukherjee@sifive.com>
[tudor.ambarus@microchip.com: set sector_size and n_sectors to zero]
Signed-off-by: Tudor Ambarus <tudor.ambarus@microchip.com>
Link: https://lore.kernel.org/r/20220920184808.44876-1-sudip.mukherjee@sifive.com
drivers/mtd/spi-nor/issi.c

index 89a66a1..72dfd5f 100644 (file)
@@ -70,8 +70,8 @@ static const struct flash_info issi_nor_parts[] = {
                NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) },
        { "is25wp128",  INFO(0x9d7018, 0, 64 * 1024, 256)
                NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) },
-       { "is25wp256", INFO(0x9d7019, 0, 64 * 1024, 512)
-               NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ)
+       { "is25wp256", INFO(0x9d7019, 0, 0, 0)
+               PARSE_SFDP
                FIXUP_FLAGS(SPI_NOR_4B_OPCODES)
                .fixups = &is25lp256_fixups },