[PATCH v5 01/14] ARM: OMAP2+: gpmc: platform definitions
Afzal Mohammed
afzal at ti.com
Mon Jun 11 10:26:18 EDT 2012
gpmc driver platform definitions
Signed-off-by: Afzal Mohammed <afzal at ti.com>
---
arch/arm/plat-omap/include/plat/gpmc.h | 49 ++++++++++++++++++++++++++++++++
1 file changed, 49 insertions(+)
diff --git a/arch/arm/plat-omap/include/plat/gpmc.h b/arch/arm/plat-omap/include/plat/gpmc.h
index 802fb22..21a8cce 100644
--- a/arch/arm/plat-omap/include/plat/gpmc.h
+++ b/arch/arm/plat-omap/include/plat/gpmc.h
@@ -139,6 +139,55 @@ struct gpmc_timings {
u16 wr_data_mux_bus; /* WRDATAONADMUXBUS */
};
+/* bool type time settings */
+struct gpmc_misc_timings {
+ bool cycle2cyclediffcsen;
+ bool cycle2cyclesamecsen;
+ bool we_extra_delay;
+ bool oe_extra_delay;
+ bool adv_extra_delay;
+ bool cs_extra_delay;
+ bool time_para_granularity;
+};
+
+enum {
+ has_none,
+ has_period,
+ has_clock
+};
+
+struct gpmc_time_ctrl {
+ int type;
+ struct gpmc_timings timings;
+ struct gpmc_misc_timings bool_timings;
+};
+
+struct gpmc_cs_data {
+ unsigned cs;
+ unsigned long mem_size;
+ unsigned long mem_offset;
+ bool have_config;
+ unsigned config;
+ struct gpmc_time_ctrl time_ctrl;
+ unsigned irq_config;
+};
+
+struct gpmc_device_pdata {
+ char *name;
+ int id;
+ void *pdata;
+ unsigned pdata_size;
+ struct resource *per_res;
+ unsigned per_res_cnt;
+ struct gpmc_cs_data *cs_data;
+ unsigned num_cs;
+};
+
+struct gpmc_pdata {
+ unsigned num_device;
+ struct gpmc_device_pdata **device_pdata;
+};
+
struct gpmc_nand_regs {
void __iomem *gpmc_status;
void __iomem *gpmc_nand_command;
--
1.7.10.2
More information about the linux-arm-kernel
mailing list