OMAP NAND drivers support various ecc-schemes like (HAM1, BCH4, BCH8..) And, each ecc-scheme usually has 2 implementations - HAM1_HW or BCHx_HW (using in-build h/w engine for all computation) - HAM1_SW or BCHx_HW_DETECTION_SW) (using software library for some computation)
This patch series is Part-2 (split) from earlier series, as mentioned below: http://lists.denx.de/pipermail/u-boot/2013-November/167270.html This series aims at following: - cleans-up redundant code, duplicate in different ecc-schemes - optimizes ecc calculation and correction paths - improves scalability and readability, for adding newer ecc-schemes in future. - updates following callbacks for different ecc-schmes: [PATCH 1/4] nand_chip->ecc.hwctl(): configures h/w controller before for Read/Write acccess [PATCH 2/4] nand_chip->ecc.calculate(): calculates and fetches ECC syndrome from h/w controller. [PATCH 3/4] nand_chip->ecc.correct(): detects and corrects ECC errors on read access [PATCH 4/4] update doc and README *changes in v9* - split from main series, rebased and forked independently *changes in v8* http://lists.denx.de/pipermail/u-boot/2013-October/164648.html - minor code clean-up *changes in v7* [PATCH 1/4] http://lists.denx.de/pipermail/u-boot/2013-September/163868.html - removed: re-configuration of gpmc.config1[dev_width] added in previous version of patch *changes in v6* http://lists.denx.de/pipermail/u-boot/2013-September/163099.html - cosmetic changes *changes in v5* [PATCH 1/4] http://lists.denx.de/pipermail/u-boot/2013-September/162105.html - fixed device-width in GPMC_CONFIG1_X to support x16 devices [PATCH 2/4] http://lists.denx.de/pipermail/u-boot/2013-September/162109.html - code clean-up for OMAP_ECC_BCH8_CODE_HW_DETECTION_SW mode [PATCH 3/4] http://lists.denx.de/pipermail/u-boot/2013-September/162110.html - fixed omap_correct_data_bch() for correcting bit-flips using ELM - code-cleanup + added omap_reverse_list() [PATCH 4/4] incorporated feedbacks from Peter Korsgaard <jac...@sunsite.dk> *changes in v4* http://lists.denx.de/pipermail/u-boot/2013-September/161861.html - minor clean-up *changes in v3* http://lists.denx.de/pipermail/u-boot/2013-August/161665.html - removed un-used defines from asm/omap_gpmc.h - removed omap_calculate_ecc_bch_sw() and omap_calculate_ecc() and merged their logic into omap_calculate_ecc_bch() - updated return error-code in-case of invalid conditions - (new) for board/ti/am335x/README *changes in v2* http://lists.denx.de/pipermail/u-boot/2013-August/160749.html - fixed board_nand_init() and omap_enable_hwecc() *original v1* http://lists.denx.de/pipermail/u-boot/2013-August/160218.html Pekon Gupta (4): mtd: nand: omap: optimize chip->ecc.hwctl() for H/W ECC schemes mtd: nand: omap: optimize chip->ecc.calculate() for H/W ECC schemes mtd: nand: omap: optimized chip->ecc.correct() for H/W ECC schemes board/ti/am335x/README: update for NAND boot arch/arm/include/asm/omap_gpmc.h | 7 - board/ti/am335x/README | 53 ++-- drivers/mtd/nand/omap_gpmc.c | 565 +++++++++++++-------------------------- 3 files changed, 217 insertions(+), 408 deletions(-) -- 1.8.1 _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot