]> git.ipfire.org Git - thirdparty/u-boot.git/commit
mtd: rawnand: sunxi_spl: add support for H6/H616 nand controller
authorRichard Genoud <richard.genoud@bootlin.com>
Fri, 23 Jan 2026 11:44:58 +0000 (12:44 +0100)
committerMichael Trimarchi <michael@amarulasolutions.com>
Tue, 3 Feb 2026 20:45:18 +0000 (21:45 +0100)
commit7d1de98011519ebbb128f76f368724b62f3bc6eb
tree90b6c130a31afcb72a62527a08281abab2f9235b
parentf163da5e6d26904e5df509169ccc8cc91a0fb295
mtd: rawnand: sunxi_spl: add support for H6/H616 nand controller

Introduce H6/H616 NAND controller support for SPL

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.

For SPL, most of the work was setting the clocks, adding the new
capability structure for H616 and supporting the new USER_DATA_LEN
registers.

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

Signed-off-by: Richard Genoud <richard.genoud@bootlin.com>
Signed-off-by: Michael Trimarchi <michael@amarulasolutions.com>
board/sunxi/board.c
drivers/mtd/nand/raw/sunxi_nand_spl.c