2019-04-26 19:27:31

by Kamal Dasu

[permalink] [raw]
Subject: [PATCH] mtd: rawnand: brcmnand: fix bch ecc layout for large page nand

The oobregion->offset for large page nand parts was wrong, change
fixes this error in calculation.

Signed-off-by: Kamal Dasu <[email protected]>
---
drivers/mtd/nand/raw/brcmnand/brcmnand.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/mtd/nand/raw/brcmnand/brcmnand.c b/drivers/mtd/nand/raw/brcmnand/brcmnand.c
index 482c6f0..3eefea7 100644
--- a/drivers/mtd/nand/raw/brcmnand/brcmnand.c
+++ b/drivers/mtd/nand/raw/brcmnand/brcmnand.c
@@ -939,7 +939,7 @@ static int brcmnand_bch_ooblayout_ecc(struct mtd_info *mtd, int section,
if (section >= sectors)
return -ERANGE;

- oobregion->offset = (section * (sas + 1)) - chip->ecc.bytes;
+ oobregion->offset = ((section + 1) * sas) - chip->ecc.bytes;
oobregion->length = chip->ecc.bytes;

return 0;
--
1.9.0.138.g2de3478


2019-05-01 18:36:28

by Florian Fainelli

[permalink] [raw]
Subject: Re: [PATCH] mtd: rawnand: brcmnand: fix bch ecc layout for large page nand

On 4/26/19 12:22 PM, Kamal Dasu wrote:
> The oobregion->offset for large page nand parts was wrong, change
> fixes this error in calculation.

Should this have a Fixes tag so this can be backported to stable trees
seemingly automatically? Thanks!

>
> Signed-off-by: Kamal Dasu <[email protected]>
> ---
> drivers/mtd/nand/raw/brcmnand/brcmnand.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/mtd/nand/raw/brcmnand/brcmnand.c b/drivers/mtd/nand/raw/brcmnand/brcmnand.c
> index 482c6f0..3eefea7 100644
> --- a/drivers/mtd/nand/raw/brcmnand/brcmnand.c
> +++ b/drivers/mtd/nand/raw/brcmnand/brcmnand.c
> @@ -939,7 +939,7 @@ static int brcmnand_bch_ooblayout_ecc(struct mtd_info *mtd, int section,
> if (section >= sectors)
> return -ERANGE;
>
> - oobregion->offset = (section * (sas + 1)) - chip->ecc.bytes;
> + oobregion->offset = ((section + 1) * sas) - chip->ecc.bytes;
> oobregion->length = chip->ecc.bytes;
>
> return 0;
>


--
Florian

2019-05-01 19:18:00

by Kamal Dasu

[permalink] [raw]
Subject: Re: [PATCH] mtd: rawnand: brcmnand: fix bch ecc layout for large page nand

On Wed, May 1, 2019 at 2:35 PM Florian Fainelli <[email protected]> wrote:
>
> On 4/26/19 12:22 PM, Kamal Dasu wrote:
> > The oobregion->offset for large page nand parts was wrong, change
> > fixes this error in calculation.
>
> Should this have a Fixes tag so this can be backported to stable trees
> seemingly automatically? Thanks!
>

The brcmnand files got moved, however should have the fixes tag, will
send V2 patch.

> >
> > Signed-off-by: Kamal Dasu <[email protected]>
> > ---
> > drivers/mtd/nand/raw/brcmnand/brcmnand.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/mtd/nand/raw/brcmnand/brcmnand.c b/drivers/mtd/nand/raw/brcmnand/brcmnand.c
> > index 482c6f0..3eefea7 100644
> > --- a/drivers/mtd/nand/raw/brcmnand/brcmnand.c
> > +++ b/drivers/mtd/nand/raw/brcmnand/brcmnand.c
> > @@ -939,7 +939,7 @@ static int brcmnand_bch_ooblayout_ecc(struct mtd_info *mtd, int section,
> > if (section >= sectors)
> > return -ERANGE;
> >
> > - oobregion->offset = (section * (sas + 1)) - chip->ecc.bytes;
> > + oobregion->offset = ((section + 1) * sas) - chip->ecc.bytes;
> > oobregion->length = chip->ecc.bytes;
> >
> > return 0;
> >
>
>
> --
> Florian