1 /* 2 * Copyright (c) 2010-2012 Samsung Electronics Co., Ltd. 3 * http://www.samsung.com 4 * 5 * EXYNOS - GPIO lib support 6 * 7 * This program is free software; you can redistribute it and/or modify 8 * it under the terms of the GNU General Public License version 2 as 9 * published by the Free Software Foundation. 10 */ 11 12 #ifndef __ASM_ARCH_GPIO_H 13 #define __ASM_ARCH_GPIO_H __FILE__ 14 15 /* Macro for EXYNOS GPIO numbering */ 16 17 #define EXYNOS_GPIO_NEXT(__gpio) \ 18 ((__gpio##_START) + (__gpio##_NR) + CONFIG_S3C_GPIO_SPACE + 1) 19 20 /* EXYNOS4 GPIO bank sizes */ 21 22 #define EXYNOS4_GPIO_A0_NR (8) 23 #define EXYNOS4_GPIO_A1_NR (6) 24 #define EXYNOS4_GPIO_B_NR (8) 25 #define EXYNOS4_GPIO_C0_NR (5) 26 #define EXYNOS4_GPIO_C1_NR (5) 27 #define EXYNOS4_GPIO_D0_NR (4) 28 #define EXYNOS4_GPIO_D1_NR (4) 29 #define EXYNOS4_GPIO_E0_NR (5) 30 #define EXYNOS4_GPIO_E1_NR (8) 31 #define EXYNOS4_GPIO_E2_NR (6) 32 #define EXYNOS4_GPIO_E3_NR (8) 33 #define EXYNOS4_GPIO_E4_NR (8) 34 #define EXYNOS4_GPIO_F0_NR (8) 35 #define EXYNOS4_GPIO_F1_NR (8) 36 #define EXYNOS4_GPIO_F2_NR (8) 37 #define EXYNOS4_GPIO_F3_NR (6) 38 #define EXYNOS4_GPIO_J0_NR (8) 39 #define EXYNOS4_GPIO_J1_NR (5) 40 #define EXYNOS4_GPIO_K0_NR (7) 41 #define EXYNOS4_GPIO_K1_NR (7) 42 #define EXYNOS4_GPIO_K2_NR (7) 43 #define EXYNOS4_GPIO_K3_NR (7) 44 #define EXYNOS4_GPIO_L0_NR (8) 45 #define EXYNOS4_GPIO_L1_NR (3) 46 #define EXYNOS4_GPIO_L2_NR (8) 47 #define EXYNOS4_GPIO_X0_NR (8) 48 #define EXYNOS4_GPIO_X1_NR (8) 49 #define EXYNOS4_GPIO_X2_NR (8) 50 #define EXYNOS4_GPIO_X3_NR (8) 51 #define EXYNOS4_GPIO_Y0_NR (6) 52 #define EXYNOS4_GPIO_Y1_NR (4) 53 #define EXYNOS4_GPIO_Y2_NR (6) 54 #define EXYNOS4_GPIO_Y3_NR (8) 55 #define EXYNOS4_GPIO_Y4_NR (8) 56 #define EXYNOS4_GPIO_Y5_NR (8) 57 #define EXYNOS4_GPIO_Y6_NR (8) 58 #define EXYNOS4_GPIO_Z_NR (7) 59 60 /* EXYNOS4 GPIO bank numbers */ 61 62 enum exynos4_gpio_number { 63 EXYNOS4_GPIO_A0_START = 0, 64 EXYNOS4_GPIO_A1_START = EXYNOS_GPIO_NEXT(EXYNOS4_GPIO_A0), 65 EXYNOS4_GPIO_B_START = EXYNOS_GPIO_NEXT(EXYNOS4_GPIO_A1), 66 EXYNOS4_GPIO_C0_START = EXYNOS_GPIO_NEXT(EXYNOS4_GPIO_B), 67 EXYNOS4_GPIO_C1_START = EXYNOS_GPIO_NEXT(EXYNOS4_GPIO_C0), 68 EXYNOS4_GPIO_D0_START = EXYNOS_GPIO_NEXT(EXYNOS4_GPIO_C1), 69 EXYNOS4_GPIO_D1_START = EXYNOS_GPIO_NEXT(EXYNOS4_GPIO_D0), 70 EXYNOS4_GPIO_E0_START = EXYNOS_GPIO_NEXT(EXYNOS4_GPIO_D1), 71 EXYNOS4_GPIO_E1_START = EXYNOS_GPIO_NEXT(EXYNOS4_GPIO_E0), 72 EXYNOS4_GPIO_E2_START = EXYNOS_GPIO_NEXT(EXYNOS4_GPIO_E1), 73 EXYNOS4_GPIO_E3_START = EXYNOS_GPIO_NEXT(EXYNOS4_GPIO_E2), 74 EXYNOS4_GPIO_E4_START = EXYNOS_GPIO_NEXT(EXYNOS4_GPIO_E3), 75 EXYNOS4_GPIO_F0_START = EXYNOS_GPIO_NEXT(EXYNOS4_GPIO_E4), 76 EXYNOS4_GPIO_F1_START = EXYNOS_GPIO_NEXT(EXYNOS4_GPIO_F0), 77 EXYNOS4_GPIO_F2_START = EXYNOS_GPIO_NEXT(EXYNOS4_GPIO_F1), 78 EXYNOS4_GPIO_F3_START = EXYNOS_GPIO_NEXT(EXYNOS4_GPIO_F2), 79 EXYNOS4_GPIO_J0_START = EXYNOS_GPIO_NEXT(EXYNOS4_GPIO_F3), 80 EXYNOS4_GPIO_J1_START = EXYNOS_GPIO_NEXT(EXYNOS4_GPIO_J0), 81 EXYNOS4_GPIO_K0_START = EXYNOS_GPIO_NEXT(EXYNOS4_GPIO_J1), 82 EXYNOS4_GPIO_K1_START = EXYNOS_GPIO_NEXT(EXYNOS4_GPIO_K0), 83 EXYNOS4_GPIO_K2_START = EXYNOS_GPIO_NEXT(EXYNOS4_GPIO_K1), 84 EXYNOS4_GPIO_K3_START = EXYNOS_GPIO_NEXT(EXYNOS4_GPIO_K2), 85 EXYNOS4_GPIO_L0_START = EXYNOS_GPIO_NEXT(EXYNOS4_GPIO_K3), 86 EXYNOS4_GPIO_L1_START = EXYNOS_GPIO_NEXT(EXYNOS4_GPIO_L0), 87 EXYNOS4_GPIO_L2_START = EXYNOS_GPIO_NEXT(EXYNOS4_GPIO_L1), 88 EXYNOS4_GPIO_X0_START = EXYNOS_GPIO_NEXT(EXYNOS4_GPIO_L2), 89 EXYNOS4_GPIO_X1_START = EXYNOS_GPIO_NEXT(EXYNOS4_GPIO_X0), 90 EXYNOS4_GPIO_X2_START = EXYNOS_GPIO_NEXT(EXYNOS4_GPIO_X1), 91 EXYNOS4_GPIO_X3_START = EXYNOS_GPIO_NEXT(EXYNOS4_GPIO_X2), 92 EXYNOS4_GPIO_Y0_START = EXYNOS_GPIO_NEXT(EXYNOS4_GPIO_X3), 93 EXYNOS4_GPIO_Y1_START = EXYNOS_GPIO_NEXT(EXYNOS4_GPIO_Y0), 94 EXYNOS4_GPIO_Y2_START = EXYNOS_GPIO_NEXT(EXYNOS4_GPIO_Y1), 95 EXYNOS4_GPIO_Y3_START = EXYNOS_GPIO_NEXT(EXYNOS4_GPIO_Y2), 96 EXYNOS4_GPIO_Y4_START = EXYNOS_GPIO_NEXT(EXYNOS4_GPIO_Y3), 97 EXYNOS4_GPIO_Y5_START = EXYNOS_GPIO_NEXT(EXYNOS4_GPIO_Y4), 98 EXYNOS4_GPIO_Y6_START = EXYNOS_GPIO_NEXT(EXYNOS4_GPIO_Y5), 99 EXYNOS4_GPIO_Z_START = EXYNOS_GPIO_NEXT(EXYNOS4_GPIO_Y6), 100 }; 101 102 /* EXYNOS4 GPIO number definitions */ 103 104 #define EXYNOS4_GPA0(_nr) (EXYNOS4_GPIO_A0_START + (_nr)) 105 #define EXYNOS4_GPA1(_nr) (EXYNOS4_GPIO_A1_START + (_nr)) 106 #define EXYNOS4_GPB(_nr) (EXYNOS4_GPIO_B_START + (_nr)) 107 #define EXYNOS4_GPC0(_nr) (EXYNOS4_GPIO_C0_START + (_nr)) 108 #define EXYNOS4_GPC1(_nr) (EXYNOS4_GPIO_C1_START + (_nr)) 109 #define EXYNOS4_GPD0(_nr) (EXYNOS4_GPIO_D0_START + (_nr)) 110 #define EXYNOS4_GPD1(_nr) (EXYNOS4_GPIO_D1_START + (_nr)) 111 #define EXYNOS4_GPE0(_nr) (EXYNOS4_GPIO_E0_START + (_nr)) 112 #define EXYNOS4_GPE1(_nr) (EXYNOS4_GPIO_E1_START + (_nr)) 113 #define EXYNOS4_GPE2(_nr) (EXYNOS4_GPIO_E2_START + (_nr)) 114 #define EXYNOS4_GPE3(_nr) (EXYNOS4_GPIO_E3_START + (_nr)) 115 #define EXYNOS4_GPE4(_nr) (EXYNOS4_GPIO_E4_START + (_nr)) 116 #define EXYNOS4_GPF0(_nr) (EXYNOS4_GPIO_F0_START + (_nr)) 117 #define EXYNOS4_GPF1(_nr) (EXYNOS4_GPIO_F1_START + (_nr)) 118 #define EXYNOS4_GPF2(_nr) (EXYNOS4_GPIO_F2_START + (_nr)) 119 #define EXYNOS4_GPF3(_nr) (EXYNOS4_GPIO_F3_START + (_nr)) 120 #define EXYNOS4_GPJ0(_nr) (EXYNOS4_GPIO_J0_START + (_nr)) 121 #define EXYNOS4_GPJ1(_nr) (EXYNOS4_GPIO_J1_START + (_nr)) 122 #define EXYNOS4_GPK0(_nr) (EXYNOS4_GPIO_K0_START + (_nr)) 123 #define EXYNOS4_GPK1(_nr) (EXYNOS4_GPIO_K1_START + (_nr)) 124 #define EXYNOS4_GPK2(_nr) (EXYNOS4_GPIO_K2_START + (_nr)) 125 #define EXYNOS4_GPK3(_nr) (EXYNOS4_GPIO_K3_START + (_nr)) 126 #define EXYNOS4_GPL0(_nr) (EXYNOS4_GPIO_L0_START + (_nr)) 127 #define EXYNOS4_GPL1(_nr) (EXYNOS4_GPIO_L1_START + (_nr)) 128 #define EXYNOS4_GPL2(_nr) (EXYNOS4_GPIO_L2_START + (_nr)) 129 #define EXYNOS4_GPX0(_nr) (EXYNOS4_GPIO_X0_START + (_nr)) 130 #define EXYNOS4_GPX1(_nr) (EXYNOS4_GPIO_X1_START + (_nr)) 131 #define EXYNOS4_GPX2(_nr) (EXYNOS4_GPIO_X2_START + (_nr)) 132 #define EXYNOS4_GPX3(_nr) (EXYNOS4_GPIO_X3_START + (_nr)) 133 #define EXYNOS4_GPY0(_nr) (EXYNOS4_GPIO_Y0_START + (_nr)) 134 #define EXYNOS4_GPY1(_nr) (EXYNOS4_GPIO_Y1_START + (_nr)) 135 #define EXYNOS4_GPY2(_nr) (EXYNOS4_GPIO_Y2_START + (_nr)) 136 #define EXYNOS4_GPY3(_nr) (EXYNOS4_GPIO_Y3_START + (_nr)) 137 #define EXYNOS4_GPY4(_nr) (EXYNOS4_GPIO_Y4_START + (_nr)) 138 #define EXYNOS4_GPY5(_nr) (EXYNOS4_GPIO_Y5_START + (_nr)) 139 #define EXYNOS4_GPY6(_nr) (EXYNOS4_GPIO_Y6_START + (_nr)) 140 #define EXYNOS4_GPZ(_nr) (EXYNOS4_GPIO_Z_START + (_nr)) 141 142 /* the end of the EXYNOS4 specific gpios */ 143 144 #define EXYNOS4_GPIO_END (EXYNOS4_GPZ(EXYNOS4_GPIO_Z_NR) + 1) 145 146 /* EXYNOS5 GPIO bank sizes */ 147 148 #define EXYNOS5_GPIO_A0_NR (8) 149 #define EXYNOS5_GPIO_A1_NR (6) 150 #define EXYNOS5_GPIO_A2_NR (8) 151 #define EXYNOS5_GPIO_B0_NR (5) 152 #define EXYNOS5_GPIO_B1_NR (5) 153 #define EXYNOS5_GPIO_B2_NR (4) 154 #define EXYNOS5_GPIO_B3_NR (4) 155 #define EXYNOS5_GPIO_C0_NR (7) 156 #define EXYNOS5_GPIO_C1_NR (4) 157 #define EXYNOS5_GPIO_C2_NR (7) 158 #define EXYNOS5_GPIO_C3_NR (7) 159 #define EXYNOS5_GPIO_C4_NR (7) 160 #define EXYNOS5_GPIO_D0_NR (4) 161 #define EXYNOS5_GPIO_D1_NR (8) 162 #define EXYNOS5_GPIO_Y0_NR (6) 163 #define EXYNOS5_GPIO_Y1_NR (4) 164 #define EXYNOS5_GPIO_Y2_NR (6) 165 #define EXYNOS5_GPIO_Y3_NR (8) 166 #define EXYNOS5_GPIO_Y4_NR (8) 167 #define EXYNOS5_GPIO_Y5_NR (8) 168 #define EXYNOS5_GPIO_Y6_NR (8) 169 #define EXYNOS5_GPIO_X0_NR (8) 170 #define EXYNOS5_GPIO_X1_NR (8) 171 #define EXYNOS5_GPIO_X2_NR (8) 172 #define EXYNOS5_GPIO_X3_NR (8) 173 #define EXYNOS5_GPIO_E0_NR (8) 174 #define EXYNOS5_GPIO_E1_NR (2) 175 #define EXYNOS5_GPIO_F0_NR (4) 176 #define EXYNOS5_GPIO_F1_NR (4) 177 #define EXYNOS5_GPIO_G0_NR (8) 178 #define EXYNOS5_GPIO_G1_NR (8) 179 #define EXYNOS5_GPIO_G2_NR (2) 180 #define EXYNOS5_GPIO_H0_NR (4) 181 #define EXYNOS5_GPIO_H1_NR (8) 182 #define EXYNOS5_GPIO_V0_NR (8) 183 #define EXYNOS5_GPIO_V1_NR (8) 184 #define EXYNOS5_GPIO_V2_NR (8) 185 #define EXYNOS5_GPIO_V3_NR (8) 186 #define EXYNOS5_GPIO_V4_NR (2) 187 #define EXYNOS5_GPIO_Z_NR (7) 188 189 /* EXYNOS5 GPIO bank numbers */ 190 191 enum exynos5_gpio_number { 192 EXYNOS5_GPIO_A0_START = 0, 193 EXYNOS5_GPIO_A1_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_A0), 194 EXYNOS5_GPIO_A2_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_A1), 195 EXYNOS5_GPIO_B0_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_A2), 196 EXYNOS5_GPIO_B1_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_B0), 197 EXYNOS5_GPIO_B2_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_B1), 198 EXYNOS5_GPIO_B3_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_B2), 199 EXYNOS5_GPIO_C0_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_B3), 200 EXYNOS5_GPIO_C1_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_C0), 201 EXYNOS5_GPIO_C2_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_C1), 202 EXYNOS5_GPIO_C3_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_C2), 203 EXYNOS5_GPIO_C4_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_C3), 204 EXYNOS5_GPIO_D0_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_C4), 205 EXYNOS5_GPIO_D1_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_D0), 206 EXYNOS5_GPIO_Y0_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_D1), 207 EXYNOS5_GPIO_Y1_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_Y0), 208 EXYNOS5_GPIO_Y2_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_Y1), 209 EXYNOS5_GPIO_Y3_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_Y2), 210 EXYNOS5_GPIO_Y4_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_Y3), 211 EXYNOS5_GPIO_Y5_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_Y4), 212 EXYNOS5_GPIO_Y6_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_Y5), 213 EXYNOS5_GPIO_X0_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_Y6), 214 EXYNOS5_GPIO_X1_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_X0), 215 EXYNOS5_GPIO_X2_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_X1), 216 EXYNOS5_GPIO_X3_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_X2), 217 EXYNOS5_GPIO_E0_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_X3), 218 EXYNOS5_GPIO_E1_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_E0), 219 EXYNOS5_GPIO_F0_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_E1), 220 EXYNOS5_GPIO_F1_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_F0), 221 EXYNOS5_GPIO_G0_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_F1), 222 EXYNOS5_GPIO_G1_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_G0), 223 EXYNOS5_GPIO_G2_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_G1), 224 EXYNOS5_GPIO_H0_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_G2), 225 EXYNOS5_GPIO_H1_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_H0), 226 EXYNOS5_GPIO_V0_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_H1), 227 EXYNOS5_GPIO_V1_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_V0), 228 EXYNOS5_GPIO_V2_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_V1), 229 EXYNOS5_GPIO_V3_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_V2), 230 EXYNOS5_GPIO_V4_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_V3), 231 EXYNOS5_GPIO_Z_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_V4), 232 }; 233 234 /* EXYNOS5 GPIO number definitions */ 235 236 #define EXYNOS5_GPA0(_nr) (EXYNOS5_GPIO_A0_START + (_nr)) 237 #define EXYNOS5_GPA1(_nr) (EXYNOS5_GPIO_A1_START + (_nr)) 238 #define EXYNOS5_GPA2(_nr) (EXYNOS5_GPIO_A2_START + (_nr)) 239 #define EXYNOS5_GPB0(_nr) (EXYNOS5_GPIO_B0_START + (_nr)) 240 #define EXYNOS5_GPB1(_nr) (EXYNOS5_GPIO_B1_START + (_nr)) 241 #define EXYNOS5_GPB2(_nr) (EXYNOS5_GPIO_B2_START + (_nr)) 242 #define EXYNOS5_GPB3(_nr) (EXYNOS5_GPIO_B3_START + (_nr)) 243 #define EXYNOS5_GPC0(_nr) (EXYNOS5_GPIO_C0_START + (_nr)) 244 #define EXYNOS5_GPC1(_nr) (EXYNOS5_GPIO_C1_START + (_nr)) 245 #define EXYNOS5_GPC2(_nr) (EXYNOS5_GPIO_C2_START + (_nr)) 246 #define EXYNOS5_GPC3(_nr) (EXYNOS5_GPIO_C3_START + (_nr)) 247 #define EXYNOS5_GPC4(_nr) (EXYNOS5_GPIO_C4_START + (_nr)) 248 #define EXYNOS5_GPD0(_nr) (EXYNOS5_GPIO_D0_START + (_nr)) 249 #define EXYNOS5_GPD1(_nr) (EXYNOS5_GPIO_D1_START + (_nr)) 250 #define EXYNOS5_GPY0(_nr) (EXYNOS5_GPIO_Y0_START + (_nr)) 251 #define EXYNOS5_GPY1(_nr) (EXYNOS5_GPIO_Y1_START + (_nr)) 252 #define EXYNOS5_GPY2(_nr) (EXYNOS5_GPIO_Y2_START + (_nr)) 253 #define EXYNOS5_GPY3(_nr) (EXYNOS5_GPIO_Y3_START + (_nr)) 254 #define EXYNOS5_GPY4(_nr) (EXYNOS5_GPIO_Y4_START + (_nr)) 255 #define EXYNOS5_GPY5(_nr) (EXYNOS5_GPIO_Y5_START + (_nr)) 256 #define EXYNOS5_GPY6(_nr) (EXYNOS5_GPIO_Y6_START + (_nr)) 257 #define EXYNOS5_GPX0(_nr) (EXYNOS5_GPIO_X0_START + (_nr)) 258 #define EXYNOS5_GPX1(_nr) (EXYNOS5_GPIO_X1_START + (_nr)) 259 #define EXYNOS5_GPX2(_nr) (EXYNOS5_GPIO_X2_START + (_nr)) 260 #define EXYNOS5_GPX3(_nr) (EXYNOS5_GPIO_X3_START + (_nr)) 261 #define EXYNOS5_GPE0(_nr) (EXYNOS5_GPIO_E0_START + (_nr)) 262 #define EXYNOS5_GPE1(_nr) (EXYNOS5_GPIO_E1_START + (_nr)) 263 #define EXYNOS5_GPF0(_nr) (EXYNOS5_GPIO_F0_START + (_nr)) 264 #define EXYNOS5_GPF1(_nr) (EXYNOS5_GPIO_F1_START + (_nr)) 265 #define EXYNOS5_GPG0(_nr) (EXYNOS5_GPIO_G0_START + (_nr)) 266 #define EXYNOS5_GPG1(_nr) (EXYNOS5_GPIO_G1_START + (_nr)) 267 #define EXYNOS5_GPG2(_nr) (EXYNOS5_GPIO_G2_START + (_nr)) 268 #define EXYNOS5_GPH0(_nr) (EXYNOS5_GPIO_H0_START + (_nr)) 269 #define EXYNOS5_GPH1(_nr) (EXYNOS5_GPIO_H1_START + (_nr)) 270 #define EXYNOS5_GPV0(_nr) (EXYNOS5_GPIO_V0_START + (_nr)) 271 #define EXYNOS5_GPV1(_nr) (EXYNOS5_GPIO_V1_START + (_nr)) 272 #define EXYNOS5_GPV2(_nr) (EXYNOS5_GPIO_V2_START + (_nr)) 273 #define EXYNOS5_GPV3(_nr) (EXYNOS5_GPIO_V3_START + (_nr)) 274 #define EXYNOS5_GPV4(_nr) (EXYNOS5_GPIO_V4_START + (_nr)) 275 #define EXYNOS5_GPZ(_nr) (EXYNOS5_GPIO_Z_START + (_nr)) 276 277 /* the end of the EXYNOS5 specific gpios */ 278 279 #define EXYNOS5_GPIO_END (EXYNOS5_GPZ(EXYNOS5_GPIO_Z_NR) + 1) 280 281 /* actually, EXYNOS5_GPIO_END is bigger than EXYNOS4 */ 282 283 #define S3C_GPIO_END (EXYNOS5_GPIO_END) 284 285 /* define the number of gpios */ 286 287 #define ARCH_NR_GPIOS (CONFIG_SAMSUNG_GPIO_EXTRA + S3C_GPIO_END) 288 289 #endif /* __ASM_ARCH_GPIO_H */ 290