]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
mtd: rawnand: sunxi: Add support for H616 nand controller
authorRichard Genoud <richard.genoud@bootlin.com>
Tue, 28 Oct 2025 07:35:08 +0000 (08:35 +0100)
committerMiquel Raynal <miquel.raynal@bootlin.com>
Tue, 28 Oct 2025 16:18:13 +0000 (17:18 +0100)
commit88fd4e4deae87fa66e0e00e2bf6a4c362d241215
tree05bf308888690a37f00fb0de8bcb158e8f96b285
parent5ddfbc68ec7ac92ff64d8420909b1258be3ca8a1
mtd: rawnand: sunxi: Add support for H616 nand controller

The H616 nand controller has the same base as A10/A23, with some
differences:
- mdma is based on chained buffers
- its ECC supports up to 80bit per 1024bytes
- some registers layouts are a bit different, mainly due do the stronger
  ECC.
- it uses USER_DATA_LEN registers along USER_DATA registers.
- it needs a specific clock for ECC and MBUS.

Introduce the basic support, with ECC and scrambling, but without
DMA/MDMA.

Tested on Whatsminer H616 board (with and without scrambling, ECC)

Signed-off-by: Richard Genoud <richard.genoud@bootlin.com>
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
drivers/mtd/nand/raw/sunxi_nand.c