mbox series

[v1,0/5] refactoring and fix for Meson NAND

Message ID 20230412061700.1492474-1-AVKrasnov@sberdevices.ru (mailing list archive)
Headers show
Series refactoring and fix for Meson NAND | expand

Message

Arseniy Krasnov April 12, 2023, 6:16 a.m. UTC
Hello,

this patchset adds one fix and several refactoring patches. First patch
is the most important - it fixes unstable behaviour of Meson driver, for
example random ECC errors during reads. I've tested this with mount/
unmount/read/write cases for JFFS2 and nanddump/nandwrite utlities on
AXG family (A113X SoC). Source of this update is old vendor's driver.

Other patches are refactoring and extra checks, not critical for this
driver's reliability.

Arseniy Krasnov (5):
  mtd: rawnand: meson: fix NAND access for read/write
  mtd: rawnand: meson: replace GENMASK() macro with define
  mtd: rawnand: meson: check buffer length
  mtd: rawnand: meson: clear OOB buffer before read
  mtd: rawnand: meson: remove unneeded bitwise OR with zeroes

 drivers/mtd/nand/raw/meson_nand.c | 147 ++++++++++++++++++++++++++----
 1 file changed, 127 insertions(+), 20 deletions(-)

Comments

Miquel Raynal April 12, 2023, 7:45 a.m. UTC | #1
Hi Arseniy,

AVKrasnov@sberdevices.ru wrote on Wed, 12 Apr 2023 09:16:54 +0300:

> Hello,
> 
> this patchset adds one fix and several refactoring patches. First patch
> is the most important - it fixes unstable behaviour of Meson driver, for
> example random ECC errors during reads. I've tested this with mount/
> unmount/read/write cases for JFFS2 and nanddump/nandwrite utlities on
> AXG family (A113X SoC). Source of this update is old vendor's driver.
> 
> Other patches are refactoring and extra checks, not critical for this
> driver's reliability.

Thanks for the series, minor comments inside, if you respin before the
end of the week I'll take this for the next merge window.

> 
> Arseniy Krasnov (5):
>   mtd: rawnand: meson: fix NAND access for read/write
>   mtd: rawnand: meson: replace GENMASK() macro with define
>   mtd: rawnand: meson: check buffer length
>   mtd: rawnand: meson: clear OOB buffer before read
>   mtd: rawnand: meson: remove unneeded bitwise OR with zeroes
> 
>  drivers/mtd/nand/raw/meson_nand.c | 147 ++++++++++++++++++++++++++----
>  1 file changed, 127 insertions(+), 20 deletions(-)
> 


Thanks,
Miquèl