1// SPDX-License-Identifier: GPL-2.0 2/* 3 * Samsung's Exynos4412 SoCs pin-mux and pin-config device tree source 4 * 5 * Copyright (c) 2012 Samsung Electronics Co., Ltd. 6 * http://www.samsung.com 7 * 8 * Samsung's Exynos4412 SoCs pin-mux and pin-config optiosn are listed as device 9 * tree nodes are listed in this file. 10 */ 11 12#include "exynos-pinctrl.h" 13 14#define PIN_SLP(_pin, _mode, _pull) \ 15 _pin { \ 16 samsung,pins = #_pin; \ 17 samsung,pin-con-pdn = <EXYNOS_PIN_PDN_ ##_mode>; \ 18 samsung,pin-pud-pdn = <EXYNOS_PIN_PULL_ ##_pull>; \ 19 } 20 21&pinctrl_0 { 22 gpa0: gpa0-gpio-bank { 23 gpio-controller; 24 #gpio-cells = <2>; 25 26 interrupt-controller; 27 #interrupt-cells = <2>; 28 }; 29 30 gpa1: gpa1-gpio-bank { 31 gpio-controller; 32 #gpio-cells = <2>; 33 34 interrupt-controller; 35 #interrupt-cells = <2>; 36 }; 37 38 gpb: gpb-gpio-bank { 39 gpio-controller; 40 #gpio-cells = <2>; 41 42 interrupt-controller; 43 #interrupt-cells = <2>; 44 }; 45 46 gpc0: gpc0-gpio-bank { 47 gpio-controller; 48 #gpio-cells = <2>; 49 50 interrupt-controller; 51 #interrupt-cells = <2>; 52 }; 53 54 gpc1: gpc1-gpio-bank { 55 gpio-controller; 56 #gpio-cells = <2>; 57 58 interrupt-controller; 59 #interrupt-cells = <2>; 60 }; 61 62 gpd0: gpd0-gpio-bank { 63 gpio-controller; 64 #gpio-cells = <2>; 65 66 interrupt-controller; 67 #interrupt-cells = <2>; 68 }; 69 70 gpd1: gpd1-gpio-bank { 71 gpio-controller; 72 #gpio-cells = <2>; 73 74 interrupt-controller; 75 #interrupt-cells = <2>; 76 }; 77 78 gpf0: gpf0-gpio-bank { 79 gpio-controller; 80 #gpio-cells = <2>; 81 82 interrupt-controller; 83 #interrupt-cells = <2>; 84 }; 85 86 gpf1: gpf1-gpio-bank { 87 gpio-controller; 88 #gpio-cells = <2>; 89 90 interrupt-controller; 91 #interrupt-cells = <2>; 92 }; 93 94 gpf2: gpf2-gpio-bank { 95 gpio-controller; 96 #gpio-cells = <2>; 97 98 interrupt-controller; 99 #interrupt-cells = <2>; 100 }; 101 102 gpf3: gpf3-gpio-bank { 103 gpio-controller; 104 #gpio-cells = <2>; 105 106 interrupt-controller; 107 #interrupt-cells = <2>; 108 }; 109 110 gpj0: gpj0-gpio-bank { 111 gpio-controller; 112 #gpio-cells = <2>; 113 114 interrupt-controller; 115 #interrupt-cells = <2>; 116 }; 117 118 gpj1: gpj1-gpio-bank { 119 gpio-controller; 120 #gpio-cells = <2>; 121 122 interrupt-controller; 123 #interrupt-cells = <2>; 124 }; 125 126 uart0_data: uart0-data-pins { 127 samsung,pins = "gpa0-0", "gpa0-1"; 128 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 129 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 130 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 131 }; 132 133 uart0_fctl: uart0-fctl-pins { 134 samsung,pins = "gpa0-2", "gpa0-3"; 135 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 136 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 137 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 138 }; 139 140 uart1_data: uart1-data-pins { 141 samsung,pins = "gpa0-4", "gpa0-5"; 142 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 143 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 144 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 145 }; 146 147 uart1_fctl: uart1-fctl-pins { 148 samsung,pins = "gpa0-6", "gpa0-7"; 149 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 150 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 151 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 152 }; 153 154 i2c2_bus: i2c2-bus-pins { 155 samsung,pins = "gpa0-6", "gpa0-7"; 156 samsung,pin-function = <EXYNOS_PIN_FUNC_3>; 157 samsung,pin-pud = <EXYNOS_PIN_PULL_UP>; 158 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 159 }; 160 161 uart2_data: uart2-data-pins { 162 samsung,pins = "gpa1-0", "gpa1-1"; 163 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 164 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 165 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 166 }; 167 168 uart2_fctl: uart2-fctl-pins { 169 samsung,pins = "gpa1-2", "gpa1-3"; 170 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 171 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 172 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 173 }; 174 175 uart_audio_a: uart-audio-a-pins { 176 samsung,pins = "gpa1-0", "gpa1-1"; 177 samsung,pin-function = <EXYNOS_PIN_FUNC_4>; 178 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 179 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 180 }; 181 182 i2c3_bus: i2c3-bus-pins { 183 samsung,pins = "gpa1-2", "gpa1-3"; 184 samsung,pin-function = <EXYNOS_PIN_FUNC_3>; 185 samsung,pin-pud = <EXYNOS_PIN_PULL_UP>; 186 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 187 }; 188 189 uart3_data: uart3-data-pins { 190 samsung,pins = "gpa1-4", "gpa1-5"; 191 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 192 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 193 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 194 }; 195 196 uart_audio_b: uart-audio-b-pins { 197 samsung,pins = "gpa1-4", "gpa1-5"; 198 samsung,pin-function = <EXYNOS_PIN_FUNC_4>; 199 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 200 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 201 }; 202 203 spi0_bus: spi0-bus-pins { 204 samsung,pins = "gpb-0", "gpb-2", "gpb-3"; 205 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 206 samsung,pin-pud = <EXYNOS_PIN_PULL_UP>; 207 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 208 }; 209 210 i2c4_bus: i2c4-bus-pins { 211 samsung,pins = "gpb-0", "gpb-1"; 212 samsung,pin-function = <EXYNOS_PIN_FUNC_3>; 213 samsung,pin-pud = <EXYNOS_PIN_PULL_UP>; 214 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 215 }; 216 217 spi1_bus: spi1-bus-pins { 218 samsung,pins = "gpb-4", "gpb-6", "gpb-7"; 219 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 220 samsung,pin-pud = <EXYNOS_PIN_PULL_UP>; 221 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 222 }; 223 224 i2c5_bus: i2c5-bus-pins { 225 samsung,pins = "gpb-2", "gpb-3"; 226 samsung,pin-function = <EXYNOS_PIN_FUNC_3>; 227 samsung,pin-pud = <EXYNOS_PIN_PULL_UP>; 228 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 229 }; 230 231 i2s1_bus: i2s1-bus-pins { 232 samsung,pins = "gpc0-0", "gpc0-1", "gpc0-2", "gpc0-3", 233 "gpc0-4"; 234 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 235 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 236 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 237 }; 238 239 pcm1_bus: pcm1-bus-pins { 240 samsung,pins = "gpc0-0", "gpc0-1", "gpc0-2", "gpc0-3", 241 "gpc0-4"; 242 samsung,pin-function = <EXYNOS_PIN_FUNC_3>; 243 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 244 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 245 }; 246 247 ac97_bus: ac97-bus-pins { 248 samsung,pins = "gpc0-0", "gpc0-1", "gpc0-2", "gpc0-3", 249 "gpc0-4"; 250 samsung,pin-function = <EXYNOS_PIN_FUNC_4>; 251 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 252 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 253 }; 254 255 i2s2_bus: i2s2-bus-pins { 256 samsung,pins = "gpc1-0", "gpc1-1", "gpc1-2", "gpc1-3", 257 "gpc1-4"; 258 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 259 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 260 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 261 }; 262 263 pcm2_bus: pcm2-bus-pins { 264 samsung,pins = "gpc1-0", "gpc1-1", "gpc1-2", "gpc1-3", 265 "gpc1-4"; 266 samsung,pin-function = <EXYNOS_PIN_FUNC_3>; 267 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 268 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 269 }; 270 271 spdif_bus: spdif-bus-pins { 272 samsung,pins = "gpc1-0", "gpc1-1"; 273 samsung,pin-function = <EXYNOS_PIN_FUNC_4>; 274 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 275 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 276 }; 277 278 i2c6_bus: i2c6-bus-pins { 279 samsung,pins = "gpc1-3", "gpc1-4"; 280 samsung,pin-function = <EXYNOS_PIN_FUNC_4>; 281 samsung,pin-pud = <EXYNOS_PIN_PULL_UP>; 282 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 283 }; 284 285 spi2_bus: spi2-bus-pins { 286 samsung,pins = "gpc1-1", "gpc1-3", "gpc1-4"; 287 samsung,pin-function = <EXYNOS_PIN_FUNC_5>; 288 samsung,pin-pud = <EXYNOS_PIN_PULL_UP>; 289 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 290 }; 291 292 pwm0_out: pwm0-out-pins { 293 samsung,pins = "gpd0-0"; 294 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 295 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 296 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 297 }; 298 299 pwm1_out: pwm1-out-pins { 300 samsung,pins = "gpd0-1"; 301 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 302 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 303 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 304 }; 305 306 lcd_ctrl: lcd-ctrl-pins { 307 samsung,pins = "gpd0-0", "gpd0-1"; 308 samsung,pin-function = <EXYNOS_PIN_FUNC_3>; 309 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 310 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 311 }; 312 313 i2c7_bus: i2c7-bus-pins { 314 samsung,pins = "gpd0-2", "gpd0-3"; 315 samsung,pin-function = <EXYNOS_PIN_FUNC_3>; 316 samsung,pin-pud = <EXYNOS_PIN_PULL_UP>; 317 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 318 }; 319 320 pwm2_out: pwm2-out-pins { 321 samsung,pins = "gpd0-2"; 322 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 323 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 324 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 325 }; 326 327 pwm3_out: pwm3-out-pins { 328 samsung,pins = "gpd0-3"; 329 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 330 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 331 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 332 }; 333 334 i2c0_bus: i2c0-bus-pins { 335 samsung,pins = "gpd1-0", "gpd1-1"; 336 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 337 samsung,pin-pud = <EXYNOS_PIN_PULL_UP>; 338 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 339 }; 340 341 mipi0_clk: mipi0-clk-pins { 342 samsung,pins = "gpd1-0", "gpd1-1"; 343 samsung,pin-function = <EXYNOS_PIN_FUNC_3>; 344 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 345 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 346 }; 347 348 i2c1_bus: i2c1-bus-pins { 349 samsung,pins = "gpd1-2", "gpd1-3"; 350 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 351 samsung,pin-pud = <EXYNOS_PIN_PULL_UP>; 352 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 353 }; 354 355 mipi1_clk: mipi1-clk-pins { 356 samsung,pins = "gpd1-2", "gpd1-3"; 357 samsung,pin-function = <EXYNOS_PIN_FUNC_3>; 358 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 359 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 360 }; 361 362 lcd_clk: lcd-clk-pins { 363 samsung,pins = "gpf0-0", "gpf0-1", "gpf0-2", "gpf0-3"; 364 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 365 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 366 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 367 }; 368 369 lcd_data16: lcd-data-width16-pins { 370 samsung,pins = "gpf0-7", "gpf1-0", "gpf1-1", "gpf1-2", 371 "gpf1-3", "gpf1-6", "gpf1-7", "gpf2-0", 372 "gpf2-1", "gpf2-2", "gpf2-3", "gpf2-7", 373 "gpf3-0", "gpf3-1", "gpf3-2", "gpf3-3"; 374 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 375 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 376 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 377 }; 378 379 lcd_data18: lcd-data-width18-pins { 380 samsung,pins = "gpf0-6", "gpf0-7", "gpf1-0", "gpf1-1", 381 "gpf1-2", "gpf1-3", "gpf1-6", "gpf1-7", 382 "gpf2-0", "gpf2-1", "gpf2-2", "gpf2-3", 383 "gpf2-6", "gpf2-7", "gpf3-0", "gpf3-1", 384 "gpf3-2", "gpf3-3"; 385 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 386 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 387 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 388 }; 389 390 lcd_data24: lcd-data-width24-pins { 391 samsung,pins = "gpf0-4", "gpf0-5", "gpf0-6", "gpf0-7", 392 "gpf1-0", "gpf1-1", "gpf1-2", "gpf1-3", 393 "gpf1-4", "gpf1-5", "gpf1-6", "gpf1-7", 394 "gpf2-0", "gpf2-1", "gpf2-2", "gpf2-3", 395 "gpf2-4", "gpf2-5", "gpf2-6", "gpf2-7", 396 "gpf3-0", "gpf3-1", "gpf3-2", "gpf3-3"; 397 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 398 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 399 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 400 }; 401 402 lcd_ldi: lcd-ldi-pins { 403 samsung,pins = "gpf3-4"; 404 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 405 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 406 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 407 }; 408 409 cam_port_a_io: cam-port-a-io-pins { 410 samsung,pins = "gpj0-0", "gpj0-1", "gpj0-2", "gpj0-3", 411 "gpj0-4", "gpj0-5", "gpj0-6", "gpj0-7", 412 "gpj1-0", "gpj1-1", "gpj1-2", "gpj1-4"; 413 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 414 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 415 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 416 }; 417 418 cam_port_a_clk_active: cam-port-a-clk-active-pins { 419 samsung,pins = "gpj1-3"; 420 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 421 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 422 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>; 423 }; 424 425 cam_port_a_clk_idle: cam-port-a-clk-idle-pins { 426 samsung,pins = "gpj1-3"; 427 samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>; 428 samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>; 429 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 430 }; 431}; 432 433&pinctrl_1 { 434 gpk0: gpk0-gpio-bank { 435 gpio-controller; 436 #gpio-cells = <2>; 437 438 interrupt-controller; 439 #interrupt-cells = <2>; 440 }; 441 442 gpk1: gpk1-gpio-bank { 443 gpio-controller; 444 #gpio-cells = <2>; 445 446 interrupt-controller; 447 #interrupt-cells = <2>; 448 }; 449 450 gpk2: gpk2-gpio-bank { 451 gpio-controller; 452 #gpio-cells = <2>; 453 454 interrupt-controller; 455 #interrupt-cells = <2>; 456 }; 457 458 gpk3: gpk3-gpio-bank { 459 gpio-controller; 460 #gpio-cells = <2>; 461 462 interrupt-controller; 463 #interrupt-cells = <2>; 464 }; 465 466 gpl0: gpl0-gpio-bank { 467 gpio-controller; 468 #gpio-cells = <2>; 469 470 interrupt-controller; 471 #interrupt-cells = <2>; 472 }; 473 474 gpl1: gpl1-gpio-bank { 475 gpio-controller; 476 #gpio-cells = <2>; 477 478 interrupt-controller; 479 #interrupt-cells = <2>; 480 }; 481 482 gpl2: gpl2-gpio-bank { 483 gpio-controller; 484 #gpio-cells = <2>; 485 486 interrupt-controller; 487 #interrupt-cells = <2>; 488 }; 489 490 gpm0: gpm0-gpio-bank { 491 gpio-controller; 492 #gpio-cells = <2>; 493 494 interrupt-controller; 495 #interrupt-cells = <2>; 496 }; 497 498 gpm1: gpm1-gpio-bank { 499 gpio-controller; 500 #gpio-cells = <2>; 501 502 interrupt-controller; 503 #interrupt-cells = <2>; 504 }; 505 506 gpm2: gpm2-gpio-bank { 507 gpio-controller; 508 #gpio-cells = <2>; 509 510 interrupt-controller; 511 #interrupt-cells = <2>; 512 }; 513 514 gpm3: gpm3-gpio-bank { 515 gpio-controller; 516 #gpio-cells = <2>; 517 518 interrupt-controller; 519 #interrupt-cells = <2>; 520 }; 521 522 gpm4: gpm4-gpio-bank { 523 gpio-controller; 524 #gpio-cells = <2>; 525 526 interrupt-controller; 527 #interrupt-cells = <2>; 528 }; 529 530 gpy0: gpy0-gpio-bank { 531 gpio-controller; 532 #gpio-cells = <2>; 533 }; 534 535 gpy1: gpy1-gpio-bank { 536 gpio-controller; 537 #gpio-cells = <2>; 538 }; 539 540 gpy2: gpy2-gpio-bank { 541 gpio-controller; 542 #gpio-cells = <2>; 543 }; 544 545 gpy3: gpy3-gpio-bank { 546 gpio-controller; 547 #gpio-cells = <2>; 548 }; 549 550 gpy4: gpy4-gpio-bank { 551 gpio-controller; 552 #gpio-cells = <2>; 553 }; 554 555 gpy5: gpy5-gpio-bank { 556 gpio-controller; 557 #gpio-cells = <2>; 558 }; 559 560 gpy6: gpy6-gpio-bank { 561 gpio-controller; 562 #gpio-cells = <2>; 563 }; 564 565 gpx0: gpx0-gpio-bank { 566 gpio-controller; 567 #gpio-cells = <2>; 568 569 interrupt-controller; 570 interrupt-parent = <&gic>; 571 interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>, 572 <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>, 573 <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>, 574 <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>, 575 <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>, 576 <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>, 577 <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>, 578 <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>; 579 #interrupt-cells = <2>; 580 }; 581 582 gpx1: gpx1-gpio-bank { 583 gpio-controller; 584 #gpio-cells = <2>; 585 586 interrupt-controller; 587 interrupt-parent = <&gic>; 588 interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>, 589 <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>, 590 <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>, 591 <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>, 592 <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>, 593 <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>, 594 <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>, 595 <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>; 596 #interrupt-cells = <2>; 597 }; 598 599 gpx2: gpx2-gpio-bank { 600 gpio-controller; 601 #gpio-cells = <2>; 602 603 interrupt-controller; 604 #interrupt-cells = <2>; 605 }; 606 607 gpx3: gpx3-gpio-bank { 608 gpio-controller; 609 #gpio-cells = <2>; 610 611 interrupt-controller; 612 #interrupt-cells = <2>; 613 }; 614 615 sd0_clk: sd0-clk-pins { 616 samsung,pins = "gpk0-0"; 617 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 618 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 619 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>; 620 }; 621 622 sd0_cmd: sd0-cmd-pins { 623 samsung,pins = "gpk0-1"; 624 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 625 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 626 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>; 627 }; 628 629 sd0_cd: sd0-cd-pins { 630 samsung,pins = "gpk0-2"; 631 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 632 samsung,pin-pud = <EXYNOS_PIN_PULL_UP>; 633 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>; 634 }; 635 636 sd0_bus1: sd0-bus-width1-pins { 637 samsung,pins = "gpk0-3"; 638 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 639 samsung,pin-pud = <EXYNOS_PIN_PULL_UP>; 640 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>; 641 }; 642 643 sd0_bus4: sd0-bus-width4-pins { 644 samsung,pins = "gpk0-3", "gpk0-4", "gpk0-5", "gpk0-6"; 645 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 646 samsung,pin-pud = <EXYNOS_PIN_PULL_UP>; 647 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>; 648 }; 649 650 sd0_bus8: sd0-bus-width8-pins { 651 samsung,pins = "gpk1-3", "gpk1-4", "gpk1-5", "gpk1-6"; 652 samsung,pin-function = <EXYNOS_PIN_FUNC_3>; 653 samsung,pin-pud = <EXYNOS_PIN_PULL_UP>; 654 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>; 655 }; 656 657 sd4_clk: sd4-clk-pins { 658 samsung,pins = "gpk0-0"; 659 samsung,pin-function = <EXYNOS_PIN_FUNC_3>; 660 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 661 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>; 662 }; 663 664 sd4_cmd: sd4-cmd-pins { 665 samsung,pins = "gpk0-1"; 666 samsung,pin-function = <EXYNOS_PIN_FUNC_3>; 667 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 668 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>; 669 }; 670 671 sd4_cd: sd4-cd-pins { 672 samsung,pins = "gpk0-2"; 673 samsung,pin-function = <EXYNOS_PIN_FUNC_3>; 674 samsung,pin-pud = <EXYNOS_PIN_PULL_UP>; 675 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>; 676 }; 677 678 sd4_bus1: sd4-bus-width1-pins { 679 samsung,pins = "gpk0-3"; 680 samsung,pin-function = <EXYNOS_PIN_FUNC_3>; 681 samsung,pin-pud = <EXYNOS_PIN_PULL_UP>; 682 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>; 683 }; 684 685 sd4_bus4: sd4-bus-width4-pins { 686 samsung,pins = "gpk0-3", "gpk0-4", "gpk0-5", "gpk0-6"; 687 samsung,pin-function = <EXYNOS_PIN_FUNC_3>; 688 samsung,pin-pud = <EXYNOS_PIN_PULL_UP>; 689 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>; 690 }; 691 692 sd4_bus8: sd4-bus-width8-pins { 693 samsung,pins = "gpk1-3", "gpk1-4", "gpk1-5", "gpk1-6"; 694 samsung,pin-function = <EXYNOS_PIN_FUNC_4>; 695 samsung,pin-pud = <EXYNOS_PIN_PULL_UP>; 696 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>; 697 }; 698 699 sd1_clk: sd1-clk-pins { 700 samsung,pins = "gpk1-0"; 701 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 702 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 703 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>; 704 }; 705 706 sd1_cmd: sd1-cmd-pins { 707 samsung,pins = "gpk1-1"; 708 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 709 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 710 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>; 711 }; 712 713 sd1_cd: sd1-cd-pins { 714 samsung,pins = "gpk1-2"; 715 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 716 samsung,pin-pud = <EXYNOS_PIN_PULL_UP>; 717 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>; 718 }; 719 720 sd1_bus1: sd1-bus-width1-pins { 721 samsung,pins = "gpk1-3"; 722 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 723 samsung,pin-pud = <EXYNOS_PIN_PULL_UP>; 724 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>; 725 }; 726 727 sd1_bus4: sd1-bus-width4-pins { 728 samsung,pins = "gpk1-3", "gpk1-4", "gpk1-5", "gpk1-6"; 729 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 730 samsung,pin-pud = <EXYNOS_PIN_PULL_UP>; 731 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>; 732 }; 733 734 sd2_clk: sd2-clk-pins { 735 samsung,pins = "gpk2-0"; 736 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 737 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 738 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>; 739 }; 740 741 sd2_cmd: sd2-cmd-pins { 742 samsung,pins = "gpk2-1"; 743 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 744 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 745 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>; 746 }; 747 748 sd2_cd: sd2-cd-pins { 749 samsung,pins = "gpk2-2"; 750 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 751 samsung,pin-pud = <EXYNOS_PIN_PULL_UP>; 752 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>; 753 }; 754 755 sd2_bus1: sd2-bus-width1-pins { 756 samsung,pins = "gpk2-3"; 757 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 758 samsung,pin-pud = <EXYNOS_PIN_PULL_UP>; 759 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>; 760 }; 761 762 sd2_bus4: sd2-bus-width4-pins { 763 samsung,pins = "gpk2-3", "gpk2-4", "gpk2-5", "gpk2-6"; 764 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 765 samsung,pin-pud = <EXYNOS_PIN_PULL_UP>; 766 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>; 767 }; 768 769 sd2_bus8: sd2-bus-width8-pins { 770 samsung,pins = "gpk3-3", "gpk3-4", "gpk3-5", "gpk3-6"; 771 samsung,pin-function = <EXYNOS_PIN_FUNC_3>; 772 samsung,pin-pud = <EXYNOS_PIN_PULL_UP>; 773 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>; 774 }; 775 776 sd3_clk: sd3-clk-pins { 777 samsung,pins = "gpk3-0"; 778 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 779 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 780 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>; 781 }; 782 783 sd3_cmd: sd3-cmd-pins { 784 samsung,pins = "gpk3-1"; 785 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 786 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 787 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>; 788 }; 789 790 sd3_cd: sd3-cd-pins { 791 samsung,pins = "gpk3-2"; 792 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 793 samsung,pin-pud = <EXYNOS_PIN_PULL_UP>; 794 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>; 795 }; 796 797 sd3_bus1: sd3-bus-width1-pins { 798 samsung,pins = "gpk3-3"; 799 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 800 samsung,pin-pud = <EXYNOS_PIN_PULL_UP>; 801 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>; 802 }; 803 804 sd3_bus4: sd3-bus-width4-pins { 805 samsung,pins = "gpk3-3", "gpk3-4", "gpk3-5", "gpk3-6"; 806 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 807 samsung,pin-pud = <EXYNOS_PIN_PULL_UP>; 808 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>; 809 }; 810 811 cam_port_b_io: cam-port-b-io-pins { 812 samsung,pins = "gpm0-0", "gpm0-1", "gpm0-2", "gpm0-3", 813 "gpm0-4", "gpm0-5", "gpm0-6", "gpm0-7", 814 "gpm1-0", "gpm1-1", "gpm2-0", "gpm2-1"; 815 samsung,pin-function = <EXYNOS_PIN_FUNC_3>; 816 samsung,pin-pud = <EXYNOS_PIN_PULL_UP>; 817 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 818 }; 819 820 cam_port_b_clk_active: cam-port-b-clk-active-pins { 821 samsung,pins = "gpm2-2"; 822 samsung,pin-function = <EXYNOS_PIN_FUNC_3>; 823 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 824 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>; 825 }; 826 827 cam_port_b_clk_idle: cam-port-b-clk-idle-pins { 828 samsung,pins = "gpm2-2"; 829 samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>; 830 samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>; 831 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 832 }; 833 834 eint0: ext-int0-pins { 835 samsung,pins = "gpx0-0"; 836 samsung,pin-function = <EXYNOS_PIN_FUNC_F>; 837 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 838 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 839 }; 840 841 eint8: ext-int8-pins { 842 samsung,pins = "gpx1-0"; 843 samsung,pin-function = <EXYNOS_PIN_FUNC_F>; 844 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 845 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 846 }; 847 848 eint15: ext-int15-pins { 849 samsung,pins = "gpx1-7"; 850 samsung,pin-function = <EXYNOS_PIN_FUNC_F>; 851 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 852 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 853 }; 854 855 eint16: ext-int16-pins { 856 samsung,pins = "gpx2-0"; 857 samsung,pin-function = <EXYNOS_PIN_FUNC_F>; 858 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 859 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 860 }; 861 862 eint31: ext-int31-pins { 863 samsung,pins = "gpx3-7"; 864 samsung,pin-function = <EXYNOS_PIN_FUNC_F>; 865 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 866 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 867 }; 868 869 fimc_is_i2c0: fimc-is-i2c0-pins { 870 samsung,pins = "gpm4-0", "gpm4-1"; 871 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 872 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 873 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 874 }; 875 876 fimc_is_i2c1: fimc-is-i2c1-pins { 877 samsung,pins = "gpm4-2", "gpm4-3"; 878 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 879 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 880 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 881 }; 882 883 fimc_is_uart: fimc-is-uart-pins { 884 samsung,pins = "gpm3-5", "gpm3-7"; 885 samsung,pin-function = <EXYNOS_PIN_FUNC_3>; 886 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 887 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 888 }; 889 890 hdmi_cec: hdmi-cec-pins { 891 samsung,pins = "gpx3-6"; 892 samsung,pin-function = <EXYNOS_PIN_FUNC_3>; 893 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 894 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 895 }; 896}; 897 898&pinctrl_2 { 899 gpz: gpz-gpio-bank { 900 gpio-controller; 901 #gpio-cells = <2>; 902 903 interrupt-controller; 904 #interrupt-cells = <2>; 905 }; 906 907 i2s0_bus: i2s0-bus-pins { 908 samsung,pins = "gpz-0", "gpz-1", "gpz-2", "gpz-3", 909 "gpz-4", "gpz-5", "gpz-6"; 910 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 911 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 912 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 913 }; 914 915 pcm0_bus: pcm0-bus-pins { 916 samsung,pins = "gpz-0", "gpz-1", "gpz-2", "gpz-3", 917 "gpz-4"; 918 samsung,pin-function = <EXYNOS_PIN_FUNC_3>; 919 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 920 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 921 }; 922}; 923 924&pinctrl_3 { 925 gpv0: gpv0-gpio-bank { 926 gpio-controller; 927 #gpio-cells = <2>; 928 929 interrupt-controller; 930 #interrupt-cells = <2>; 931 }; 932 933 gpv1: gpv1-gpio-bank { 934 gpio-controller; 935 #gpio-cells = <2>; 936 937 interrupt-controller; 938 #interrupt-cells = <2>; 939 }; 940 941 gpv2: gpv2-gpio-bank { 942 gpio-controller; 943 #gpio-cells = <2>; 944 945 interrupt-controller; 946 #interrupt-cells = <2>; 947 }; 948 949 gpv3: gpv3-gpio-bank { 950 gpio-controller; 951 #gpio-cells = <2>; 952 953 interrupt-controller; 954 #interrupt-cells = <2>; 955 }; 956 957 gpv4: gpv4-gpio-bank { 958 gpio-controller; 959 #gpio-cells = <2>; 960 961 interrupt-controller; 962 #interrupt-cells = <2>; 963 }; 964 965 c2c_bus: c2c-bus-pins { 966 samsung,pins = "gpv0-0", "gpv0-1", "gpv0-2", "gpv0-3", 967 "gpv0-4", "gpv0-5", "gpv0-6", "gpv0-7", 968 "gpv1-0", "gpv1-1", "gpv1-2", "gpv1-3", 969 "gpv1-4", "gpv1-5", "gpv1-6", "gpv1-7", 970 "gpv2-0", "gpv2-1", "gpv2-2", "gpv2-3", 971 "gpv2-4", "gpv2-5", "gpv2-6", "gpv2-7", 972 "gpv3-0", "gpv3-1", "gpv3-2", "gpv3-3", 973 "gpv3-4", "gpv3-5", "gpv3-6", "gpv3-7", 974 "gpv4-0", "gpv4-1"; 975 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 976 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 977 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 978 }; 979}; 980