1/* 2 * Samsung's Exynos3250 SoCs pin-mux and pin-config device tree source 3 * 4 * Copyright (c) 2014 Samsung Electronics Co., Ltd. 5 * http://www.samsung.com 6 * 7 * Samsung's Exynos3250 SoCs pin-mux and pin-config optiosn are listed as device 8 * tree nodes are listed in this file. 9 * 10 * This program is free software; you can redistribute it and/or modify 11 * it under the terms of the GNU General Public License version 2 as 12 * published by the Free Software Foundation. 13*/ 14 15#define PIN_PULL_NONE 0 16#define PIN_PULL_DOWN 1 17#define PIN_PULL_UP 3 18 19#define PIN_PDN_OUT0 0 20#define PIN_PDN_OUT1 1 21#define PIN_PDN_INPUT 2 22#define PIN_PDN_PREV 3 23 24#define PIN_SLP(_pin, _mode, _pull) \ 25 _pin { \ 26 samsung,pins = #_pin; \ 27 samsung,pin-con-pdn = <PIN_PDN_ ##_mode>; \ 28 samsung,pin-pud-pdn = <PIN_PULL_ ##_pull>; \ 29 } 30 31&pinctrl_0 { 32 gpa0: gpa0 { 33 gpio-controller; 34 #gpio-cells = <2>; 35 36 interrupt-controller; 37 #interrupt-cells = <2>; 38 }; 39 40 gpa1: gpa1 { 41 gpio-controller; 42 #gpio-cells = <2>; 43 44 interrupt-controller; 45 #interrupt-cells = <2>; 46 }; 47 48 gpb: gpb { 49 gpio-controller; 50 #gpio-cells = <2>; 51 52 interrupt-controller; 53 #interrupt-cells = <2>; 54 }; 55 56 gpc0: gpc0 { 57 gpio-controller; 58 #gpio-cells = <2>; 59 60 interrupt-controller; 61 #interrupt-cells = <2>; 62 }; 63 64 gpc1: gpc1 { 65 gpio-controller; 66 #gpio-cells = <2>; 67 68 interrupt-controller; 69 #interrupt-cells = <2>; 70 }; 71 72 gpd0: gpd0 { 73 gpio-controller; 74 #gpio-cells = <2>; 75 76 interrupt-controller; 77 #interrupt-cells = <2>; 78 }; 79 80 gpd1: gpd1 { 81 gpio-controller; 82 #gpio-cells = <2>; 83 84 interrupt-controller; 85 #interrupt-cells = <2>; 86 }; 87 88 uart0_data: uart0-data { 89 samsung,pins = "gpa0-0", "gpa0-1"; 90 samsung,pin-function = <0x2>; 91 samsung,pin-pud = <0>; 92 samsung,pin-drv = <0>; 93 }; 94 95 uart0_fctl: uart0-fctl { 96 samsung,pins = "gpa0-2", "gpa0-3"; 97 samsung,pin-function = <2>; 98 samsung,pin-pud = <0>; 99 samsung,pin-drv = <0>; 100 }; 101 102 uart1_data: uart1-data { 103 samsung,pins = "gpa0-4", "gpa0-5"; 104 samsung,pin-function = <2>; 105 samsung,pin-pud = <0>; 106 samsung,pin-drv = <0>; 107 }; 108 109 uart1_fctl: uart1-fctl { 110 samsung,pins = "gpa0-6", "gpa0-7"; 111 samsung,pin-function = <2>; 112 samsung,pin-pud = <0>; 113 samsung,pin-drv = <0>; 114 }; 115 116 i2c2_bus: i2c2-bus { 117 samsung,pins = "gpa0-6", "gpa0-7"; 118 samsung,pin-function = <3>; 119 samsung,pin-pud = <3>; 120 samsung,pin-drv = <0>; 121 }; 122 123 i2c3_bus: i2c3-bus { 124 samsung,pins = "gpa1-2", "gpa1-3"; 125 samsung,pin-function = <3>; 126 samsung,pin-pud = <3>; 127 samsung,pin-drv = <0>; 128 }; 129 130 spi0_bus: spi0-bus { 131 samsung,pins = "gpb-0", "gpb-2", "gpb-3"; 132 samsung,pin-function = <2>; 133 samsung,pin-pud = <3>; 134 samsung,pin-drv = <0>; 135 }; 136 137 i2c4_bus: i2c4-bus { 138 samsung,pins = "gpb-0", "gpb-1"; 139 samsung,pin-function = <3>; 140 samsung,pin-pud = <3>; 141 samsung,pin-drv = <0>; 142 }; 143 144 spi1_bus: spi1-bus { 145 samsung,pins = "gpb-4", "gpb-6", "gpb-7"; 146 samsung,pin-function = <2>; 147 samsung,pin-pud = <3>; 148 samsung,pin-drv = <0>; 149 }; 150 151 i2c5_bus: i2c5-bus { 152 samsung,pins = "gpb-2", "gpb-3"; 153 samsung,pin-function = <3>; 154 samsung,pin-pud = <3>; 155 samsung,pin-drv = <0>; 156 }; 157 158 i2s2_bus: i2s2-bus { 159 samsung,pins = "gpc1-0", "gpc1-1", "gpc1-2", "gpc1-3", 160 "gpc1-4"; 161 samsung,pin-function = <2>; 162 samsung,pin-pud = <0>; 163 samsung,pin-drv = <0>; 164 }; 165 166 pcm2_bus: pcm2-bus { 167 samsung,pins = "gpc1-0", "gpc1-1", "gpc1-2", "gpc1-3", 168 "gpc1-4"; 169 samsung,pin-function = <3>; 170 samsung,pin-pud = <0>; 171 samsung,pin-drv = <0>; 172 }; 173 174 i2c6_bus: i2c6-bus { 175 samsung,pins = "gpc1-3", "gpc1-4"; 176 samsung,pin-function = <4>; 177 samsung,pin-pud = <3>; 178 samsung,pin-drv = <0>; 179 }; 180 181 pwm0_out: pwm0-out { 182 samsung,pins = "gpd0-0"; 183 samsung,pin-function = <2>; 184 samsung,pin-pud = <0>; 185 samsung,pin-drv = <0>; 186 }; 187 188 pwm1_out: pwm1-out { 189 samsung,pins = "gpd0-1"; 190 samsung,pin-function = <2>; 191 samsung,pin-pud = <0>; 192 samsung,pin-drv = <0>; 193 }; 194 195 i2c7_bus: i2c7-bus { 196 samsung,pins = "gpd0-2", "gpd0-3"; 197 samsung,pin-function = <3>; 198 samsung,pin-pud = <3>; 199 samsung,pin-drv = <0>; 200 }; 201 202 pwm2_out: pwm2-out { 203 samsung,pins = "gpd0-2"; 204 samsung,pin-function = <2>; 205 samsung,pin-pud = <0>; 206 samsung,pin-drv = <0>; 207 }; 208 209 pwm3_out: pwm3-out { 210 samsung,pins = "gpd0-3"; 211 samsung,pin-function = <2>; 212 samsung,pin-pud = <0>; 213 samsung,pin-drv = <0>; 214 }; 215 216 i2c0_bus: i2c0-bus { 217 samsung,pins = "gpd1-0", "gpd1-1"; 218 samsung,pin-function = <2>; 219 samsung,pin-pud = <3>; 220 samsung,pin-drv = <0>; 221 }; 222 223 mipi0_clk: mipi0-clk { 224 samsung,pins = "gpd1-0", "gpd1-1"; 225 samsung,pin-function = <3>; 226 samsung,pin-pud = <0>; 227 samsung,pin-drv = <0>; 228 }; 229 230 i2c1_bus: i2c1-bus { 231 samsung,pins = "gpd1-2", "gpd1-3"; 232 samsung,pin-function = <2>; 233 samsung,pin-pud = <3>; 234 samsung,pin-drv = <0>; 235 }; 236}; 237 238&pinctrl_1 { 239 gpe0: gpe0 { 240 gpio-controller; 241 #gpio-cells = <2>; 242 }; 243 244 gpe1: gpe1 { 245 gpio-controller; 246 #gpio-cells = <2>; 247 }; 248 249 gpe2: gpe2 { 250 gpio-controller; 251 #gpio-cells = <2>; 252 }; 253 254 gpk0: gpk0 { 255 gpio-controller; 256 #gpio-cells = <2>; 257 258 interrupt-controller; 259 #interrupt-cells = <2>; 260 }; 261 262 gpk1: gpk1 { 263 gpio-controller; 264 #gpio-cells = <2>; 265 266 interrupt-controller; 267 #interrupt-cells = <2>; 268 }; 269 270 gpk2: gpk2 { 271 gpio-controller; 272 #gpio-cells = <2>; 273 274 interrupt-controller; 275 #interrupt-cells = <2>; 276 }; 277 278 gpl0: gpl0 { 279 gpio-controller; 280 #gpio-cells = <2>; 281 282 interrupt-controller; 283 #interrupt-cells = <2>; 284 }; 285 286 gpm0: gpm0 { 287 gpio-controller; 288 #gpio-cells = <2>; 289 290 interrupt-controller; 291 #interrupt-cells = <2>; 292 }; 293 294 gpm1: gpm1 { 295 gpio-controller; 296 #gpio-cells = <2>; 297 298 interrupt-controller; 299 #interrupt-cells = <2>; 300 }; 301 302 gpm2: gpm2 { 303 gpio-controller; 304 #gpio-cells = <2>; 305 306 interrupt-controller; 307 #interrupt-cells = <2>; 308 }; 309 310 gpm3: gpm3 { 311 gpio-controller; 312 #gpio-cells = <2>; 313 314 interrupt-controller; 315 #interrupt-cells = <2>; 316 }; 317 318 gpm4: gpm4 { 319 gpio-controller; 320 #gpio-cells = <2>; 321 322 interrupt-controller; 323 #interrupt-cells = <2>; 324 }; 325 326 gpx0: gpx0 { 327 gpio-controller; 328 #gpio-cells = <2>; 329 330 interrupt-controller; 331 interrupt-parent = <&gic>; 332 interrupts = <0 32 0>, <0 33 0>, <0 34 0>, <0 35 0>, 333 <0 36 0>, <0 37 0>, <0 38 0>, <0 39 0>; 334 #interrupt-cells = <2>; 335 }; 336 337 gpx1: gpx1 { 338 gpio-controller; 339 #gpio-cells = <2>; 340 341 interrupt-controller; 342 interrupt-parent = <&gic>; 343 interrupts = <0 40 0>, <0 41 0>, <0 42 0>, <0 43 0>, 344 <0 44 0>, <0 45 0>, <0 46 0>, <0 47 0>; 345 #interrupt-cells = <2>; 346 }; 347 348 gpx2: gpx2 { 349 gpio-controller; 350 #gpio-cells = <2>; 351 352 interrupt-controller; 353 #interrupt-cells = <2>; 354 }; 355 356 gpx3: gpx3 { 357 gpio-controller; 358 #gpio-cells = <2>; 359 360 interrupt-controller; 361 #interrupt-cells = <2>; 362 }; 363 364 sd0_clk: sd0-clk { 365 samsung,pins = "gpk0-0"; 366 samsung,pin-function = <2>; 367 samsung,pin-pud = <0>; 368 samsung,pin-drv = <3>; 369 }; 370 371 sd0_cmd: sd0-cmd { 372 samsung,pins = "gpk0-1"; 373 samsung,pin-function = <2>; 374 samsung,pin-pud = <0>; 375 samsung,pin-drv = <3>; 376 }; 377 378 sd0_cd: sd0-cd { 379 samsung,pins = "gpk0-2"; 380 samsung,pin-function = <2>; 381 samsung,pin-pud = <3>; 382 samsung,pin-drv = <3>; 383 }; 384 385 sd0_rdqs: sd0-rdqs { 386 samsung,pins = "gpk0-7"; 387 samsung,pin-function = <2>; 388 samsung,pin-pud = <0>; 389 samsung,pin-drv = <3>; 390 }; 391 392 sd0_bus1: sd0-bus-width1 { 393 samsung,pins = "gpk0-3"; 394 samsung,pin-function = <2>; 395 samsung,pin-pud = <3>; 396 samsung,pin-drv = <3>; 397 }; 398 399 sd0_bus4: sd0-bus-width4 { 400 samsung,pins = "gpk0-4", "gpk0-5", "gpk0-6"; 401 samsung,pin-function = <2>; 402 samsung,pin-pud = <3>; 403 samsung,pin-drv = <3>; 404 }; 405 406 sd0_bus8: sd0-bus-width8 { 407 samsung,pins = "gpl0-0", "gpl0-1", "gpl0-2", "gpl0-3"; 408 samsung,pin-function = <2>; 409 samsung,pin-pud = <3>; 410 samsung,pin-drv = <3>; 411 }; 412 413 sd1_clk: sd1-clk { 414 samsung,pins = "gpk1-0"; 415 samsung,pin-function = <2>; 416 samsung,pin-pud = <0>; 417 samsung,pin-drv = <3>; 418 }; 419 420 sd1_cmd: sd1-cmd { 421 samsung,pins = "gpk1-1"; 422 samsung,pin-function = <2>; 423 samsung,pin-pud = <0>; 424 samsung,pin-drv = <3>; 425 }; 426 427 sd1_cd: sd1-cd { 428 samsung,pins = "gpk1-2"; 429 samsung,pin-function = <2>; 430 samsung,pin-pud = <3>; 431 samsung,pin-drv = <3>; 432 }; 433 434 sd1_bus1: sd1-bus-width1 { 435 samsung,pins = "gpk1-3"; 436 samsung,pin-function = <2>; 437 samsung,pin-pud = <3>; 438 samsung,pin-drv = <3>; 439 }; 440 441 sd1_bus4: sd1-bus-width4 { 442 samsung,pins = "gpk1-4", "gpk1-5", "gpk1-6"; 443 samsung,pin-function = <2>; 444 samsung,pin-pud = <3>; 445 samsung,pin-drv = <3>; 446 }; 447 448 cam_port_b_io: cam-port-b-io { 449 samsung,pins = "gpm0-0", "gpm0-1", "gpm0-2", "gpm0-3", 450 "gpm0-4", "gpm0-5", "gpm0-6", "gpm0-7", 451 "gpm1-0", "gpm1-1", "gpm2-0", "gpm2-1"; 452 samsung,pin-function = <3>; 453 samsung,pin-pud = <3>; 454 samsung,pin-drv = <0>; 455 }; 456 457 cam_port_b_clk_active: cam-port-b-clk-active { 458 samsung,pins = "gpm2-2"; 459 samsung,pin-function = <3>; 460 samsung,pin-pud = <0>; 461 samsung,pin-drv = <3>; 462 }; 463 464 cam_port_b_clk_idle: cam-port-b-clk-idle { 465 samsung,pins = "gpm2-2"; 466 samsung,pin-function = <0>; 467 samsung,pin-pud = <0>; 468 samsung,pin-drv = <0>; 469 }; 470 471 fimc_is_i2c0: fimc-is-i2c0 { 472 samsung,pins = "gpm4-0", "gpm4-1"; 473 samsung,pin-function = <2>; 474 samsung,pin-pud = <0>; 475 samsung,pin-drv = <0>; 476 }; 477 478 fimc_is_i2c1: fimc-is-i2c1 { 479 samsung,pins = "gpm4-2", "gpm4-3"; 480 samsung,pin-function = <2>; 481 samsung,pin-pud = <0>; 482 samsung,pin-drv = <0>; 483 }; 484 485 fimc_is_uart: fimc-is-uart { 486 samsung,pins = "gpm3-5", "gpm3-7"; 487 samsung,pin-function = <3>; 488 samsung,pin-pud = <0>; 489 samsung,pin-drv = <0>; 490 }; 491}; 492