summaryrefslogtreecommitdiffstats
path: root/arch/arm/plat-omap
diff options
context:
space:
mode:
authorSukumar Ghorai2011-01-28 11:12:04 +0100
committerTony Lindgren2011-02-18 00:32:52 +0100
commit1b0b323c70cd5fdca967d89ed3a03dfebd84ada7 (patch)
tree224d603ee170f3f2b3f45214d9fe2ae4181e9a27 /arch/arm/plat-omap
parentomap3630: nand: fix device size to work in polled mode (diff)
downloadkernel-qcow2-linux-1b0b323c70cd5fdca967d89ed3a03dfebd84ada7.tar.gz
kernel-qcow2-linux-1b0b323c70cd5fdca967d89ed3a03dfebd84ada7.tar.xz
kernel-qcow2-linux-1b0b323c70cd5fdca967d89ed3a03dfebd84ada7.zip
omap3: nand: configurable transfer type per board
nand transfer type (sDMA, Polled, prefetch) can be select from board file, enabling all transfer type in driver, by default. this helps in multi-omap build and to select different transfer type for different board. Signed-off-by: Sukumar Ghorai <s-ghorai@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
Diffstat (limited to 'arch/arm/plat-omap')
-rw-r--r--arch/arm/plat-omap/include/plat/nand.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/arch/arm/plat-omap/include/plat/nand.h b/arch/arm/plat-omap/include/plat/nand.h
index 6562cd082bb1..78c0bdb98c18 100644
--- a/arch/arm/plat-omap/include/plat/nand.h
+++ b/arch/arm/plat-omap/include/plat/nand.h
@@ -10,6 +10,12 @@
#include <linux/mtd/partitions.h>
+enum nand_io {
+ NAND_OMAP_PREFETCH_POLLED = 0, /* prefetch polled mode, default */
+ NAND_OMAP_POLLED, /* polled mode, without prefetch */
+ NAND_OMAP_PREFETCH_DMA /* prefetch enabled sDMA mode */
+};
+
struct omap_nand_platform_data {
unsigned int options;
int cs;
@@ -20,6 +26,7 @@ struct omap_nand_platform_data {
int (*nand_setup)(void);
int (*dev_ready)(struct omap_nand_platform_data *);
int dma_channel;
+ enum nand_io xfer_type;
unsigned long phys_base;
int devsize;
};