[RFC PATCH v3 0/3] mtd: nand: vf610_nfc: make use of ->exec_op()

Stefan Agner stefan at agner.ch
Thu Feb 8 15:59:18 PST 2018

Third revision of the rework patchset to use exec_op for NXP
Vybrid (and others) NAND Flash Controller.

I now avoided calling back into the stack for the ECC read/
write pages. This increases speed 4469 KiB/s write speed and
13490 KiB/s read speed (v2 was 3495 KiB/s/13490 KiB/s).

IMHO it start to look better, probably still needs some fine
tuning. What I don't like too much is that the custom
read/write page accessors dupplicate some code, maybe this
could be done somewhat nicer.


Changes in v3:
- Separate exec_op() callback addition and removal of old callbacks
- Push data into regs in one function
- Readd op parser
- Implement custom read/write page for hardware ECC
- Rely on generic ecc.write_page_raw
- Use nand_read_oob_op instead of nand_read_page_op

Stefan Agner (3):
  mtd: nand: vf610_nfc: remove unused function
  mtd: nand: vf610_nfc: make use of ->exec_op()
  mtd: nand: vf610_nfc: remove old hooks

 drivers/mtd/nand/vf610_nfc.c | 493 +++++++++++++++++++++----------------------
 1 file changed, 239 insertions(+), 254 deletions(-)


More information about the linux-mtd mailing list