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)
commit88ffef1b65cf989b2dfea6374caff804fca6ec32
tree8b858e248bc883e44e0e0e97ca93ed0e93b6b5f9
parent197b88fecc50ee3c7a22415db81eae0b9126f20e
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