diff options
author | Patrick Turley <patrick.turley@freescale.com> | 2010-03-11 14:00:59 -0600 |
---|---|---|
committer | Alejandro Gonzalez <alex.gonzalez@digi.com> | 2010-05-25 11:17:20 +0200 |
commit | d5735b1643a0a3f95dfdb9f0bdfc1da314b8ebfa (patch) | |
tree | feffcdfbb75b494576b403bdff2c9f3fec0a28f2 /arch/arm/plat-mxs/include | |
parent | afc3108bfb8d877df8f6dcf3c82484e65afe7392 (diff) |
ENGR00117735-1 MX28: SLC/MLC NAND
Port the i.MX23 NAND Flash driver to i.MX28.
Signed-off-by: Patrick Turley <patrick.turley@freescale.com>
Signed-off-by: Alejandro Gonzalez <alex.gonzalez@digi.com>
Diffstat (limited to 'arch/arm/plat-mxs/include')
-rw-r--r-- | arch/arm/plat-mxs/include/mach/device.h | 51 | ||||
-rw-r--r-- | arch/arm/plat-mxs/include/mach/dmaengine.h | 3 |
2 files changed, 53 insertions, 1 deletions
diff --git a/arch/arm/plat-mxs/include/mach/device.h b/arch/arm/plat-mxs/include/mach/device.h index e6a5baab62c1..c5a5e3498896 100644 --- a/arch/arm/plat-mxs/include/mach/device.h +++ b/arch/arm/plat-mxs/include/mach/device.h @@ -162,6 +162,57 @@ struct mxs_audio_platform_data { void *priv; /* used by board specific functions */ }; +/** + * struct gpmi_platform_data - GPMI driver platform data. + * + * This structure communicates platform-specific information to the GPMI driver + * that can't be expressed as resources. + * + * @io_uA: The current limit, in uA. + * @min_prop_delay_in_ns: Minimum propagation delay of GPMI signals to and + * from the NAND Flash device, in nanoseconds. + * @max_prop_delay_in_ns: Maximum propagation delay of GPMI signals to and + * from the NAND Flash device, in nanoseconds. + * @pinmux_handler: A pointer to a function the driver will call to + * request the pins it needs. + * @boot_area_size_in_bytes: The amount of space reserved for use by the boot + * ROM on the first and second chips. If this value is + * zero, it indicates we're not reserving any space + * for the boot area. + * @partition_source_types: An array of strings that name sources of + * partitioning information (e.g., the boot loader, + * the kernel command line, etc.). The function + * parse_mtd_partitions() recognizes these names and + * applies the appropriate "plugins" to discover + * partitioning information. If any is found, it will + * be applied to the "general use" MTD (it will NOT + * override the boot area protection mechanism). + * @partitions: An optional pointer to an array of partition + * descriptions. If the driver finds no partitioning + * information elsewhere, it will apply these to the + * "general use" MTD (they do NOT override the boot + * area protection mechanism). + * @partition_count: The number of elements in the partitions array. + */ + +struct gpmi_platform_data { + + int io_uA; + + unsigned min_prop_delay_in_ns; + unsigned max_prop_delay_in_ns; + + int (*pinmux_handler)(void); + + uint32_t boot_area_size_in_bytes; + + const char **partition_source_types; + + struct mtd_partition *partitions; + unsigned partition_count; + +}; + extern void mxs_timer_init(struct mxs_sys_timer *timer); extern void mxs_nomatch_timer_init(struct mxs_sys_timer *timer); diff --git a/arch/arm/plat-mxs/include/mach/dmaengine.h b/arch/arm/plat-mxs/include/mach/dmaengine.h index 4bbbcb4b8c85..eecd260ac5b4 100644 --- a/arch/arm/plat-mxs/include/mach/dmaengine.h +++ b/arch/arm/plat-mxs/include/mach/dmaengine.h @@ -43,7 +43,8 @@ struct mxs_dma_cmd_bits { unsigned int chain:1; unsigned int irq:1; - unsigned int resv:2; + unsigned int nand_lock:1; + unsigned int nand_wait_4_ready:1; unsigned int dec_sem:1; unsigned int wait4end:1; unsigned int halt_on_terminate:1; |