[PATCH v6 0/4] mtd: nand: omap: optimize chip->ecc.calculate() for H/W ECC schemes
Pekon Gupta
pekon at ti.com
Wed Feb 26 05:23:10 EST 2014
Changes v6->v7
rebased on http://lists.infradead.org/pipermail/linux-mtd/2014-February/052092.html
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.
Following is the summary of this patch series.
+----------------------+---------------------------+--------------------------+
| ecc-scheme | nand_chip->ecc.calculate | nand_chip->ecc.calculate |
| | (before this patch series)| (after this patch series)|
+----------------------+---------------------------+--------------------------+
| HAM1_ECC | omap_calculate_ecc() | omap_calculate_ecc() |
| BCH4_HW_DETECTION_SW | omap3_calculate_ecc_bch4()| omap_calculate_ecc_bch() |
| BCH4_HW | omap3_calculate_ecc_bch() | omap_calculate_ecc_bch() |
| BCH8_HW_DETECTION_SW | omap3_calculate_ecc_bch8()| omap_calculate_ecc_bch() |
| BCH8_HW | omap3_calculate_ecc_bch() | omap_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 | 186 +++++++++++++++--------------------------------
1 file changed, 59 insertions(+), 127 deletions(-)
--
1.8.5.1.163.gd7aced9
More information about the linux-mtd
mailing list