mtd: nand: omap: unbreak BCH8 support
We now tell the NAND layer that we have subpages with 512 bytes each. This means the calculate_ecc / correct hooks are also called for each subpage which means we cannot iterate over subpages in the calculate_ecc callback. Implement this correctly by removing the loop over subpages in the calculate_ecc callback and by implementing a read_page callback. With this the bch8_hw and bch8_hw_romcode were tested on AM335x, OMAP4 and AM3517. Number of bitflips is correctly reported as tested with the nand_bitflip tool. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de> With fix from Teresa: Using BCH rom code mode we start calculating with GPMC_BCH_RESULTx_1. Fix offset for correct error correction. Signed-off-by: Teresa Remmet <t.remmet@phytec.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de> |
---|
|
drivers/mtd/nand/nand_omap_gpmc.c |
---|