[U-Boot] [PATCH v9 0/4] mtd: nand: omap: optimize OMAP NAND driver

Pekon Gupta pekon at ti.com
Tue Nov 19 06:32:14 CET 2013


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 <jacmet at 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



More information about the U-Boot mailing list