Staging
v0.5.1
swh:1:snp:a902887e4be9191b7c6c4406aa06b31c1ce2c7cc
Raw File
Tip revision: 6efb943b8616ec53a5e444193dccf1af9ad627b5 authored by Linus Torvalds on 09 May 2021, 21:17:44 UTC
Linux 5.13-rc1
Tip revision: 6efb943
Kconfig
# 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.

endmenu

endmenu
back to top