mtd: OMAP: Enable GPMC prefetch mode
authorDaniel Mack <zonque@gmail.com>
Wed, 25 Jun 2014 12:43:32 +0000 (14:43 +0200)
committerTom Rini <trini@ti.com>
Tue, 13 Jan 2015 16:51:23 +0000 (11:51 -0500)
commitc316f577b4b72d1a1aeb559e9b3fad20808f1ffd
tree9923bfbaeae9a43482ee6838dcb0cd31a7d36e6d
parent92fa7f53f1f3f03296f8ffb14bdf1baefab83368
mtd: OMAP: Enable GPMC prefetch mode

Enable GPMC's prefetch feature for NAND access. This speeds up NAND read
access a lot by pre-fetching contents in the background and reading them
through the FIFO address.

The current implementation has two limitations:

 a) it only works in 8-bit mode
 b) it only supports read access

Both is easily fixable by someone who has hardware to implement it.

Note that U-Boot code uses non word-aligned buffers to read data into, and
request read lengths that are not multiples of 4, so both partial buffers
(head and tail) have to be addressed.

Tested on AM335x hardware.

Tested-by: Guido Martínez <guido@vanguardiasur.com.ar>
Reviewed-by: Guido Martínez <guido@vanguardiasur.com.ar>
Signed-off-by: Daniel Mack <zonque@gmail.com>
[trini: Make apply again, use 'cs' fix pointed out by Guido]
Signed-off-by: Tom Rini <trini@ti.com>
doc/README.nand
drivers/mtd/nand/omap_gpmc.c
include/linux/mtd/omap_gpmc.h