linux/drivers/mtd
Miquel Raynal 88ffef1b65 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
2020-05-26 21:37:25 +02:00
..
chips mtd: Convert fallthrough comments into statements 2020-03-30 10:14:54 +02:00
devices lib/bch: Allow easy bit swapping 2020-05-24 20:48:11 +02:00
hyperbus mtd: hyperbus: move direct mapping setup to AM654 HBMC driver 2020-03-03 10:13:11 +05:30
lpddr mtd: Convert fallthrough comments into statements 2020-03-30 10:14:54 +02:00
maps mtd: Convert fallthrough comments into statements 2020-03-30 10:14:54 +02:00
nand mtd: rawnand: arasan: Support the hardware BCH ECC engine 2020-05-26 21:37:25 +02:00
parsers mtd: cmdlinepart: Add an slc option to use SLC mode on a part 2020-05-11 09:51:42 +02:00
spi-nor mtd: spi-nor: Compile files in controllers/ directory 2020-04-09 22:00:13 +02:00
tests treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 326 2019-06-05 17:37:06 +02:00
ubi ubi: Relax the 'no MLC' rule and allow MLCs operating in SLC mode 2020-05-11 09:51:42 +02:00
ftl.c treewide: Use array_size() in vmalloc() 2018-06-12 16:19:22 -07:00
inftlcore.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
inftlmount.c mtd: fix spelling mistake "BlockMultiplerBits" -> "BlockMultiplierBits" 2020-03-11 14:49:30 +01:00
Kconfig mtd: parsers: Move CMDLINE parser 2019-09-15 23:50:50 +02:00
Makefile mtd: parsers: Move CMDLINE parser 2019-09-15 23:50:50 +02:00
mtd_blkdevs.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 102 2019-05-24 17:39:00 +02:00
mtdblock_ro.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 102 2019-05-24 17:39:00 +02:00
mtdblock.c mtd: Fix issue where write_cached_data() fails but write() still returns success 2020-03-24 23:02:30 +01:00
mtdchar.c mtd: implement proper partition handling 2020-03-11 14:49:30 +01:00
mtdconcat.c mtd: concat: Fix a comment referring to an unknown symbol 2020-01-27 17:45:31 +01:00
mtdcore.c mtd: Add support for emulated SLC mode on MLC NANDs 2020-05-11 09:51:41 +02:00
mtdcore.h mtd: Provide fs_context-aware mount_mtd() replacement 2019-09-05 14:34:23 -04:00
mtdoops.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 336 2019-06-05 17:37:07 +02:00
mtdpart.c mtd: Add support for emulated SLC mode on MLC NANDs 2020-05-11 09:51:41 +02:00
mtdsuper.c mtd: Kill mount_mtd() 2019-09-05 14:34:26 -04:00
mtdswap.c mtd: no need to check return value of debugfs_create functions 2019-11-14 10:57:38 +01:00
nftlcore.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
nftlmount.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
rfd_ftl.c treewide: Add SPDX license identifier for more missed files 2019-05-21 10:50:45 +02:00
sm_ftl.c mtd: sm_ftl: fix NULL pointer warning 2020-01-09 20:09:55 +01:00
sm_ftl.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
ssfdc.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00