[PATCH v5 0/4] mtd: nand: omap: optimize chip->ecc.calculate() for H/W ECC schemes

Pekon Gupta pekon at ti.com
Tue Jan 7 08:45:42 EST 2014


This patch series is split version of earlier patch:
http://lists.infradead.org/pipermail/linux-mtd/2013-November/050240.html

chip->ecc.calculate() is used for calculating and fetching of ECC syndrome by
processing the data passed during Read/Write accesses.
Though all H/W ECC schemes in OMAP NAND use GPMC controller for ECC calculation
But each of them implements its own callback to process and fetch ECC syndrome.

This patch tries to merge common code for different BCHx_ECC schemes into single
omap_calculate_ecc_bch(). This imporves scalability for future ecc-schemes.
 +----------------------+----------------------------+
 | ecc-scheme           | nand_chip->ecc.calculate   |
 +----------------------+----------------------------+
 | HAM1_ECC             | omap_calculate_ecc()       |
 | BCH4_HW_DETECTION_SW | omap3_calculate_ecc_bch4() |
 | BCH4_HW              | omap3_calculate_ecc_bch()  |
 | BCH8_HW_DETECTION_SW | omap3_calculate_ecc_bch8() |
 | BCH8_HW              | omap3_calculate_ecc_bch()  |
 +----------------------+----------------------------+


Pekon Gupta (4):
  mtd: nand: omap: ecc.calculate: rename omap3_calculate_ecc_bch to
    omap_calculate_ecc_bch
  mtd: nand: omap: ecc.calculate: refactor omap_calculate_ecc_bch for
    BCHx_HW ecc-scheme
  mtd: nand: omap: ecc.calculate: merge omap3_calculate_ecc_bch4 in
    omap_calculate_ecc_bch
  mtd: nand: omap: ecc.calculate: merge omap3_calculate_ecc_bch8 in
    omap_calculate_ecc_bch

 drivers/mtd/nand/omap2.c | 187 +++++++++++++++--------------------------------
 1 file changed, 60 insertions(+), 127 deletions(-)

-- 
1.8.1




More information about the linux-mtd mailing list