On Tue, 2019-05-07 at 10:25:39 UTC, Xiaolei Li wrote: > Currently, we expand RE# low level time by choosing the max value > between RE# pulse width and RE# access time, and sample data at the > rising edge of RE#. > > Then, if RE# access time is bigger than RE# pulse width, the real > read cycle time may be more than NAND SPEC required. This makes > read performance be worse than that expected. > > This patch improves data sampling timing by calculating RE# low level > time according to RE# pulse width. If RE# access time is bigger than > RE# pulse width, then delay sampling data timing. > > The result of contrast test base on MT2712 evaluat board is as follow. > > nand: Micron MT29F16G08ADBCAH4 > nand: 2048 MiB, SLC, erase size: 256 KiB, page size: 4096, OOB size: 224 > NFI 2x clock rate: 124800000 HZ. > > Read speed without this patch: > mtd_speedtest: page read speed is 14012 KiB/s > mtd_speedtest: 2 page read speed is 14860 KiB/s > > Read speed with this patch: > mtd_speedtest: page read speed is 18724 KiB/s > mtd_speedtest: 2 page read speed is 18713 KiB/s > > Signed-off-by: Xiaolei Li <xiaolei.li@xxxxxxxxxxxx> > Reviewed-by: Miquel Raynal <miquel.raynal@xxxxxxxxxxx> Applied to https://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux.git nand/next, thanks. Miquel ______________________________________________________ Linux MTD discussion mailing list http://lists.infradead.org/mailman/listinfo/linux-mtd/