diff options
Diffstat (limited to 'arch/arm/mach-omap1/gpio16xx.c')
-rw-r--r-- | arch/arm/mach-omap1/gpio16xx.c | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/arch/arm/mach-omap1/gpio16xx.c b/arch/arm/mach-omap1/gpio16xx.c index 293a246e282..0f399bd0e70 100644 --- a/arch/arm/mach-omap1/gpio16xx.c +++ b/arch/arm/mach-omap1/gpio16xx.c | |||
@@ -37,11 +37,22 @@ static struct __initdata resource omap16xx_mpu_gpio_resources[] = { | |||
37 | }, | 37 | }, |
38 | }; | 38 | }; |
39 | 39 | ||
40 | static struct omap_gpio_reg_offs omap16xx_mpuio_regs = { | ||
41 | .revision = USHRT_MAX, | ||
42 | .direction = OMAP_MPUIO_IO_CNTL, | ||
43 | .datain = OMAP_MPUIO_INPUT_LATCH, | ||
44 | .dataout = OMAP_MPUIO_OUTPUT, | ||
45 | .irqstatus = OMAP_MPUIO_GPIO_INT, | ||
46 | .irqenable = OMAP_MPUIO_GPIO_MASKIT, | ||
47 | .irqenable_inv = true, | ||
48 | }; | ||
49 | |||
40 | static struct __initdata omap_gpio_platform_data omap16xx_mpu_gpio_config = { | 50 | static struct __initdata omap_gpio_platform_data omap16xx_mpu_gpio_config = { |
41 | .virtual_irq_start = IH_MPUIO_BASE, | 51 | .virtual_irq_start = IH_MPUIO_BASE, |
42 | .bank_type = METHOD_MPUIO, | 52 | .bank_type = METHOD_MPUIO, |
43 | .bank_width = 16, | 53 | .bank_width = 16, |
44 | .bank_stride = 1, | 54 | .bank_stride = 1, |
55 | .regs = &omap16xx_mpuio_regs, | ||
45 | }; | 56 | }; |
46 | 57 | ||
47 | static struct platform_device omap16xx_mpu_gpio = { | 58 | static struct platform_device omap16xx_mpu_gpio = { |
@@ -67,10 +78,24 @@ static struct __initdata resource omap16xx_gpio1_resources[] = { | |||
67 | }, | 78 | }, |
68 | }; | 79 | }; |
69 | 80 | ||
81 | static struct omap_gpio_reg_offs omap16xx_gpio_regs = { | ||
82 | .revision = OMAP1610_GPIO_REVISION, | ||
83 | .direction = OMAP1610_GPIO_DIRECTION, | ||
84 | .set_dataout = OMAP1610_GPIO_SET_DATAOUT, | ||
85 | .clr_dataout = OMAP1610_GPIO_CLEAR_DATAOUT, | ||
86 | .datain = OMAP1610_GPIO_DATAIN, | ||
87 | .dataout = OMAP1610_GPIO_DATAOUT, | ||
88 | .irqstatus = OMAP1610_GPIO_IRQSTATUS1, | ||
89 | .irqenable = OMAP1610_GPIO_IRQENABLE1, | ||
90 | .set_irqenable = OMAP1610_GPIO_SET_IRQENABLE1, | ||
91 | .clr_irqenable = OMAP1610_GPIO_CLEAR_IRQENABLE1, | ||
92 | }; | ||
93 | |||
70 | static struct __initdata omap_gpio_platform_data omap16xx_gpio1_config = { | 94 | static struct __initdata omap_gpio_platform_data omap16xx_gpio1_config = { |
71 | .virtual_irq_start = IH_GPIO_BASE, | 95 | .virtual_irq_start = IH_GPIO_BASE, |
72 | .bank_type = METHOD_GPIO_1610, | 96 | .bank_type = METHOD_GPIO_1610, |
73 | .bank_width = 16, | 97 | .bank_width = 16, |
98 | .regs = &omap16xx_gpio_regs, | ||
74 | }; | 99 | }; |
75 | 100 | ||
76 | static struct platform_device omap16xx_gpio1 = { | 101 | static struct platform_device omap16xx_gpio1 = { |
@@ -100,6 +125,7 @@ static struct __initdata omap_gpio_platform_data omap16xx_gpio2_config = { | |||
100 | .virtual_irq_start = IH_GPIO_BASE + 16, | 125 | .virtual_irq_start = IH_GPIO_BASE + 16, |
101 | .bank_type = METHOD_GPIO_1610, | 126 | .bank_type = METHOD_GPIO_1610, |
102 | .bank_width = 16, | 127 | .bank_width = 16, |
128 | .regs = &omap16xx_gpio_regs, | ||
103 | }; | 129 | }; |
104 | 130 | ||
105 | static struct platform_device omap16xx_gpio2 = { | 131 | static struct platform_device omap16xx_gpio2 = { |
@@ -129,6 +155,7 @@ static struct __initdata omap_gpio_platform_data omap16xx_gpio3_config = { | |||
129 | .virtual_irq_start = IH_GPIO_BASE + 32, | 155 | .virtual_irq_start = IH_GPIO_BASE + 32, |
130 | .bank_type = METHOD_GPIO_1610, | 156 | .bank_type = METHOD_GPIO_1610, |
131 | .bank_width = 16, | 157 | .bank_width = 16, |
158 | .regs = &omap16xx_gpio_regs, | ||
132 | }; | 159 | }; |
133 | 160 | ||
134 | static struct platform_device omap16xx_gpio3 = { | 161 | static struct platform_device omap16xx_gpio3 = { |
@@ -158,6 +185,7 @@ static struct __initdata omap_gpio_platform_data omap16xx_gpio4_config = { | |||
158 | .virtual_irq_start = IH_GPIO_BASE + 48, | 185 | .virtual_irq_start = IH_GPIO_BASE + 48, |
159 | .bank_type = METHOD_GPIO_1610, | 186 | .bank_type = METHOD_GPIO_1610, |
160 | .bank_width = 16, | 187 | .bank_width = 16, |
188 | .regs = &omap16xx_gpio_regs, | ||
161 | }; | 189 | }; |
162 | 190 | ||
163 | static struct platform_device omap16xx_gpio4 = { | 191 | static struct platform_device omap16xx_gpio4 = { |