diff options
Diffstat (limited to 'include/linux/platform_data/mtd-nand-omap2.h')
| -rw-r--r-- | include/linux/platform_data/mtd-nand-omap2.h | 43 | 
1 files changed, 43 insertions, 0 deletions
diff --git a/include/linux/platform_data/mtd-nand-omap2.h b/include/linux/platform_data/mtd-nand-omap2.h new file mode 100644 index 00000000000..1a68c1e5fe5 --- /dev/null +++ b/include/linux/platform_data/mtd-nand-omap2.h @@ -0,0 +1,43 @@ +/* + * arch/arm/plat-omap/include/mach/nand.h + * + * Copyright (C) 2006 Micron Technology Inc. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + */ + +#include <plat/gpmc.h> +#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 */ +	NAND_OMAP_PREFETCH_IRQ		/* prefetch enabled irq mode */ +}; + +struct omap_nand_platform_data { +	int			cs; +	struct mtd_partition	*parts; +	struct gpmc_timings	*gpmc_t; +	int			nr_parts; +	bool			dev_ready; +	enum nand_io		xfer_type; +	int			devsize; +	enum omap_ecc           ecc_opt; +	struct gpmc_nand_regs	reg; +}; + +/* minimum size for IO mapping */ +#define	NAND_IO_SIZE	4 + +#if defined(CONFIG_MTD_NAND_OMAP2) || defined(CONFIG_MTD_NAND_OMAP2_MODULE) +extern int gpmc_nand_init(struct omap_nand_platform_data *d); +#else +static inline int gpmc_nand_init(struct omap_nand_platform_data *d) +{ +	return 0; +} +#endif  |