mtd: spi-nor: spansion: Enable JFFS2 write buffer for S25FS256T
authorTakahiro Kuwano <Takahiro.Kuwano@infineon.com>
Thu, 6 Apr 2023 06:17:46 +0000 (15:17 +0900)
committerTudor Ambarus <tudor.ambarus@linaro.org>
Sat, 8 Apr 2023 06:28:37 +0000 (09:28 +0300)
Infineon(Cypress) SEMPER NOR flash family has on-die ECC and its program
granularity is 16-byte ECC data unit size. JFFS2 supports write buffer
mode for ECC'd NOR flash. Provide a way to clear the MTD_BIT_WRITEABLE
flag in order to enable JFFS2 write buffer mode support. Drop the
comment as the same info is now specified in cypress_nor_ecc_init().

Fixes: 6afcc84080c4 ("mtd: spi-nor: spansion: Add support for Infineon S25FS256T")
Suggested-by: Tudor Ambarus <tudor.ambarus@linaro.org>
Signed-off-by: Takahiro Kuwano <Takahiro.Kuwano@infineon.com>
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/641bfb26c6e059915ae920117b7ec278df1a6f0a.1680760742.git.Takahiro.Kuwano@infineon.com
Signed-off-by: Tudor Ambarus <tudor.ambarus@linaro.org>
drivers/mtd/spi-nor/spansion.c

index 4d0cc10e3d8564c46127211f5a7fd9487ba5889c..ffeede78700d8d8ba46cf089f3ec6b2f36bcdf7d 100644 (file)
@@ -384,13 +384,7 @@ static void s25fs256t_post_sfdp_fixup(struct spi_nor *nor)
 
 static void s25fs256t_late_init(struct spi_nor *nor)
 {
-       /*
-        * Programming is supported only in 16-byte ECC data unit granularity.
-        * Byte-programming, bit-walking, or multiple program operations to the
-        * same ECC data unit without an erase are not allowed. See chapter
-        * 5.3.1 and 5.6 in the datasheet.
-        */
-       nor->params->writesize = 16;
+       cypress_nor_ecc_init(nor);
 }
 
 static struct spi_nor_fixups s25fs256t_fixups = {