diff options
author | pekon gupta <pekon@ti.com> | 2013-11-19 11:02:17 +0530 |
---|---|---|
committer | Scott Wood <scottwood@freescale.com> | 2014-03-03 20:09:03 -0600 |
commit | 6e562b1106ea6afc78752f50925e87e9dd14f8b4 (patch) | |
tree | 057186dc5fb6d74e9721ba9fbd3f13dd77ec4ba1 /board/st | |
parent | 71a7f95600eeea03100af66e2f11498048f32cfe (diff) | |
download | u-boot-imx-6e562b1106ea6afc78752f50925e87e9dd14f8b4.zip u-boot-imx-6e562b1106ea6afc78752f50925e87e9dd14f8b4.tar.gz u-boot-imx-6e562b1106ea6afc78752f50925e87e9dd14f8b4.tar.bz2 |
mtd: nand: omap: optimized chip->ecc.correct() for H/W ECC schemes
chip->ecc.correct() is used for detecting and correcting bit-flips during read
operations. In omap-nand driver it implemented as:
(a) omap_correct_data(): for h/w based ECC_HAM1 scheme
(b) omap_correct_data_bch() + CONFIG_NAND_OMAP_ECC_BCH8_CODE_HW_DETECTION_SW
for ECC_BCH8 scheme using GPMC and software lib/bch.c
(c) omap_correct_data_bch() + CONFIG_NAND_OMAP_ECC_BCH8_CODE_HW
for ECC_BCH8 scheme using GPMC and ELM
This patch updates (c)
- checks for calc_ecc[]==0x00 so that error_correction is not required for
known good pages.
- adds scalability for other ECC_BCHx scheme by merging following
omap_rotate_ecc_bch() + omap_fix_errors_bch() => omap_correct_data_bch()
- fixing logic for bit-flip correction based on error_loc[count]
Signed-off-by: Pekon Gupta <pekon@ti.com>
Diffstat (limited to 'board/st')
0 files changed, 0 insertions, 0 deletions