2019-05-19 12:07:45 +00:00
|
|
|
# SPDX-License-Identifier: GPL-2.0-only
|
2020-05-29 00:25:07 +00:00
|
|
|
|
|
|
|
menu "NAND"
|
|
|
|
|
2018-02-05 22:02:05 +00:00
|
|
|
config MTD_NAND_CORE
|
|
|
|
tristate
|
|
|
|
|
2018-02-18 16:05:16 +00:00
|
|
|
source "drivers/mtd/nand/onenand/Kconfig"
|
2018-02-05 22:02:04 +00:00
|
|
|
source "drivers/mtd/nand/raw/Kconfig"
|
2018-06-22 12:28:23 +00:00
|
|
|
source "drivers/mtd/nand/spi/Kconfig"
|
2020-05-29 00:25:07 +00:00
|
|
|
|
2020-08-27 08:51:56 +00:00
|
|
|
menu "ECC engine support"
|
|
|
|
|
|
|
|
config MTD_NAND_ECC
|
|
|
|
bool
|
2020-11-13 12:39:45 +00:00
|
|
|
select MTD_NAND_CORE
|
2020-08-27 08:51:56 +00:00
|
|
|
|
2020-09-29 23:01:15 +00:00
|
|
|
config MTD_NAND_ECC_SW_HAMMING
|
2020-09-29 23:01:22 +00:00
|
|
|
bool "Software Hamming ECC engine"
|
|
|
|
default y if MTD_RAW_NAND
|
|
|
|
select MTD_NAND_ECC
|
|
|
|
help
|
|
|
|
This enables support for software Hamming error
|
|
|
|
correction. This correction can correct up to 1 bit error
|
|
|
|
per chunk and detect up to 2 bit errors. While it used to be
|
|
|
|
widely used with old parts, newer NAND chips usually require
|
|
|
|
more strength correction and in this case BCH or RS will be
|
|
|
|
preferred.
|
2020-09-29 23:01:15 +00:00
|
|
|
|
|
|
|
config MTD_NAND_ECC_SW_HAMMING_SMC
|
|
|
|
bool "NAND ECC Smart Media byte order"
|
|
|
|
depends on MTD_NAND_ECC_SW_HAMMING
|
|
|
|
default n
|
|
|
|
help
|
|
|
|
Software ECC according to the Smart Media Specification.
|
|
|
|
The original Linux implementation had byte 0 and 1 swapped.
|
|
|
|
|
2020-09-29 23:01:06 +00:00
|
|
|
config MTD_NAND_ECC_SW_BCH
|
|
|
|
bool "Software BCH ECC engine"
|
|
|
|
select BCH
|
|
|
|
select MTD_NAND_ECC
|
|
|
|
default n
|
|
|
|
help
|
|
|
|
This enables support for software BCH error correction. Binary BCH
|
|
|
|
codes are more powerful and cpu intensive than traditional Hamming
|
|
|
|
ECC codes. They are used with NAND devices requiring more than 1 bit
|
|
|
|
of error correction.
|
|
|
|
|
2021-12-16 11:16:40 +00:00
|
|
|
config MTD_NAND_ECC_MXIC
|
|
|
|
bool "Macronix external hardware ECC engine"
|
2022-03-14 15:23:36 +00:00
|
|
|
depends on HAS_IOMEM
|
2021-12-16 11:16:40 +00:00
|
|
|
select MTD_NAND_ECC
|
|
|
|
help
|
|
|
|
This enables support for the hardware ECC engine from Macronix.
|
|
|
|
|
2022-04-24 03:25:23 +00:00
|
|
|
config MTD_NAND_ECC_MEDIATEK
|
|
|
|
tristate "Mediatek hardware ECC engine"
|
|
|
|
depends on HAS_IOMEM
|
2022-05-09 13:50:02 +00:00
|
|
|
depends on ARCH_MEDIATEK || COMPILE_TEST
|
2022-04-24 03:25:23 +00:00
|
|
|
select MTD_NAND_ECC
|
|
|
|
help
|
|
|
|
This enables support for the hardware ECC engine from Mediatek.
|
|
|
|
|
2020-08-27 08:51:56 +00:00
|
|
|
endmenu
|
|
|
|
|
2020-05-29 00:25:07 +00:00
|
|
|
endmenu
|