Message ID | 1443561116-139851-1-git-send-email-computersforpeace@gmail.com |
---|---|
State | Accepted |
Commit | 48c25cf441182e629e52e7f9fa56c2019e75fb00 |
Headers | show |
On Tue, 29 Sep 2015 14:11:56 -0700 Brian Norris <computersforpeace@gmail.com> wrote: > Signed-off-by: Brian Norris <computersforpeace@gmail.com> > --- > I forgot about this feedback. How does this patch look? Just compile tested. Looks good to me, but I can't test it either :-). Reviewed-by: Boris Brezillon <boris.brezillon@free-electrons.com> > > drivers/mtd/nand/vf610_nfc.c | 14 +++----------- > 1 file changed, 3 insertions(+), 11 deletions(-) > > diff --git a/drivers/mtd/nand/vf610_nfc.c b/drivers/mtd/nand/vf610_nfc.c > index 42dad8e4b26f..598faf655f5b 100644 > --- a/drivers/mtd/nand/vf610_nfc.c > +++ b/drivers/mtd/nand/vf610_nfc.c > @@ -560,7 +560,6 @@ static inline int vf610_nfc_correct_data(struct mtd_info *mtd, uint8_t *dat, > u32 ecc_status_off = NFC_MAIN_AREA(0) + ECC_SRAM_ADDR + ECC_STATUS; > u8 ecc_status; > u8 ecc_count; > - int flips; > int flips_threshold = nfc->chip.ecc.strength / 2; > > ecc_status = vf610_nfc_read(nfc, ecc_status_off) & 0xff; > @@ -577,16 +576,9 @@ static inline int vf610_nfc_correct_data(struct mtd_info *mtd, uint8_t *dat, > * On an erased page, bit count (including OOB) should be zero or > * at least less then half of the ECC strength. > */ > - flips = count_written_bits(dat, nfc->chip.ecc.size, flips_threshold); > - flips += count_written_bits(oob, mtd->oobsize, flips_threshold); > - > - if (unlikely(flips > flips_threshold)) > - return -EINVAL; > - > - /* Erased page. */ > - memset(dat, 0xff, nfc->chip.ecc.size); > - memset(oob, 0xff, mtd->oobsize); > - return flips; > + return nand_check_erased_ecc_chunk(dat, nfc->chip.ecc.size, oob, > + mtd->oobsize, NULL, 0, > + flips_threshold); > } > > static int vf610_nfc_read_page(struct mtd_info *mtd, struct nand_chip *chip,
On Wed, Sep 30, 2015 at 06:52:46PM +0200, Boris Brezillon wrote: > On Tue, 29 Sep 2015 14:11:56 -0700 > Brian Norris <computersforpeace@gmail.com> wrote: > > > Signed-off-by: Brian Norris <computersforpeace@gmail.com> > > --- > > I forgot about this feedback. How does this patch look? Just compile tested. > > Looks good to me, but I can't test it either :-). > > Reviewed-by: Boris Brezillon <boris.brezillon@free-electrons.com> Seeing as this came up during review, and I see no objections... Applied to l2-mtd.git
On 2015-10-26 13:12, Brian Norris wrote: > On Wed, Sep 30, 2015 at 06:52:46PM +0200, Boris Brezillon wrote: >> On Tue, 29 Sep 2015 14:11:56 -0700 >> Brian Norris <computersforpeace@gmail.com> wrote: >> >> > Signed-off-by: Brian Norris <computersforpeace@gmail.com> >> > --- >> > I forgot about this feedback. How does this patch look? Just compile tested. >> >> Looks good to me, but I can't test it either :-). >> >> Reviewed-by: Boris Brezillon <boris.brezillon@free-electrons.com> > > Seeing as this came up during review, and I see no objections... > > Applied to l2-mtd.git Hi Brian, Yeah, sorry, I wanted test that patch but somehow slipped through. Compiled l2-mtd master with that patch applied for my board, looks good to me! Thx -- Stefan
diff --git a/drivers/mtd/nand/vf610_nfc.c b/drivers/mtd/nand/vf610_nfc.c index 42dad8e4b26f..598faf655f5b 100644 --- a/drivers/mtd/nand/vf610_nfc.c +++ b/drivers/mtd/nand/vf610_nfc.c @@ -560,7 +560,6 @@ static inline int vf610_nfc_correct_data(struct mtd_info *mtd, uint8_t *dat, u32 ecc_status_off = NFC_MAIN_AREA(0) + ECC_SRAM_ADDR + ECC_STATUS; u8 ecc_status; u8 ecc_count; - int flips; int flips_threshold = nfc->chip.ecc.strength / 2; ecc_status = vf610_nfc_read(nfc, ecc_status_off) & 0xff; @@ -577,16 +576,9 @@ static inline int vf610_nfc_correct_data(struct mtd_info *mtd, uint8_t *dat, * On an erased page, bit count (including OOB) should be zero or * at least less then half of the ECC strength. */ - flips = count_written_bits(dat, nfc->chip.ecc.size, flips_threshold); - flips += count_written_bits(oob, mtd->oobsize, flips_threshold); - - if (unlikely(flips > flips_threshold)) - return -EINVAL; - - /* Erased page. */ - memset(dat, 0xff, nfc->chip.ecc.size); - memset(oob, 0xff, mtd->oobsize); - return flips; + return nand_check_erased_ecc_chunk(dat, nfc->chip.ecc.size, oob, + mtd->oobsize, NULL, 0, + flips_threshold); } static int vf610_nfc_read_page(struct mtd_info *mtd, struct nand_chip *chip,
Signed-off-by: Brian Norris <computersforpeace@gmail.com> --- I forgot about this feedback. How does this patch look? Just compile tested. drivers/mtd/nand/vf610_nfc.c | 14 +++----------- 1 file changed, 3 insertions(+), 11 deletions(-)