[PATCH v5 13/17] mtd: rawnand: txx9ndfmc: clarify ECC parameters assignation

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, 25 Jul 2018 15:31:48 +0200
Miquel Raynal <miquel.raynal at bootlin.com> wrote:

> A comment in the probe declares that values are assigned to ecc.size
> and ecc.bytes, but these values will be overwritten. This is not
> entirely right as they are overwritten only if
> mtd->writesize >= 512. Let's clarify this by moving these assignations
> to txx9ndfmc_nand_scan().
> 
> Signed-off-by: Miquel Raynal <miquel.raynal at bootlin.com>

Reviewed-by: Boris Brezillon <boris.brezillon at bootlin.com>

> ---
>  drivers/mtd/nand/raw/txx9ndfmc.c | 8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/mtd/nand/raw/txx9ndfmc.c b/drivers/mtd/nand/raw/txx9ndfmc.c
> index 9019022774f7..9808b18b15e2 100644
> --- a/drivers/mtd/nand/raw/txx9ndfmc.c
> +++ b/drivers/mtd/nand/raw/txx9ndfmc.c
> @@ -262,10 +262,13 @@ static int txx9ndfmc_nand_scan(struct mtd_info *mtd)
>  	ret = nand_scan_ident(mtd, 1, NULL);
>  	if (!ret) {
>  		if (mtd->writesize >= 512) {
> -			/* Hardware ECC 6 byte ECC per 512 Byte data */
>  			chip->ecc.size = 512;
>  			chip->ecc.bytes = 6;
> +		} else {
> +			chip->ecc.size = 256;
> +			chip->ecc.bytes = 3;
>  		}
> +
>  		ret = nand_scan_tail(mtd);
>  	}
>  	return ret;
> @@ -332,9 +335,6 @@ static int __init txx9ndfmc_probe(struct platform_device *dev)
>  		chip->ecc.correct = txx9ndfmc_correct_data;
>  		chip->ecc.hwctl = txx9ndfmc_enable_hwecc;
>  		chip->ecc.mode = NAND_ECC_HW;
> -		/* txx9ndfmc_nand_scan will overwrite ecc.size and ecc.bytes */
> -		chip->ecc.size = 256;
> -		chip->ecc.bytes = 3;
>  		chip->ecc.strength = 1;
>  		chip->chip_delay = 100;
>  		chip->controller = &drvdata->controller;




[Index of Archives]     [LARTC]     [Bugtraq]     [Yosemite Forum]     [Photo]

  Powered by Linux