mirror of
https://xff.cz/git/u-boot/
synced 2025-10-18 08:23:24 +02:00
mtd: nand: omap: enable BCH ECC scheme using ELM for generic platform
BCH8_ECC scheme implemented in omap_gpmc.c driver has following favours +-----------------------------------+-----------------+-----------------+ |ECC Scheme | ECC Calculation | Error Detection | +-----------------------------------+-----------------+-----------------+ |OMAP_ECC_BCH8_CODE_HW |GPMC |ELM H/W engine | |OMAP_ECC_BCH8_CODE_HW_DETECTION_SW |GPMC |S/W BCH library | +-----------------------------------+-----------------+-----------------+ Current implementation limits the BCH8_CODE_HW only for AM33xx device family. (using CONFIG_AM33XX). However, other SoC families (like TI81xx) also have ELM hardware module, and can support ECC error detection using ELM. This patch - removes CONFIG_AM33xx Thus this driver can be reused by all devices having ELM h/w engine. - adds omap_select_ecc_scheme() A common function to handle ecc-scheme related configurations. This can be used both during device-probe and via user-space u-boot commads to change ecc-scheme. During device probe ecc-scheme is selected based on CONFIG_NAND_OMAP_ELM or CONFIG_NAND_OMAP_BCH8 - enables CONFIG_BCH S/W library (lib/bch.c) required by OMAP_ECC_BCHx_CODE_HW_DETECTION_SW is enabled by CONFIG_BCH. - enables CONFIG_SYS_NAND_ONFI_DETECTION for auto-detection of ONFI compliant NAND devices - updates following README doc doc/README.nand board/ti/am335x/README doc/README.omap3 Signed-off-by: Pekon Gupta <pekon@ti.com> [scottwood@freescale.com: fixed unused variable warning] Signed-off-by: Scott Wood <scottwood@freescale.com>
This commit is contained in:
@@ -180,6 +180,17 @@ Configuration Options:
|
||||
flexibility, so that one day we can eliminate the old mechanism.
|
||||
|
||||
|
||||
CONFIG_SYS_NAND_ONFI_DETECTION
|
||||
Enables detection of ONFI compliant devices during probe.
|
||||
And fetching device parameters flashed on device, by parsing
|
||||
ONFI parameter page.
|
||||
|
||||
CONFIG_BCH
|
||||
Enables software based BCH ECC algorithm present in lib/bch.c
|
||||
This is used by SoC platforms which do not have built-in ELM
|
||||
hardware engine required for BCH ECC correction.
|
||||
|
||||
|
||||
Platform specific options
|
||||
=========================
|
||||
CONFIG_NAND_OMAP_GPMC
|
||||
|
Reference in New Issue
Block a user