1 # SPDX-License-Identifier: GPL-2.0-only
8 source "drivers/mtd/nand/onenand/Kconfig"
9 source "drivers/mtd/nand/raw/Kconfig"
10 source "drivers/mtd/nand/spi/Kconfig"
12 menu "ECC engine support"
18 config MTD_NAND_ECC_SW_HAMMING
19 bool "Software Hamming ECC engine"
20 default y if MTD_RAW_NAND
23 This enables support for software Hamming error
24 correction. This correction can correct up to 1 bit error
25 per chunk and detect up to 2 bit errors. While it used to be
26 widely used with old parts, newer NAND chips usually require
27 more strength correction and in this case BCH or RS will be
30 config MTD_NAND_ECC_SW_HAMMING_SMC
31 bool "NAND ECC Smart Media byte order"
32 depends on MTD_NAND_ECC_SW_HAMMING
35 Software ECC according to the Smart Media Specification.
36 The original Linux implementation had byte 0 and 1 swapped.
38 config MTD_NAND_ECC_SW_BCH
39 bool "Software BCH ECC engine"
44 This enables support for software BCH error correction. Binary BCH
45 codes are more powerful and cpu intensive than traditional Hamming
46 ECC codes. They are used with NAND devices requiring more than 1 bit