[PATCH] mtd: eLBC NAND: remove bogus ECC read-back
Scott Wood
scottwood at freescale.com
Tue Jul 5 16:15:25 EDT 2011
On Tue, 5 Jul 2011 15:59:57 -0400
"Matthew L. Creech" <mlcreech at gmail.com> wrote:
> From: Mike Hench <mhench at elutions.com>
>
> The eLBC NAND driver currently follows up each program/write operation with a
> read-back of the page, in order to [ostensibly] fill in ECC data for the
> caller. However, the page address used for this read is always -1, so the read
> will never work correctly. Remove this useless (and potentially problematic)
> block of code.
>
> Signed-off-by: Matthew L. Creech <mlcreech at gmail.com>
> ---
> drivers/mtd/nand/fsl_elbc_nand.c | 17 -----------------
> 1 files changed, 0 insertions(+), 17 deletions(-)
>
> diff --git a/drivers/mtd/nand/fsl_elbc_nand.c b/drivers/mtd/nand/fsl_elbc_nand.c
> index 0bb254c..050a2fc 100644
> --- a/drivers/mtd/nand/fsl_elbc_nand.c
> +++ b/drivers/mtd/nand/fsl_elbc_nand.c
> @@ -455,23 +455,6 @@ static void fsl_elbc_cmdfunc(struct mtd_info *mtd, unsigned int command,
>
> fsl_elbc_run_command(mtd);
>
> - /* Read back the page in order to fill in the ECC for the
> - * caller. Is this really needed?
> - */
> - if (full_page && elbc_fcm_ctrl->oob_poi) {
> - out_be32(&lbc->fbcr, 3);
> - set_addr(mtd, 6, page_addr, 1);
> -
> - elbc_fcm_ctrl->read_bytes = mtd->writesize + 9;
> -
> - fsl_elbc_do_read(chip, 1);
> - fsl_elbc_run_command(mtd);
> -
> - memcpy_fromio(elbc_fcm_ctrl->oob_poi + 6,
> - &elbc_fcm_ctrl->addr[elbc_fcm_ctrl->index], 3);
> - elbc_fcm_ctrl->index += 3;
> - }
> -
> elbc_fcm_ctrl->oob_poi = NULL;
> return;
> }
All references to elbc_fcm_ctrl->oob_poi (not chip->oob_poi) can be removed
now.
-Scott
More information about the linux-mtd
mailing list