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

Stefan Roese sr at denx.de
Wed Jan 8 03:08:31 EST 2014


On 07.01.2014 14:45, Pekon Gupta wrote:
> 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(-)

Thanks Pekon. This works just fine on our AM335x based board. So, for
the complete patch series:

Tested-by: Stefan Roese <sr at denx.de>

Thanks,
Stefan




More information about the linux-mtd mailing list