Up to now only software ecc is supported, but other engines can be add quite easily
Mikhail Kshevetskiy (7): mtd: spinand: Use the spi-mem dirmap API mtd: spinand: Add a NAND page I/O request type mtd: spinand: simulate behavior of linux's function spinand_wait() mtd: spinand: preparation for ecc engine adding mtd: nand: add initial ecc engine support mtd: spinand: sync supported flashes with linux-6.6 mtd: spinand: add Winbond W25N04KV flash support drivers/mtd/nand/Makefile | 2 +- drivers/mtd/nand/core.c | 130 +++++- drivers/mtd/nand/ecc.c | 150 ++++++ drivers/mtd/nand/spi/Makefile | 4 +- drivers/mtd/nand/spi/alliancememory.c | 155 +++++++ drivers/mtd/nand/spi/ato.c | 84 ++++ drivers/mtd/nand/spi/core.c | 641 +++++++++++++++++--------- drivers/mtd/nand/spi/esmt.c | 9 + drivers/mtd/nand/spi/gigadevice.c | 188 +++++++- drivers/mtd/nand/spi/macronix.c | 27 +- drivers/mtd/nand/spi/micron.c | 2 +- drivers/mtd/nand/spi/toshiba.c | 43 +- drivers/mtd/nand/spi/winbond.c | 19 +- include/linux/mtd/nand.h | 278 ++++++++++- include/linux/mtd/spinand.h | 46 +- include/spi-mem.h | 2 + 16 files changed, 1517 insertions(+), 263 deletions(-) create mode 100644 drivers/mtd/nand/ecc.c create mode 100644 drivers/mtd/nand/spi/alliancememory.c create mode 100644 drivers/mtd/nand/spi/ato.c -- 2.39.2