From: Charulatha V <ch...@ti.com>

This patch introduces platform_data structure for GPIO
so that GPIO module can be implemented in platform device model.

Signed-off-by: Charulatha V <ch...@ti.com>
---
 arch/arm/plat-omap/include/plat/gpio.h |   21 +++++++++++++++++++++
 1 files changed, 21 insertions(+), 0 deletions(-)

diff --git a/arch/arm/plat-omap/include/plat/gpio.h 
b/arch/arm/plat-omap/include/plat/gpio.h
index de1c604..fa5c05f 100644
--- a/arch/arm/plat-omap/include/plat/gpio.h
+++ b/arch/arm/plat-omap/include/plat/gpio.h
@@ -28,6 +28,7 @@
 
 #include <linux/io.h>
 #include <mach/irqs.h>
+#include <linux/platform_device.h>
 
 #define OMAP1_MPUIO_BASE                       0xfffb5000
 
@@ -71,6 +72,26 @@
                                 IH_MPUIO_BASE + ((nr) & 0x0f) : \
                                 IH_GPIO_BASE + (nr))
 
+#define METHOD_MPUIO           0
+#define METHOD_GPIO_1510       1
+#define METHOD_GPIO_1610       2
+#define METHOD_GPIO_7XX                3
+#define METHOD_GPIO_24XX       5
+#define METHOD_GPIO_44XX       6
+
+struct omap_gpio_dev_attr {
+       int gpio_bank_count;    /* No of GPIO banks - SoC specific */
+       int gpio_bank_bits;     /* GPIO bank width */
+       bool dbck_flag;         /* dbck validity - True only for OMAP3&4 */
+       bool omap1_ick_flag;    /* OMAP1 ick - True only for OMAP15xx */
+};
+
+struct omap_gpio_platform_data {
+       u16 virtual_irq_start;
+       int method;
+       struct omap_gpio_dev_attr *gpio_attr;
+};
+
 extern int omap_gpio_init(void);       /* Call from board init only */
 extern void omap2_gpio_prepare_for_idle(int power_state);
 extern void omap2_gpio_resume_after_idle(void);
-- 
1.6.3.3

--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to