diff options
author | Marek Szyprowski <m.szyprowski@samsung.com> | 2011-03-15 08:17:43 -0400 |
---|---|---|
committer | Kukjin Kim <kgene.kim@samsung.com> | 2011-03-15 08:17:43 -0400 |
commit | 47a9c0ee79489a3bd4ed52f424b5e5c507768ce3 (patch) | |
tree | 33a7986128b3bc6909dcef095522f6dec04b7410 /arch/arm/mach-exynos4 | |
parent | 6d0de1577eda1fad4be14f70021135ff7df95dcf (diff) |
ARM: EXYNOS4: Add missing GPYx banks
This patch adds missing GPYx gpio banks on Samsung EXYNOS4 platform.
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Diffstat (limited to 'arch/arm/mach-exynos4')
-rw-r--r-- | arch/arm/mach-exynos4/gpiolib.c | 49 | ||||
-rw-r--r-- | arch/arm/mach-exynos4/include/mach/gpio.h | 23 |
2 files changed, 71 insertions, 1 deletions
diff --git a/arch/arm/mach-exynos4/gpiolib.c b/arch/arm/mach-exynos4/gpiolib.c index c46fdc57d94c..1b4121c2e53e 100644 --- a/arch/arm/mach-exynos4/gpiolib.c +++ b/arch/arm/mach-exynos4/gpiolib.c | |||
@@ -199,6 +199,55 @@ static struct s3c_gpio_chip exynos4_gpio_part2_4bit[] = { | |||
199 | .label = "GPL2", | 199 | .label = "GPL2", |
200 | }, | 200 | }, |
201 | }, { | 201 | }, { |
202 | .config = &gpio_cfg_noint, | ||
203 | .chip = { | ||
204 | .base = EXYNOS4_GPY0(0), | ||
205 | .ngpio = EXYNOS4_GPIO_Y0_NR, | ||
206 | .label = "GPY0", | ||
207 | }, | ||
208 | }, { | ||
209 | .config = &gpio_cfg_noint, | ||
210 | .chip = { | ||
211 | .base = EXYNOS4_GPY1(0), | ||
212 | .ngpio = EXYNOS4_GPIO_Y1_NR, | ||
213 | .label = "GPY1", | ||
214 | }, | ||
215 | }, { | ||
216 | .config = &gpio_cfg_noint, | ||
217 | .chip = { | ||
218 | .base = EXYNOS4_GPY2(0), | ||
219 | .ngpio = EXYNOS4_GPIO_Y2_NR, | ||
220 | .label = "GPY2", | ||
221 | }, | ||
222 | }, { | ||
223 | .config = &gpio_cfg_noint, | ||
224 | .chip = { | ||
225 | .base = EXYNOS4_GPY3(0), | ||
226 | .ngpio = EXYNOS4_GPIO_Y3_NR, | ||
227 | .label = "GPY3", | ||
228 | }, | ||
229 | }, { | ||
230 | .config = &gpio_cfg_noint, | ||
231 | .chip = { | ||
232 | .base = EXYNOS4_GPY4(0), | ||
233 | .ngpio = EXYNOS4_GPIO_Y4_NR, | ||
234 | .label = "GPY4", | ||
235 | }, | ||
236 | }, { | ||
237 | .config = &gpio_cfg_noint, | ||
238 | .chip = { | ||
239 | .base = EXYNOS4_GPY5(0), | ||
240 | .ngpio = EXYNOS4_GPIO_Y5_NR, | ||
241 | .label = "GPY5", | ||
242 | }, | ||
243 | }, { | ||
244 | .config = &gpio_cfg_noint, | ||
245 | .chip = { | ||
246 | .base = EXYNOS4_GPY6(0), | ||
247 | .ngpio = EXYNOS4_GPIO_Y6_NR, | ||
248 | .label = "GPY6", | ||
249 | }, | ||
250 | }, { | ||
202 | .base = (S5P_VA_GPIO2 + 0xC00), | 251 | .base = (S5P_VA_GPIO2 + 0xC00), |
203 | .config = &gpio_cfg_noint, | 252 | .config = &gpio_cfg_noint, |
204 | .irq_base = IRQ_EINT(0), | 253 | .irq_base = IRQ_EINT(0), |
diff --git a/arch/arm/mach-exynos4/include/mach/gpio.h b/arch/arm/mach-exynos4/include/mach/gpio.h index 16082998bcd8..939728b38d48 100644 --- a/arch/arm/mach-exynos4/include/mach/gpio.h +++ b/arch/arm/mach-exynos4/include/mach/gpio.h | |||
@@ -50,6 +50,13 @@ | |||
50 | #define EXYNOS4_GPIO_X1_NR (8) | 50 | #define EXYNOS4_GPIO_X1_NR (8) |
51 | #define EXYNOS4_GPIO_X2_NR (8) | 51 | #define EXYNOS4_GPIO_X2_NR (8) |
52 | #define EXYNOS4_GPIO_X3_NR (8) | 52 | #define EXYNOS4_GPIO_X3_NR (8) |
53 | #define EXYNOS4_GPIO_Y0_NR (6) | ||
54 | #define EXYNOS4_GPIO_Y1_NR (4) | ||
55 | #define EXYNOS4_GPIO_Y2_NR (6) | ||
56 | #define EXYNOS4_GPIO_Y3_NR (8) | ||
57 | #define EXYNOS4_GPIO_Y4_NR (8) | ||
58 | #define EXYNOS4_GPIO_Y5_NR (8) | ||
59 | #define EXYNOS4_GPIO_Y6_NR (8) | ||
53 | #define EXYNOS4_GPIO_Z_NR (7) | 60 | #define EXYNOS4_GPIO_Z_NR (7) |
54 | 61 | ||
55 | /* GPIO bank numbers */ | 62 | /* GPIO bank numbers */ |
@@ -87,7 +94,14 @@ enum s5p_gpio_number { | |||
87 | EXYNOS4_GPIO_X1_START = EXYNOS4_GPIO_NEXT(EXYNOS4_GPIO_X0), | 94 | EXYNOS4_GPIO_X1_START = EXYNOS4_GPIO_NEXT(EXYNOS4_GPIO_X0), |
88 | EXYNOS4_GPIO_X2_START = EXYNOS4_GPIO_NEXT(EXYNOS4_GPIO_X1), | 95 | EXYNOS4_GPIO_X2_START = EXYNOS4_GPIO_NEXT(EXYNOS4_GPIO_X1), |
89 | EXYNOS4_GPIO_X3_START = EXYNOS4_GPIO_NEXT(EXYNOS4_GPIO_X2), | 96 | EXYNOS4_GPIO_X3_START = EXYNOS4_GPIO_NEXT(EXYNOS4_GPIO_X2), |
90 | EXYNOS4_GPIO_Z_START = EXYNOS4_GPIO_NEXT(EXYNOS4_GPIO_X3), | 97 | EXYNOS4_GPIO_Y0_START = EXYNOS4_GPIO_NEXT(EXYNOS4_GPIO_X3), |
98 | EXYNOS4_GPIO_Y1_START = EXYNOS4_GPIO_NEXT(EXYNOS4_GPIO_Y0), | ||
99 | EXYNOS4_GPIO_Y2_START = EXYNOS4_GPIO_NEXT(EXYNOS4_GPIO_Y1), | ||
100 | EXYNOS4_GPIO_Y3_START = EXYNOS4_GPIO_NEXT(EXYNOS4_GPIO_Y2), | ||
101 | EXYNOS4_GPIO_Y4_START = EXYNOS4_GPIO_NEXT(EXYNOS4_GPIO_Y3), | ||
102 | EXYNOS4_GPIO_Y5_START = EXYNOS4_GPIO_NEXT(EXYNOS4_GPIO_Y4), | ||
103 | EXYNOS4_GPIO_Y6_START = EXYNOS4_GPIO_NEXT(EXYNOS4_GPIO_Y5), | ||
104 | EXYNOS4_GPIO_Z_START = EXYNOS4_GPIO_NEXT(EXYNOS4_GPIO_Y6), | ||
91 | }; | 105 | }; |
92 | 106 | ||
93 | /* EXYNOS4 GPIO number definitions */ | 107 | /* EXYNOS4 GPIO number definitions */ |
@@ -120,6 +134,13 @@ enum s5p_gpio_number { | |||
120 | #define EXYNOS4_GPX1(_nr) (EXYNOS4_GPIO_X1_START + (_nr)) | 134 | #define EXYNOS4_GPX1(_nr) (EXYNOS4_GPIO_X1_START + (_nr)) |
121 | #define EXYNOS4_GPX2(_nr) (EXYNOS4_GPIO_X2_START + (_nr)) | 135 | #define EXYNOS4_GPX2(_nr) (EXYNOS4_GPIO_X2_START + (_nr)) |
122 | #define EXYNOS4_GPX3(_nr) (EXYNOS4_GPIO_X3_START + (_nr)) | 136 | #define EXYNOS4_GPX3(_nr) (EXYNOS4_GPIO_X3_START + (_nr)) |
137 | #define EXYNOS4_GPY0(_nr) (EXYNOS4_GPIO_Y0_START + (_nr)) | ||
138 | #define EXYNOS4_GPY1(_nr) (EXYNOS4_GPIO_Y1_START + (_nr)) | ||
139 | #define EXYNOS4_GPY2(_nr) (EXYNOS4_GPIO_Y2_START + (_nr)) | ||
140 | #define EXYNOS4_GPY3(_nr) (EXYNOS4_GPIO_Y3_START + (_nr)) | ||
141 | #define EXYNOS4_GPY4(_nr) (EXYNOS4_GPIO_Y4_START + (_nr)) | ||
142 | #define EXYNOS4_GPY5(_nr) (EXYNOS4_GPIO_Y5_START + (_nr)) | ||
143 | #define EXYNOS4_GPY6(_nr) (EXYNOS4_GPIO_Y6_START + (_nr)) | ||
123 | #define EXYNOS4_GPZ(_nr) (EXYNOS4_GPIO_Z_START + (_nr)) | 144 | #define EXYNOS4_GPZ(_nr) (EXYNOS4_GPIO_Z_START + (_nr)) |
124 | 145 | ||
125 | /* the end of the EXYNOS4 specific gpios */ | 146 | /* the end of the EXYNOS4 specific gpios */ |