u-boot-brain/drivers/mtd/nand
Daniel Mack c316f577b4 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>
2015-01-13 11:51:23 -05:00
..
am335x_spl_bch.c mtd: nand: am335x: Fix 'bit-flip' errors in SPL 2014-09-25 13:43:00 -05:00
atmel_nand_ecc.h mtd: atmel_nand: runtime to build gf table for pmecc 2014-11-17 08:47:18 -05:00
atmel_nand.c mtd: atmel_nand: runtime to build gf table for pmecc 2014-11-17 08:47:18 -05:00
bfin_nand.c mtd: resync with Linux-3.7.1 2013-05-31 17:12:03 -05:00
davinci_nand.c mtd: nand: davinci_nand: update write_page function for keystone RBL 2014-09-16 12:23:59 -04:00
denali_spl.c linux/kernel.h: sync min, max, min3, max3 macros with Linux 2014-11-23 06:48:30 -05:00
denali.c mtd: denali: set some registers after nand_scan_ident() 2014-11-26 19:53:22 -06:00
denali.h mtd: denali: use CONFIG_SYS_NAND_SELF_INIT 2014-11-26 19:53:19 -06:00
docg4_spl.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
docg4.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
fsl_elbc_nand.c driver/mtd: Use generic timer API for FSL IFC, eLBC 2014-09-25 08:36:17 -07:00
fsl_elbc_spl.c Coding Style cleanup: replace leading SPACEs by TABs 2013-10-14 16:06:54 -04:00
fsl_ifc_nand.c driver/mtd: Fix IFC compilation warnings 2014-12-11 09:42:32 -08:00
fsl_ifc_spl.c arm: ls102xa: Add NAND boot support for LS1021AQDS board 2014-12-11 09:40:24 -08:00
fsl_upm.c mtd, ubi, ubifs: resync with Linux-3.14 2014-08-25 19:25:55 -04:00
fsmc_nand.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
jz4740_nand.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
kb9202_nand.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
Kconfig mtd: denali: use CONFIG_SYS_NAND_SELF_INIT 2014-11-26 19:53:19 -06:00
kirkwood_nand.c arm: marvell: Move arch/kirkwood.h to arch/soc.h 2014-10-23 09:59:20 -04:00
kmeter1_nand.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
Makefile Merge remote-tracking branch 'u-boot-imx/master' 2014-10-08 21:20:49 +02:00
mpc5121_nfc.c mtd, ubi, ubifs: resync with Linux-3.14 2014-08-25 19:25:55 -04:00
mxc_nand_spl.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
mxc_nand.c mtd, ubi, ubifs: resync with Linux-3.14 2014-08-25 19:25:55 -04:00
mxc_nand.h Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
mxs_nand_spl.c spl: nand: add support for mxs nand 2014-06-06 10:07:25 +02:00
mxs_nand.c mtd: nand: mxs: Add ECC geometry for 2048b/112b NAND 2014-10-30 11:02:23 +01:00
nand_base.c mtd: nand: do not scan BBT after scrub 2015-01-09 12:19:06 -06:00
nand_bbt.c kbuild: force to define __UBOOT__ in all the C sources 2014-09-16 12:23:56 -04:00
nand_bch.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
nand_ecc.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
nand_ids.c kbuild: force to define __UBOOT__ in all the C sources 2014-09-16 12:23:56 -04:00
nand_plat.c mtd: nand_plat: add simple GPIO framework DEV_READY option 2010-07-08 16:52:12 -05:00
nand_spl_load.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
nand_spl_simple.c mtd: nand: force NAND_CMD_READID onto 8-bit bus 2014-06-06 17:46:03 -04:00
nand_util.c mtd: nand: do not scan BBT after scrub 2015-01-09 12:19:06 -06:00
nand.c nand: Introduce CONFIG_SYS_NAND_SELF_INIT 2012-01-26 16:09:06 -06:00
ndfc.c mtd, ubi, ubifs: resync with Linux-3.14 2014-08-25 19:25:55 -04:00
nomadik.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
omap_elm.c mtd: nand: omap: fix error-codes returned from omap-elm driver 2014-06-06 17:46:00 -04:00
omap_gpmc.c mtd: OMAP: Enable GPMC prefetch mode 2015-01-13 11:51:23 -05:00
s3c2410_nand.c mtd: nand: s3c: Unify the register definition and naming 2014-11-26 23:21:43 -06:00
tegra_nand.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
tegra_nand.h Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
vf610_nfc.c mtd/nand/vf610_nfc: Disable subpage writes 2014-11-26 19:53:49 -06:00