]> git.baikalelectronics.ru Git - kernel.git/commit
mtd: rawnand: arasan: Support the hardware BCH ECC engine
authorMiquel Raynal <miquel.raynal@bootlin.com>
Tue, 19 May 2020 07:45:49 +0000 (09:45 +0200)
committerMiquel Raynal <miquel.raynal@bootlin.com>
Tue, 26 May 2020 19:37:25 +0000 (21:37 +0200)
commit724a00e6a287493d32d45a01347cd94b9a93a6a2
tree8b858e248bc883e44e0e0e97ca93ed0e93b6b5f9
parentffe6d4213b23ff5e86636a8bbc8598ba849cd7a4
mtd: rawnand: arasan: Support the hardware BCH ECC engine

Add support for the hardware ECC BCH engine.

Please mind that this engine has an important limitation:
BCH implementation does not inform the user when an uncorrectable ECC
error occurs. To workaround this, we avoid using the hardware engine
in the read path and do the computation with the software BCH
implementation, which is faster than mixing hardware (for correction)
and software (for verification).

Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Link: https://lore.kernel.org/linux-mtd/20200519074549.23673-9-miquel.raynal@bootlin.com
drivers/mtd/nand/raw/Kconfig
drivers/mtd/nand/raw/arasan-nand-controller.c