• Josh Wu's avatar
    mtd: atmel_nand: enable Nand Flash Controller (NFC) read data via sram · 1ae9c092
    Josh Wu authored
    NFC has embedded sram which can use to transfer data. This patch enable reading
    nand flash via NFC SRAM. It will minimize the CPU overhead.
    
    This driver has been tested on SAMA5D3X-EK with JFFS2, YAFFS2, UBIFS and
    mtd-utils.
    
    Here puts the part of mtd_speedtest (read test) result as following:
    Compare with non-NFC mtd_speedtest result, reading will reduce %45 cpu load
    with increase %80 speed.
    
    - commands use to test:
      # insmod /mnt/mtd_speedtest.ko dev=2 &
      # top -n 30 -d 1 | grep speedtest
    
    - test result:
    =================================================
    mtd_speedtest: MTD device: 2
    mtd_speedtest: MTD device size 41943040, eraseblock size 131072, page size 2048, count of eraseblocks 320, pages per eraseblock 64, OOB size 64
    mtd_speedtest: testing eraseblock read speed
      509   495 root     D     1164   0%  28% insmod /mnt/mtd_speedtest.ko dev=2
      509   495 root     D     1164   0%  25% insmod /mnt/mtd_speedtest.ko dev=2
      509   495 root     D     1164   0%  26% insmod /mnt/mtd_speedtest.ko dev=2
    mtd_speedtest: eraseblock read speed is 9403 KiB/s
    mtd_speedtest: testing page read speed
      509   495 root     R     1164   0%  31% insmod /mnt/mtd_speedtest.ko dev=2
      509   495 root     D     1164   0%  57% insmod /mnt/mtd_speedtest.ko dev=2
      509   495 root     D     1164   0%  53% insmod /mnt/mtd_speedtest.ko dev=2
      509   495 root     D     1164   0%  71% insmod /mnt/mtd_speedtest.ko dev=2
    mtd_speedtest: page read speed is 9258 KiB/s
    Signed-off-by: default avatarJosh Wu <josh.wu@atmel.com>
    Acked-by: default avatarJean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
    Signed-off-by: default avatarArtem Bityutskiy <artem.bityutskiy@linux.intel.com>
    Signed-off-by: default avatarDavid Woodhouse <David.Woodhouse@intel.com>
    1ae9c092
atmel_nand.c 56.2 KB