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

Brian Norris computersforpeace at gmail.com
Thu Mar 20 06:35:32 EDT 2014


On Wed, Feb 26, 2014 at 03:53:10PM +0530, Pekon Gupta wrote:
> 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() |
>  +----------------------+---------------------------+--------------------------+

Pushed to l2-mtd.git. Thanks!

Brian



More information about the linux-mtd mailing list