| # SPDX-License-Identifier: GPL-2.0-only | 
 |  | 
 | menu "NAND" | 
 |  | 
 | config MTD_NAND_CORE | 
 | 	tristate | 
 |  | 
 | source "drivers/mtd/nand/onenand/Kconfig" | 
 | source "drivers/mtd/nand/raw/Kconfig" | 
 | source "drivers/mtd/nand/spi/Kconfig" | 
 |  | 
 | menu "ECC engine support" | 
 |  | 
 | config MTD_NAND_ECC | 
 |        bool | 
 |        select MTD_NAND_CORE | 
 |  | 
 | config MTD_NAND_ECC_SW_HAMMING | 
 | 	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. | 
 |  | 
 | 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. | 
 |  | 
 | 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. | 
 |  | 
 | config MTD_NAND_ECC_MXIC | 
 | 	bool "Macronix external hardware ECC engine" | 
 | 	depends on HAS_IOMEM | 
 | 	select MTD_NAND_ECC | 
 | 	help | 
 | 	  This enables support for the hardware ECC engine from Macronix. | 
 |  | 
 | config MTD_NAND_ECC_MEDIATEK | 
 | 	tristate "Mediatek hardware ECC engine" | 
 | 	depends on HAS_IOMEM | 
 | 	depends on ARCH_MEDIATEK || COMPILE_TEST | 
 | 	select MTD_NAND_ECC | 
 | 	help | 
 | 	  This enables support for the hardware ECC engine from Mediatek. | 
 |  | 
 | endmenu | 
 |  | 
 | endmenu |