All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v6 0/5] spi: add support for Mediatek SPI-NAND controller
@ 2022-04-24  3:25 ` Chuanhong Guo
  0 siblings, 0 replies; 56+ messages in thread
From: Chuanhong Guo @ 2022-04-24  3:25 UTC (permalink / raw)
  To: linux-spi
  Cc: Chuanhong Guo, Mark Brown, Rob Herring, Krzysztof Kozlowski,
	Matthias Brugger, Miquel Raynal, Richard Weinberger,
	Vignesh Raghavendra, Roger Quadros, Thomas Bogendoerfer,
	Cai Huoqing, Florian Fainelli, Colin Ian King, Wolfram Sang,
	Paul Cercueil, Pratyush Yadav, Yu Kuai,
	open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS,
	moderated list:ARM/Mediatek SoC support,
	moderated list:ARM/Mediatek SoC support, open list,
	open list:NAND FLASH SUBSYSTEM

Mediatek has an extended version of their NAND Flash Interface which
has a SPI-NAND mode. In this mode, the controller can perform 1-bit
spi-mem ops for up-to 0xa0 bytes and typical SPI-NAND single, dual
and quad IO page cache ops with 2-byte address. Additionally, the
page cache ops can be performed with ECC and auto data formatting
using the ECC engine of the controller.

This patchset implements support of this mode as a separated SPI-MEM
driver with pipelined ECC engine.

Changes since v1:
 add a blank line between properties in dt binding doc
 rename ecc-engine to nand-ecc-engine for the generic properties
 fix warnings/errors from the CI

Changes since v2:
 use streamed DMA api to avoid an extra memory copy during read
 make ECC engine config a per-nand context
 take user-requested ECC strength into account

Change since v3:
 fix a missed ecc-engine rename in doc from v1

Changes since v4:
 fix typo: piplined -> pipelined
 fix missing OOB write in snfi driver
 print page format with dev_dbg instead
 replace uint*_t copied from vendor driver with u*

Changes since v5:
 add missing nfi mode register configuration in probe
 fix an off-by-one bug in mtk_snand_mac_io

Chuanhong Guo (5):
  mtd: nand: make mtk_ecc.c a separated module
  spi: add driver for MTK SPI NAND Flash Interface
  mtd: nand: mtk-ecc: also parse nand-ecc-engine if available
  spi: dt-bindings: add binding doc for spi-mtk-snfi
  arm64: dts: mediatek: add mtk-snfi for mt7622

 .../bindings/spi/mediatek,spi-mtk-snfi.yaml   |   88 +
 arch/arm64/boot/dts/mediatek/mt7622.dtsi      |   12 +
 drivers/mtd/nand/Kconfig                      |    7 +
 drivers/mtd/nand/Makefile                     |    1 +
 drivers/mtd/nand/{raw/mtk_ecc.c => ecc-mtk.c} |    8 +-
 drivers/mtd/nand/raw/Kconfig                  |    1 +
 drivers/mtd/nand/raw/Makefile                 |    2 +-
 drivers/mtd/nand/raw/mtk_nand.c               |    2 +-
 drivers/spi/Kconfig                           |   10 +
 drivers/spi/Makefile                          |    1 +
 drivers/spi/spi-mtk-snfi.c                    | 1470 +++++++++++++++++
 .../linux/mtd/nand-ecc-mtk.h                  |    0
 12 files changed, 1597 insertions(+), 5 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/spi/mediatek,spi-mtk-snfi.yaml
 rename drivers/mtd/nand/{raw/mtk_ecc.c => ecc-mtk.c} (98%)
 create mode 100644 drivers/spi/spi-mtk-snfi.c
 rename drivers/mtd/nand/raw/mtk_ecc.h => include/linux/mtd/nand-ecc-mtk.h (100%)

-- 
2.35.1


^ permalink raw reply	[flat|nested] 56+ messages in thread

end of thread, other threads:[~2022-04-29 14:08 UTC | newest]

Thread overview: 56+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-04-24  3:25 [PATCH v6 0/5] spi: add support for Mediatek SPI-NAND controller Chuanhong Guo
2022-04-24  3:25 ` Chuanhong Guo
2022-04-24  3:25 ` Chuanhong Guo
2022-04-24  3:25 ` Chuanhong Guo
2022-04-24  3:25 ` [PATCH v6 1/5] mtd: nand: make mtk_ecc.c a separated module Chuanhong Guo
2022-04-24  3:25   ` Chuanhong Guo
2022-04-24  3:25   ` Chuanhong Guo
2022-04-24  3:25   ` Chuanhong Guo
2022-04-24  3:25 ` [PATCH v6 2/5] spi: add driver for MTK SPI NAND Flash Interface Chuanhong Guo
2022-04-24  3:25   ` Chuanhong Guo
2022-04-24  3:25   ` Chuanhong Guo
2022-04-24  3:25   ` Chuanhong Guo
2022-04-24  3:25 ` [PATCH v6 3/5] mtd: nand: mtk-ecc: also parse nand-ecc-engine if available Chuanhong Guo
2022-04-24  3:25   ` Chuanhong Guo
2022-04-24  3:25   ` Chuanhong Guo
2022-04-24  3:25   ` Chuanhong Guo
2022-04-24  3:25 ` [PATCH v6 4/5] spi: dt-bindings: add binding doc for spi-mtk-snfi Chuanhong Guo
2022-04-24  3:25   ` Chuanhong Guo
2022-04-24  3:25   ` Chuanhong Guo
2022-04-24  3:25   ` Chuanhong Guo
2022-04-24  3:25 ` [PATCH v6 5/5] arm64: dts: mediatek: add mtk-snfi for mt7622 Chuanhong Guo
2022-04-24  3:25   ` Chuanhong Guo
2022-04-24  3:25   ` Chuanhong Guo
2022-04-24  3:25   ` Chuanhong Guo
2022-04-29 14:07   ` Matthias Brugger
2022-04-29 14:07     ` Matthias Brugger
2022-04-29 14:07     ` Matthias Brugger
2022-04-29 14:07     ` Matthias Brugger
2022-04-27  9:28 ` [PATCH v6 0/5] spi: add support for Mediatek SPI-NAND controller Miquel Raynal
2022-04-27  9:28   ` Miquel Raynal
2022-04-27  9:28   ` Miquel Raynal
2022-04-27  9:28   ` Miquel Raynal
2022-04-27 13:11   ` Mark Brown
2022-04-27 13:11     ` Mark Brown
2022-04-27 13:11     ` Mark Brown
2022-04-27 13:11     ` Mark Brown
2022-04-27 14:04   ` Chuanhong Guo
2022-04-27 14:04     ` Chuanhong Guo
2022-04-27 14:04     ` Chuanhong Guo
2022-04-27 14:04     ` Chuanhong Guo
2022-04-27 14:13     ` Mark Brown
2022-04-27 14:13       ` Mark Brown
2022-04-27 14:13       ` Mark Brown
2022-04-27 14:13       ` Mark Brown
2022-04-27 15:13       ` Miquel Raynal
2022-04-27 15:13         ` Miquel Raynal
2022-04-27 15:13         ` Miquel Raynal
2022-04-27 15:13         ` Miquel Raynal
2022-04-27 16:17       ` Miquel Raynal
2022-04-27 16:17         ` Miquel Raynal
2022-04-27 16:17         ` Miquel Raynal
2022-04-27 16:17         ` Miquel Raynal
2022-04-27 22:06 ` (subset) " Mark Brown
2022-04-27 22:06   ` Mark Brown
2022-04-27 22:06   ` Mark Brown
2022-04-27 22:06   ` Mark Brown

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.