mbox series

[v2,0/5] MTK NAND driver improvements and fixes

Message ID 20190430100250.28083-1-xiaolei.li@mediatek.com (mailing list archive)
Headers show
Series MTK NAND driver improvements and fixes | expand

Message

xiaolei li April 30, 2019, 10:02 a.m. UTC
The following patch set mainly contains:
* Fix low level time calculation of read/write cycle to meet tRC_min
  and tWC_min requirements.
* Refine RE# pulse width calculation and data sampling to improve read
  performance.
* Add CS validity check.
* Fix oob buffer pointer wrongly setting and empty page threshold setting.

Changes on v2 relative to:
--------------------

tree    : git://git.infradead.org/linux-mtd.git
branch  : master
commit  :
        'commit 3e35730dd754 ("mtd: powernv_flash: Fix device
         registration error")

Patch v2:
---------
- Fix type
- Reference correct faulty patch
- Refine code to do calculation and condition in separate steps
- Fix empty threshold calculation

Tests:
------

* ubifs and jffs2 are validated on NAND device MT29F16G08ADBCA by
  'dd' command.
* all drivers/mtd/tests/* pass.
* speed test:
  eraseblock write speed is 11087 KiB/s
  eraseblock read speed is 19986 KiB/s
  page write speed is 10689 KiB/s
  page read speed is 18724 KiB/s
  2 page write speed is 10611 KiB/s
  2 page read speed is 18713 KiB/s
  erase speed is 103696 KiB/s
  2x multi-block erase speed is 354248 KiB/s
  4x multi-block erase speed is 350459 KiB/s
  8x multi-block erase speed is 356173 KiB/s
  16x multi-block erase speed is 356173 KiB/s
  32x multi-block erase speed is 358120 KiB/s
  64x multi-block erase speed is 356173 KiB/s

Xiaolei Li (5):
  mtd: rawnand: mtk: Correct low level time calculation of r/w cycle
  mtd: rawnand: mtk: Improve data sampling timing for read cycle
  mtd: rawnand: mtk: Add validity check for CE# pin setting
  mtd: rawnand: mtk: Fix wrongly assigned OOB buffer pointer issue
  mtd: rawnand: mtk: Setup empty page threshold correctly

 drivers/mtd/nand/raw/mtk_nand.c | 93 ++++++++++++++++++++++++++++-----
 1 file changed, 79 insertions(+), 14 deletions(-)

Comments

Miquel Raynal April 30, 2019, 12:08 p.m. UTC | #1
Hi Xiaolei,

Xiaolei Li <xiaolei.li@mediatek.com> wrote on Tue, 30 Apr 2019 18:02:45
+0800:

> The following patch set mainly contains:
> * Fix low level time calculation of read/write cycle to meet tRC_min
>   and tWC_min requirements.
> * Refine RE# pulse width calculation and data sampling to improve read
>   performance.
> * Add CS validity check.
> * Fix oob buffer pointer wrongly setting and empty page threshold setting.
> 
> Changes on v2 relative to:
> --------------------
> 
> tree    : git://git.infradead.org/linux-mtd.git
> branch  : master

We just switched to a repository hosted on kernel.org:
https://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux.git/
nand/next is the branch for this kind of series.

Thanks,
Miquèl
xiaolei li May 5, 2019, 7:08 a.m. UTC | #2
Hi Miquel,

On Tue, 2019-04-30 at 14:08 +0200, Miquel Raynal wrote:
> Hi Xiaolei,
> 
> Xiaolei Li <xiaolei.li@mediatek.com> wrote on Tue, 30 Apr 2019 18:02:45
> +0800:
> 
> > The following patch set mainly contains:
> > * Fix low level time calculation of read/write cycle to meet tRC_min
> >   and tWC_min requirements.
> > * Refine RE# pulse width calculation and data sampling to improve read
> >   performance.
> > * Add CS validity check.
> > * Fix oob buffer pointer wrongly setting and empty page threshold setting.
> > 
> > Changes on v2 relative to:
> > --------------------
> > 
> > tree    : git://git.infradead.org/linux-mtd.git
> > branch  : master
> 
> We just switched to a repository hosted on kernel.org:
> https://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux.git/
> nand/next is the branch for this kind of series.
OK. Good.
Thanks for your sharing.
> 
> Thanks,
> Miquèl

Thanks,
Xiaolei