1// SPDX-License-Identifier: GPL-2.0 2/* 3 * Samsung's Exynos4412 based p4note device family base DT. 4 * Based on exynos4412-midas.dtsi. 5 * 6 * Copyright (c) 2013 Samsung Electronics Co., Ltd. 7 * http://www.samsung.com 8 */ 9 10/dts-v1/; 11#include "exynos4412.dtsi" 12#include "exynos4412-ppmu-common.dtsi" 13 14#include <dt-bindings/clock/maxim,max77686.h> 15#include <dt-bindings/gpio/gpio.h> 16#include <dt-bindings/input/linux-event-codes.h> 17#include <dt-bindings/interrupt-controller/irq.h> 18#include <dt-bindings/power/summit,smb347-charger.h> 19#include "exynos-pinctrl.h" 20 21/ { 22 compatible = "samsung,p4note", "samsung,exynos4412", "samsung,exynos4"; 23 24 memory@40000000 { 25 device_type = "memory"; 26 reg = <0x40000000 0x80000000>; 27 }; 28 29 aliases { 30 mmc0 = &mshc_0; 31 mmc2 = &sdhci_2; 32 mmc3 = &sdhci_3; 33 }; 34 35 chosen { 36 stdout-path = &serial_2; 37 }; 38 39 firmware@204f000 { 40 compatible = "samsung,secure-firmware"; 41 reg = <0x0204f000 0x1000>; 42 }; 43 44 fixed-rate-clocks { 45 xxti { 46 compatible = "samsung,clock-xxti"; 47 clock-frequency = <0>; 48 }; 49 50 xusbxti { 51 compatible = "samsung,clock-xusbxti"; 52 clock-frequency = <24000000>; 53 }; 54 }; 55 56 gpio-keys { 57 compatible = "gpio-keys"; 58 pinctrl-names = "default"; 59 pinctrl-0 = <&gpio_keys>; 60 61 key-down { 62 gpios = <&gpx2 2 GPIO_ACTIVE_LOW>; 63 linux,code = <KEY_VOLUMEDOWN>; 64 label = "volume down"; 65 debounce-interval = <10>; 66 }; 67 68 key-up { 69 gpios = <&gpx3 3 GPIO_ACTIVE_LOW>; 70 linux,code = <KEY_VOLUMEUP>; 71 label = "volume up"; 72 debounce-interval = <10>; 73 }; 74 75 key-power { 76 gpios = <&gpx2 7 GPIO_ACTIVE_LOW>; 77 linux,code = <KEY_POWER>; 78 label = "power"; 79 debounce-interval = <10>; 80 wakeup-source; 81 }; 82 }; 83 84 voltage-regulator-1 { 85 compatible = "regulator-fixed"; 86 regulator-name = "TSP_LDO1"; 87 pinctrl-names = "default"; 88 pinctrl-0 = <&tsp_reg_gpio_1>; 89 gpios = <&gpm4 5 GPIO_ACTIVE_HIGH>; 90 enable-active-high; 91 regulator-always-on; 92 }; 93 94 voltage-regulator-2 { 95 compatible = "regulator-fixed"; 96 regulator-name = "TSP_LDO2"; 97 pinctrl-names = "default"; 98 pinctrl-0 = <&tsp_reg_gpio_2>; 99 gpios = <&gpb 5 GPIO_ACTIVE_HIGH>; 100 enable-active-high; 101 regulator-always-on; 102 }; 103 104 voltage-regulator-3 { 105 compatible = "regulator-fixed"; 106 regulator-name = "TSP_LDO3"; 107 pinctrl-names = "default"; 108 pinctrl-0 = <&tsp_reg_gpio_3>; 109 gpios = <&gpb 7 GPIO_ACTIVE_HIGH>; 110 startup-delay-us = <20000>; 111 enable-active-high; 112 regulator-always-on; 113 }; 114 115 panel_vdd: voltage-regulator-4 { 116 compatible = "regulator-fixed"; 117 regulator-name = "LCD_ENABLE"; 118 pinctrl-names = "default"; 119 pinctrl-0 = <&lcd_enable>; 120 gpios = <&gpc0 1 GPIO_ACTIVE_HIGH>; 121 enable-active-high; 122 regulator-boot-on; 123 }; 124 125 wlan_pwrseq: sdhci3-pwrseq { 126 compatible = "mmc-pwrseq-simple"; 127 reset-gpios = <&gpm3 5 GPIO_ACTIVE_LOW>; 128 pinctrl-0 = <&wifi_reset>; 129 pinctrl-names = "default"; 130 clocks = <&max77686 MAX77686_CLK_PMIC>; 131 clock-names = "ext_clock"; 132 }; 133 134 battery_cell: battery-cell { 135 compatible = "simple-battery"; 136 device-chemistry = "lithium-ion"; 137 constant-charge-current-max-microamp = <2200000>; 138 precharge-current-microamp = <250000>; 139 charge-term-current-microamp = <250000>; 140 constant-charge-voltage-max-microvolt = <4200000>; 141 }; 142 143 i2c-gpio-1 { 144 compatible = "i2c-gpio"; 145 sda-gpios = <&gpy2 4 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 146 scl-gpios = <&gpy2 5 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 147 i2c-gpio,delay-us = <2>; 148 #address-cells = <1>; 149 #size-cells = <0>; 150 151 magnetometer@c { 152 compatible = "asahi-kasei,ak8975"; 153 reg = <0x0c>; 154 pinctrl-0 = <&ak8975_irq>; 155 pinctrl-names = "default"; 156 interrupt-parent = <&gpm4>; 157 interrupts = <7 IRQ_TYPE_EDGE_RISING>; 158 }; 159 }; 160 161 i2c-gpio-2 { 162 compatible = "i2c-gpio"; 163 sda-gpios = <&gpy0 2 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 164 scl-gpios = <&gpy0 3 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 165 i2c-gpio,delay-us = <2>; 166 #address-cells = <1>; 167 #size-cells = <0>; 168 169 fuel-gauge@36 { 170 compatible = "maxim,max17042"; 171 reg = <0x36>; 172 pinctrl-0 = <&fuel_alert_irq>; 173 pinctrl-names = "default"; 174 interrupt-parent = <&gpx2>; 175 interrupts = <3 IRQ_TYPE_LEVEL_LOW>; 176 maxim,rsns-microohm = <10000>; 177 maxim,over-heat-temp = <600>; 178 maxim,over-volt = <4300>; 179 }; 180 }; 181 182 i2c-gpio-3 { 183 compatible = "i2c-gpio"; 184 sda-gpios = <&gpm4 1 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 185 scl-gpios = <&gpm4 0 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 186 i2c-gpio,delay-us = <5>; 187 #address-cells = <1>; 188 #size-cells = <0>; 189 190 adc@41 { 191 compatible = "st,stmpe811"; 192 reg = <0x41>; 193 pinctrl-0 = <&stmpe_adc_irq>; 194 pinctrl-names = "default"; 195 interrupt-parent = <&gpx0>; 196 interrupts = <1 IRQ_TYPE_LEVEL_LOW>; 197 st,adc-freq = <3>; 198 st,mod-12b = <1>; 199 st,ref-sel = <0>; 200 st,sample-time = <3>; 201 202 adc { 203 compatible = "st,stmpe-adc"; 204 #io-channel-cells = <1>; 205 st,norequest-mask = <0x2f>; 206 }; 207 }; 208 }; 209 210 i2c-gpio-4 { 211 compatible = "i2c-gpio"; 212 sda-gpios = <&gpm2 0 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 213 scl-gpios = <&gpm2 1 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 214 215 i2c-gpio,delay-us = <2>; 216 #address-cells = <1>; 217 #size-cells = <0>; 218 219 power_supply: charger@6 { 220 compatible = "summit,smb347"; 221 reg = <0x6>; 222 summit,enable-usb-charging; 223 summit,enable-charge-control = <SMB3XX_CHG_ENABLE_SW>; 224 summit,fast-voltage-threshold-microvolt = <2600000>; 225 summit,chip-temperature-threshold-celsius = <130>; 226 summit,usb-current-limit-microamp = <1800000>; 227 228 monitored-battery = <&battery_cell>; 229 }; 230 }; 231 232 panel { 233 compatible = "samsung,ltl101al01"; 234 pinctrl-0 = <&lvds_nshdn>; 235 pinctrl-names = "default"; 236 power-supply = <&panel_vdd>; 237 enable-gpios = <&gpm0 5 GPIO_ACTIVE_HIGH>; 238 backlight = <&backlight>; 239 240 port { 241 lcd_ep: endpoint { 242 remote-endpoint = <&fimd_ep>; 243 }; 244 }; 245 }; 246 247 backlight: backlight { 248 compatible = "pwm-backlight"; 249 pinctrl-0 = <&led_bl_reset>; 250 pinctrl-names = "default"; 251 enable-gpios = <&gpm0 1 GPIO_ACTIVE_HIGH>; 252 power-supply = <&panel_vdd>; 253 pwms = <&pwm 1 78770 0>; 254 brightness-levels = <0 48 128 255>; 255 num-interpolated-steps = <8>; 256 default-brightness-level = <12>; 257 }; 258}; 259 260&adc { 261 vdd-supply = <&ldo3_reg>; 262 /* not verified */ 263 status = "okay"; 264}; 265 266&bus_dmc { 267 devfreq-events = <&ppmu_dmc0_3>, <&ppmu_dmc1_3>; 268 vdd-supply = <&buck1_reg>; 269 status = "okay"; 270}; 271 272&bus_acp { 273 devfreq = <&bus_dmc>; 274 status = "okay"; 275}; 276 277&bus_c2c { 278 devfreq = <&bus_dmc>; 279 status = "okay"; 280}; 281 282&bus_leftbus { 283 devfreq-events = <&ppmu_leftbus_3>, <&ppmu_rightbus_3>; 284 vdd-supply = <&buck3_reg>; 285 status = "okay"; 286}; 287 288&bus_rightbus { 289 devfreq = <&bus_leftbus>; 290 status = "okay"; 291}; 292 293&bus_display { 294 devfreq = <&bus_leftbus>; 295 status = "okay"; 296}; 297 298&bus_fsys { 299 devfreq = <&bus_leftbus>; 300 status = "okay"; 301}; 302 303&bus_peri { 304 devfreq = <&bus_leftbus>; 305 status = "okay"; 306}; 307 308&bus_mfc { 309 devfreq = <&bus_leftbus>; 310 status = "okay"; 311}; 312 313&cpu0 { 314 cpu0-supply = <&buck2_reg>; 315}; 316 317&cpu_thermal { 318 cooling-maps { 319 map0 { 320 /* Corresponds to 800MHz at freq_table */ 321 cooling-device = <&cpu0 7 7>, <&cpu1 7 7>, 322 <&cpu2 7 7>, <&cpu3 7 7>; 323 }; 324 map1 { 325 /* Corresponds to 200MHz at freq_table */ 326 cooling-device = <&cpu0 13 13>, <&cpu1 13 13>, 327 <&cpu2 13 13>, <&cpu3 13 13>; 328 }; 329 }; 330}; 331 332&exynos_usbphy { 333 status = "okay"; 334}; 335 336&fimd { 337 pinctrl-0 = <&lcd_clk &lcd_data24>; 338 pinctrl-names = "default"; 339 #address-cells = <1>; 340 #size-cells = <0>; 341 status = "okay"; 342 343 samsung,invert-vclk; 344 345 port@3 { 346 reg = <3>; 347 348 fimd_ep: endpoint { 349 remote-endpoint = <&lcd_ep>; 350 }; 351 }; 352}; 353 354&gpu { 355 mali-supply = <&buck4_reg>; 356 status = "okay"; 357}; 358 359&hsotg { 360 vusb_a-supply = <&ldo12_reg>; 361 dr_mode = "peripheral"; 362 status = "okay"; 363}; 364 365&i2c_3 { 366 samsung,i2c-sda-delay = <100>; 367 samsung,i2c-slave-addr = <0x10>; 368 samsung,i2c-max-bus-freq = <400000>; 369 pinctrl-0 = <&i2c3_bus>; 370 pinctrl-names = "default"; 371 status = "okay"; 372 373 touchscreen@4a { 374 compatible = "atmel,maxtouch"; 375 reg = <0x4a>; 376 pinctrl-0 = <&tsp_rst &tsp_irq>; 377 pinctrl-names = "default"; 378 interrupt-parent = <&gpm2>; 379 interrupts = <3 IRQ_TYPE_LEVEL_LOW>; 380 reset-gpios = <&gpm0 4 GPIO_ACTIVE_LOW>; 381 }; 382}; 383 384&i2c_7 { 385 samsung,i2c-sda-delay = <100>; 386 samsung,i2c-slave-addr = <0x10>; 387 samsung,i2c-max-bus-freq = <400000>; 388 pinctrl-0 = <&i2c7_bus>; 389 pinctrl-names = "default"; 390 status = "okay"; 391 392 max77686: pmic@9 { 393 compatible = "maxim,max77686"; 394 interrupt-parent = <&gpx0>; 395 interrupts = <7 IRQ_TYPE_LEVEL_LOW>; 396 pinctrl-0 = <&max77686_irq>; 397 pinctrl-names = "default"; 398 wakeup-source; 399 reg = <0x09>; 400 #clock-cells = <1>; 401 402 voltage-regulators { 403 ldo1_reg: LDO1 { 404 regulator-name = "ldo1"; 405 regulator-always-on; 406 }; 407 408 ldo2_reg: LDO2 { 409 regulator-name = "ldo2"; 410 regulator-always-on; 411 }; 412 413 /* WM8994 audio */ 414 ldo3_reg: LDO3 { 415 regulator-name = "VCC_1.8V_AP"; 416 regulator-min-microvolt = <1800000>; 417 regulator-max-microvolt = <1800000>; 418 regulator-always-on; 419 regulator-boot-on; 420 421 regulator-state-mem { 422 regulator-on-in-suspend; 423 }; 424 }; 425 426 ldo4_reg: LDO4 { 427 regulator-name = "ldo4"; 428 regulator-always-on; 429 }; 430 431 ldo5_reg: LDO5 { 432 regulator-name = "VCC_1.8V_IO"; 433 regulator-min-microvolt = <1800000>; 434 regulator-max-microvolt = <1800000>; 435 436 regulator-state-mem { 437 regulator-off-in-suspend; 438 }; 439 }; 440 441 ldo6_reg: LDO6 { 442 regulator-name = "ldo6"; 443 regulator-always-on; 444 }; 445 446 ldo7_reg: LDO7 { 447 regulator-name = "ldo7"; 448 regulator-always-on; 449 }; 450 451 /* CSI IP block */ 452 ldo8_reg: LDO8 { 453 regulator-name = "VMIPI_1.0V"; 454 regulator-min-microvolt = <1000000>; 455 regulator-max-microvolt = <1000000>; 456 regulator-always-on; 457 regulator-boot-on; 458 459 regulator-state-mem { 460 regulator-on-in-suspend; 461 }; 462 }; 463 464 /* IR LED on/off */ 465 ldo9_reg: LDO9 { 466 regulator-name = "VLED_IC_1.9V"; 467 regulator-min-microvolt = <1950000>; 468 regulator-max-microvolt = <1950000>; 469 470 regulator-state-mem { 471 regulator-off-in-suspend; 472 }; 473 }; 474 475 /* CSI IP block */ 476 ldo10_reg: LDO10 { 477 regulator-name = "VMIPI_1.8V"; 478 regulator-min-microvolt = <1800000>; 479 regulator-max-microvolt = <1800000>; 480 regulator-always-on; 481 regulator-boot-on; 482 483 regulator-state-mem { 484 regulator-on-in-suspend; 485 }; 486 }; 487 488 ldo11_reg: LDO11 { 489 regulator-name = "VABB1_1.9V"; 490 regulator-min-microvolt = <1950000>; 491 regulator-max-microvolt = <1950000>; 492 regulator-always-on; 493 regulator-boot-on; 494 495 regulator-state-mem { 496 regulator-off-in-suspend; 497 }; 498 }; 499 500 /* USB OTG */ 501 ldo12_reg: LDO12 { 502 regulator-name = "VUOTG_3.0V"; 503 regulator-min-microvolt = <3000000>; 504 regulator-max-microvolt = <3000000>; 505 regulator-always-on; 506 regulator-boot-on; 507 508 regulator-state-mem { 509 regulator-on-in-suspend; 510 }; 511 }; 512 513 /* not connected */ 514 ldo13_reg: LDO13 { 515 regulator-name = "ldo13"; 516 }; 517 518 ldo14_reg: LDO14 { 519 regulator-name = "VABB2_1.9V"; 520 regulator-min-microvolt = <1950000>; 521 regulator-max-microvolt = <1950000>; 522 regulator-always-on; 523 regulator-boot-on; 524 525 regulator-state-mem { 526 regulator-off-in-suspend; 527 }; 528 }; 529 530 ldo15_reg: LDO15 { 531 regulator-name = "ldo15"; 532 regulator-always-on; 533 }; 534 535 ldo16_reg: LDO16 { 536 regulator-name = "ldo16"; 537 regulator-always-on; 538 }; 539 540 /* not connected */ 541 ldo17_reg: LDO17 { 542 regulator-name = "ldo17"; 543 }; 544 545 /* Camera ISX012 */ 546 ldo18_reg: LDO18 { 547 regulator-name = "CAM_IO_1.8V"; 548 regulator-min-microvolt = <1800000>; 549 regulator-max-microvolt = <1800000>; 550 551 regulator-state-mem { 552 regulator-off-in-suspend; 553 }; 554 }; 555 556 /* Camera S5K6A3 */ 557 ldo19_reg: LDO19 { 558 regulator-name = "VT_CORE_1.8V"; 559 regulator-min-microvolt = <1800000>; 560 regulator-max-microvolt = <1800000>; 561 562 regulator-state-mem { 563 regulator-off-in-suspend; 564 }; 565 }; 566 567 /* not connected */ 568 ldo20_reg: LDO20 { 569 regulator-name = "ldo20"; 570 }; 571 572 /* MMC2 */ 573 ldo21_reg: LDO21 { 574 regulator-name = "VTF_2.8V"; 575 regulator-min-microvolt = <2800000>; 576 regulator-max-microvolt = <2800000>; 577 maxim,ena-gpios = <&gpy2 0 GPIO_ACTIVE_HIGH>; 578 }; 579 580 /* not connected */ 581 ldo22_reg: LDO22 { 582 regulator-name = "ldo22"; 583 }; 584 585 /* ADC */ 586 ldo23_reg: LDO23 { 587 regulator-name = "VDD_ADC_3.3V"; 588 regulator-min-microvolt = <3300000>; 589 regulator-max-microvolt = <3300000>; 590 regulator-always-on; 591 regulator-boot-on; 592 593 regulator-state-mem { 594 regulator-off-in-suspend; 595 }; 596 }; 597 598 /* Camera S5K6A3 */ 599 ldo24_reg: LDO24 { 600 regulator-name = "CAM_A2.8V"; 601 regulator-min-microvolt = <2800000>; 602 regulator-max-microvolt = <2800000>; 603 604 regulator-state-mem { 605 regulator-off-in-suspend; 606 }; 607 }; 608 609 ldo25_reg: LDO25 { 610 regulator-name = "VLED_3.3V"; 611 regulator-min-microvolt = <3300000>; 612 regulator-max-microvolt = <3300000>; 613 614 regulator-state-mem { 615 regulator-off-in-suspend; 616 }; 617 }; 618 619 /* Camera ISX012 */ 620 ldo26_reg: LDO26 { 621 regulator-name = "3MP_AF_2.8V"; 622 regulator-min-microvolt = <2800000>; 623 regulator-max-microvolt = <2800000>; 624 625 regulator-state-mem { 626 regulator-off-in-suspend; 627 }; 628 }; 629 630 buck1_reg: BUCK1 { 631 regulator-name = "VDD_MIF"; 632 regulator-min-microvolt = <850000>; 633 regulator-max-microvolt = <1050000>; 634 regulator-always-on; 635 regulator-boot-on; 636 }; 637 638 buck2_reg: BUCK2 { 639 regulator-name = "VDD_ARM"; 640 regulator-min-microvolt = <850000>; 641 regulator-max-microvolt = <1500000>; 642 regulator-always-on; 643 regulator-boot-on; 644 }; 645 646 buck3_reg: BUCK3 { 647 regulator-name = "VDD_INT"; 648 regulator-min-microvolt = <850000>; 649 regulator-max-microvolt = <1100000>; 650 regulator-always-on; 651 regulator-boot-on; 652 }; 653 654 buck4_reg: BUCK4 { 655 regulator-name = "VDD_G3D"; 656 regulator-min-microvolt = <850000>; 657 regulator-max-microvolt = <1075000>; 658 regulator-boot-on; 659 }; 660 661 buck5_reg: BUCK5 { 662 regulator-name = "buck5"; 663 regulator-always-on; 664 }; 665 666 buck6_reg: BUCK6 { 667 regulator-name = "buck6"; 668 regulator-always-on; 669 }; 670 671 buck7_reg: BUCK7 { 672 regulator-name = "buck7"; 673 regulator-always-on; 674 }; 675 676 /* not connected */ 677 buck8_reg: BUCK8 { 678 regulator-name = "buck8"; 679 }; 680 681 buck9_reg: BUCK9 { 682 regulator-name = "3MP_CORE_1.2V"; 683 regulator-min-microvolt = <1200000>; 684 regulator-max-microvolt = <1200000>; 685 686 regulator-state-mem { 687 regulator-off-in-suspend; 688 }; 689 }; 690 }; 691 }; 692}; 693 694&mshc_0 { 695 broken-cd; 696 non-removable; 697 card-detect-delay = <200>; 698 clock-frequency = <400000000>; 699 samsung,dw-mshc-ciu-div = <0>; 700 samsung,dw-mshc-sdr-timing = <2 3>; 701 samsung,dw-mshc-ddr-timing = <1 2>; 702 mmc-ddr-1_8v; 703 pinctrl-0 = <&sd4_clk &sd4_cmd &sd4_bus4 &sd4_bus8>; 704 pinctrl-names = "default"; 705 bus-width = <4>; 706 cap-mmc-highspeed; 707 cap-sd-highspeed; 708 status = "okay"; 709}; 710 711&pinctrl_0 { 712 pinctrl-names = "default"; 713 pinctrl-0 = <&sleep0>; 714 715 tsp_reg_gpio_2: tsp-reg-gpio-2-pins { 716 samsung,pins = "gpb-5"; 717 samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>; 718 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 719 }; 720 721 tsp_reg_gpio_3: tsp-reg-gpio-3-pins { 722 samsung,pins = "gpb-7"; 723 samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>; 724 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 725 }; 726 727 lcd_enable: lcd-enable-pins { 728 samsung,pins = "gpc0-1"; 729 samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>; 730 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 731 }; 732 733 sleep0: sleep-state { 734 PIN_SLP(gpa0-0, INPUT, NONE); 735 PIN_SLP(gpa0-1, OUT0, NONE); 736 PIN_SLP(gpa0-2, INPUT, NONE); 737 PIN_SLP(gpa0-3, INPUT, UP); 738 PIN_SLP(gpa0-4, INPUT, NONE); 739 PIN_SLP(gpa0-5, INPUT, DOWN); 740 PIN_SLP(gpa0-6, INPUT, DOWN); 741 PIN_SLP(gpa0-7, INPUT, UP); 742 743 PIN_SLP(gpa1-0, INPUT, DOWN); 744 PIN_SLP(gpa1-1, INPUT, DOWN); 745 PIN_SLP(gpa1-2, INPUT, DOWN); 746 PIN_SLP(gpa1-3, INPUT, DOWN); 747 PIN_SLP(gpa1-4, INPUT, DOWN); 748 PIN_SLP(gpa1-5, INPUT, DOWN); 749 750 PIN_SLP(gpb-0, INPUT, NONE); 751 PIN_SLP(gpb-1, INPUT, NONE); 752 PIN_SLP(gpb-2, INPUT, NONE); 753 PIN_SLP(gpb-3, INPUT, NONE); 754 PIN_SLP(gpb-4, INPUT, DOWN); 755 PIN_SLP(gpb-5, INPUT, DOWN); 756 PIN_SLP(gpb-6, INPUT, DOWN); 757 PIN_SLP(gpb-7, INPUT, DOWN); 758 759 PIN_SLP(gpc0-0, INPUT, DOWN); 760 PIN_SLP(gpc0-1, INPUT, DOWN); 761 PIN_SLP(gpc0-2, INPUT, DOWN); 762 PIN_SLP(gpc0-3, INPUT, DOWN); 763 PIN_SLP(gpc0-4, INPUT, DOWN); 764 765 PIN_SLP(gpc1-0, INPUT, UP); 766 PIN_SLP(gpc1-1, PREV, NONE); 767 PIN_SLP(gpc1-2, INPUT, UP); 768 PIN_SLP(gpc1-3, INPUT, UP); 769 PIN_SLP(gpc1-4, INPUT, UP); 770 771 PIN_SLP(gpd0-0, INPUT, DOWN); 772 PIN_SLP(gpd0-1, OUT0, NONE); 773 PIN_SLP(gpd0-2, INPUT, NONE); 774 PIN_SLP(gpd0-3, INPUT, NONE); 775 776 PIN_SLP(gpd1-0, INPUT, DOWN); 777 PIN_SLP(gpd1-1, INPUT, DOWN); 778 PIN_SLP(gpd1-2, INPUT, NONE); 779 PIN_SLP(gpd1-3, INPUT, NONE); 780 781 PIN_SLP(gpf0-0, OUT0, NONE); 782 PIN_SLP(gpf0-1, OUT0, NONE); 783 PIN_SLP(gpf0-2, OUT0, NONE); 784 PIN_SLP(gpf0-3, OUT0, NONE); 785 PIN_SLP(gpf0-4, OUT0, NONE); 786 PIN_SLP(gpf0-5, OUT0, NONE); 787 PIN_SLP(gpf0-6, OUT0, NONE); 788 PIN_SLP(gpf0-7, OUT0, NONE); 789 790 PIN_SLP(gpf1-0, OUT0, NONE); 791 PIN_SLP(gpf1-1, OUT0, NONE); 792 PIN_SLP(gpf1-2, OUT0, NONE); 793 PIN_SLP(gpf1-3, OUT0, NONE); 794 PIN_SLP(gpf1-4, OUT0, NONE); 795 PIN_SLP(gpf1-5, OUT0, NONE); 796 PIN_SLP(gpf1-6, OUT0, NONE); 797 PIN_SLP(gpf1-7, OUT0, NONE); 798 799 PIN_SLP(gpf2-0, OUT0, NONE); 800 PIN_SLP(gpf2-1, OUT0, NONE); 801 PIN_SLP(gpf2-2, OUT0, NONE); 802 PIN_SLP(gpf2-3, OUT0, NONE); 803 PIN_SLP(gpf2-4, OUT0, NONE); 804 PIN_SLP(gpf2-5, OUT0, NONE); 805 PIN_SLP(gpf2-6, OUT0, NONE); 806 PIN_SLP(gpf2-7, OUT0, NONE); 807 808 PIN_SLP(gpf3-0, OUT0, NONE); 809 PIN_SLP(gpf3-1, OUT0, NONE); 810 PIN_SLP(gpf3-2, OUT0, NONE); 811 PIN_SLP(gpf3-3, OUT0, NONE); 812 PIN_SLP(gpf3-4, OUT0, NONE); 813 PIN_SLP(gpf3-5, OUT0, NONE); 814 815 PIN_SLP(gpj0-0, INPUT, DOWN); 816 PIN_SLP(gpj0-1, INPUT, DOWN); 817 PIN_SLP(gpj0-2, INPUT, DOWN); 818 PIN_SLP(gpj0-3, PREV, NONE); 819 PIN_SLP(gpj0-4, PREV, NONE); 820 PIN_SLP(gpj0-5, OUT0, NONE); 821 PIN_SLP(gpj0-6, OUT0, NONE); 822 PIN_SLP(gpj0-7, OUT0, NONE); 823 824 PIN_SLP(gpj1-0, OUT0, NONE); 825 PIN_SLP(gpj1-1, INPUT, DOWN); 826 PIN_SLP(gpj1-2, PREV, NONE); 827 PIN_SLP(gpj1-3, OUT0, NONE); 828 }; 829}; 830 831&pinctrl_1 { 832 pinctrl-names = "default"; 833 pinctrl-0 = <&sleep1>; 834 835 sd3_wifi: sd3-wifi-pins { 836 samsung,pins = "gpk3-3", "gpk3-4", "gpk3-5", "gpk3-6"; 837 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 838 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 839 }; 840 841 bt_shutdown: bt-shutdown-pins { 842 samsung,pins = "gpl0-6"; 843 samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>; 844 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 845 }; 846 847 uart_sel: uart-sel-pins { 848 samsung,pins = "gpl2-7"; 849 samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>; 850 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 851 samsung,pin-val = <1>; 852 /* 0 = CP, 1 = AP (serial output) */ 853 }; 854 855 led_bl_reset: led-bl-reset-pins { 856 samsung,pins = "gpm0-1"; 857 samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>; 858 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 859 }; 860 861 tsp_rst: tsp-rst-pins { 862 samsung,pins = "gpm0-4"; 863 samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>; 864 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 865 }; 866 867 lvds_nshdn: lvds-nshdn-pins { 868 samsung,pins = "gpm0-5"; 869 samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>; 870 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 871 }; 872 873 tsp_irq: tsp-irq-pins { 874 samsung,pins = "gpm2-3"; 875 samsung,pin-function = <EXYNOS_PIN_FUNC_F>; 876 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 877 }; 878 879 wifi_reset: wifi-reset-pins { 880 samsung,pins = "gpm3-5"; 881 samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>; 882 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 883 }; 884 885 tsp_reg_gpio_1: tsp-reg-gpio-1-pins { 886 samsung,pins = "gpm4-5"; 887 samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>; 888 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 889 }; 890 891 ak8975_irq: ak8975-irq-pins { 892 samsung,pins = "gpm4-7"; 893 samsung,pin-function = <EXYNOS_PIN_FUNC_F>; 894 samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>; 895 }; 896 897 stmpe_adc_irq: stmpe-adc-irq-pins { 898 samsung,pins = "gpx0-1"; 899 samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>; 900 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 901 }; 902 903 max77686_irq: max77686-irq-pins { 904 samsung,pins = "gpx0-7"; 905 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 906 }; 907 908 gpio_keys: gpio-keys-pins { 909 samsung,pins = "gpx2-2", "gpx2-7", "gpx3-3"; 910 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 911 }; 912 913 fuel_alert_irq: fuel-alert-irq-pins { 914 samsung,pins = "gpx2-3"; 915 samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>; 916 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 917 }; 918 919 wifi_host_wake: wifi-host-wake-pins { 920 samsung,pins = "gpx2-5"; 921 samsung,pin-function = <EXYNOS_PIN_FUNC_F>; 922 samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>; 923 }; 924 925 bt_host_wakeup: bt-host-wakeup-pins { 926 samsung,pins = "gpx2-6"; 927 samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>; 928 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 929 }; 930 931 bt_device_wakeup: bt-device-wakeup-pins { 932 samsung,pins = "gpx3-1"; 933 samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>; 934 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 935 }; 936 937 sdhci2_cd: sdhci2-cd-pins { 938 samsung,pins = "gpx3-4"; 939 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 940 }; 941 942 sleep1: sleep-state { 943 PIN_SLP(gpk0-0, PREV, NONE); 944 PIN_SLP(gpk0-1, PREV, NONE); 945 PIN_SLP(gpk0-2, PREV, NONE); 946 PIN_SLP(gpk0-3, PREV, NONE); 947 PIN_SLP(gpk0-4, PREV, NONE); 948 PIN_SLP(gpk0-5, PREV, NONE); 949 PIN_SLP(gpk0-6, PREV, NONE); 950 951 PIN_SLP(gpk1-0, INPUT, DOWN); 952 PIN_SLP(gpk1-1, INPUT, DOWN); 953 PIN_SLP(gpk1-2, INPUT, DOWN); 954 PIN_SLP(gpk1-3, PREV, NONE); 955 PIN_SLP(gpk1-4, PREV, NONE); 956 PIN_SLP(gpk1-5, PREV, NONE); 957 PIN_SLP(gpk1-6, PREV, NONE); 958 959 PIN_SLP(gpk2-0, INPUT, DOWN); 960 PIN_SLP(gpk2-1, INPUT, DOWN); 961 PIN_SLP(gpk2-2, INPUT, DOWN); 962 PIN_SLP(gpk2-3, INPUT, DOWN); 963 PIN_SLP(gpk2-4, INPUT, DOWN); 964 PIN_SLP(gpk2-5, INPUT, DOWN); 965 PIN_SLP(gpk2-6, INPUT, DOWN); 966 967 PIN_SLP(gpk3-0, OUT0, NONE); 968 PIN_SLP(gpk3-1, INPUT, NONE); 969 PIN_SLP(gpk3-2, INPUT, DOWN); 970 PIN_SLP(gpk3-3, INPUT, NONE); 971 PIN_SLP(gpk3-4, INPUT, NONE); 972 PIN_SLP(gpk3-5, INPUT, NONE); 973 PIN_SLP(gpk3-6, INPUT, NONE); 974 975 PIN_SLP(gpl0-0, OUT0, NONE); 976 PIN_SLP(gpl0-1, INPUT, NONE); 977 PIN_SLP(gpl0-2, INPUT, NONE); 978 PIN_SLP(gpl0-3, INPUT, DOWN); 979 PIN_SLP(gpl0-4, PREV, NONE); 980 PIN_SLP(gpl0-6, PREV, NONE); 981 982 PIN_SLP(gpl1-0, OUT0, NONE); 983 PIN_SLP(gpl1-1, OUT0, NONE); 984 985 PIN_SLP(gpl2-0, INPUT, DOWN); 986 PIN_SLP(gpl2-1, INPUT, DOWN); 987 PIN_SLP(gpl2-2, INPUT, DOWN); 988 PIN_SLP(gpl2-3, INPUT, DOWN); 989 PIN_SLP(gpl2-4, OUT0, NONE); 990 PIN_SLP(gpl2-5, INPUT, DOWN); 991 PIN_SLP(gpl2-6, PREV, NONE); 992 PIN_SLP(gpl2-7, PREV, NONE); 993 994 PIN_SLP(gpm0-0, PREV, NONE); 995 PIN_SLP(gpm0-1, OUT0, NONE); 996 PIN_SLP(gpm0-2, INPUT, DOWN); 997 PIN_SLP(gpm0-3, INPUT, NONE); 998 PIN_SLP(gpm0-4, OUT0, NONE); 999 PIN_SLP(gpm0-5, OUT0, NONE); 1000 PIN_SLP(gpm0-6, INPUT, DOWN); 1001 PIN_SLP(gpm0-7, OUT0, NONE); 1002 1003 PIN_SLP(gpm1-0, INPUT, NONE); 1004 PIN_SLP(gpm1-1, INPUT, NONE); 1005 PIN_SLP(gpm1-2, INPUT, NONE); 1006 PIN_SLP(gpm1-3, INPUT, NONE); 1007 PIN_SLP(gpm1-4, INPUT, NONE); 1008 PIN_SLP(gpm1-5, INPUT, NONE); 1009 PIN_SLP(gpm1-6, INPUT, DOWN); 1010 1011 PIN_SLP(gpm2-0, INPUT, NONE); 1012 PIN_SLP(gpm2-1, INPUT, NONE); 1013 PIN_SLP(gpm2-2, OUT0, NONE); 1014 PIN_SLP(gpm2-3, OUT0, DOWN); 1015 PIN_SLP(gpm2-4, INPUT, DOWN); 1016 1017 PIN_SLP(gpm3-0, PREV, NONE); 1018 PIN_SLP(gpm3-1, PREV, NONE); 1019 PIN_SLP(gpm3-2, PREV, NONE); 1020 PIN_SLP(gpm3-3, OUT1, NONE); 1021 PIN_SLP(gpm3-4, OUT0, DOWN); 1022 PIN_SLP(gpm3-5, PREV, NONE); 1023 PIN_SLP(gpm3-6, PREV, NONE); 1024 PIN_SLP(gpm3-7, OUT0, NONE); 1025 1026 PIN_SLP(gpm4-0, INPUT, NONE); 1027 PIN_SLP(gpm4-1, INPUT, NONE); 1028 PIN_SLP(gpm4-2, INPUT, DOWN); 1029 PIN_SLP(gpm4-3, INPUT, DOWN); 1030 PIN_SLP(gpm4-4, PREV, NONE); 1031 PIN_SLP(gpm4-5, OUT0, NONE); 1032 PIN_SLP(gpm4-6, OUT0, NONE); 1033 PIN_SLP(gpm4-7, INPUT, DOWN); 1034 1035 PIN_SLP(gpy0-0, INPUT, DOWN); 1036 PIN_SLP(gpy0-1, INPUT, DOWN); 1037 PIN_SLP(gpy0-2, INPUT, NONE); 1038 PIN_SLP(gpy0-3, INPUT, NONE); 1039 PIN_SLP(gpy0-4, INPUT, NONE); 1040 PIN_SLP(gpy0-5, INPUT, NONE); 1041 1042 PIN_SLP(gpy1-0, INPUT, DOWN); 1043 PIN_SLP(gpy1-1, INPUT, DOWN); 1044 PIN_SLP(gpy1-2, INPUT, DOWN); 1045 PIN_SLP(gpy1-3, INPUT, DOWN); 1046 1047 PIN_SLP(gpy2-0, PREV, NONE); 1048 PIN_SLP(gpy2-1, INPUT, DOWN); 1049 PIN_SLP(gpy2-2, INPUT, NONE); 1050 PIN_SLP(gpy2-3, INPUT, NONE); 1051 PIN_SLP(gpy2-4, INPUT, NONE); 1052 PIN_SLP(gpy2-5, INPUT, NONE); 1053 1054 PIN_SLP(gpy3-0, INPUT, DOWN); 1055 PIN_SLP(gpy3-1, INPUT, DOWN); 1056 PIN_SLP(gpy3-2, INPUT, DOWN); 1057 PIN_SLP(gpy3-3, INPUT, DOWN); 1058 PIN_SLP(gpy3-4, INPUT, DOWN); 1059 PIN_SLP(gpy3-5, INPUT, DOWN); 1060 PIN_SLP(gpy3-6, INPUT, DOWN); 1061 PIN_SLP(gpy3-7, INPUT, DOWN); 1062 1063 PIN_SLP(gpy4-0, INPUT, DOWN); 1064 PIN_SLP(gpy4-1, INPUT, DOWN); 1065 PIN_SLP(gpy4-2, INPUT, DOWN); 1066 PIN_SLP(gpy4-3, INPUT, DOWN); 1067 PIN_SLP(gpy4-4, INPUT, DOWN); 1068 PIN_SLP(gpy4-5, INPUT, DOWN); 1069 PIN_SLP(gpy4-6, INPUT, DOWN); 1070 PIN_SLP(gpy4-7, INPUT, DOWN); 1071 1072 PIN_SLP(gpy5-0, INPUT, DOWN); 1073 PIN_SLP(gpy5-1, INPUT, DOWN); 1074 PIN_SLP(gpy5-2, INPUT, DOWN); 1075 PIN_SLP(gpy5-3, INPUT, DOWN); 1076 PIN_SLP(gpy5-4, INPUT, DOWN); 1077 PIN_SLP(gpy5-5, INPUT, DOWN); 1078 PIN_SLP(gpy5-6, INPUT, DOWN); 1079 PIN_SLP(gpy5-7, INPUT, DOWN); 1080 1081 PIN_SLP(gpy6-0, INPUT, DOWN); 1082 PIN_SLP(gpy6-1, INPUT, DOWN); 1083 PIN_SLP(gpy6-2, INPUT, DOWN); 1084 PIN_SLP(gpy6-3, INPUT, DOWN); 1085 PIN_SLP(gpy6-4, INPUT, DOWN); 1086 PIN_SLP(gpy6-5, INPUT, DOWN); 1087 PIN_SLP(gpy6-6, INPUT, DOWN); 1088 PIN_SLP(gpy6-7, INPUT, DOWN); 1089 }; 1090}; 1091 1092&pinctrl_2 { 1093 pinctrl-names = "default"; 1094 pinctrl-0 = <&sleep2>; 1095 1096 sleep2: sleep-state { 1097 PIN_SLP(gpz-0, INPUT, DOWN); 1098 PIN_SLP(gpz-1, INPUT, DOWN); 1099 PIN_SLP(gpz-2, INPUT, DOWN); 1100 PIN_SLP(gpz-3, INPUT, DOWN); 1101 PIN_SLP(gpz-4, INPUT, DOWN); 1102 PIN_SLP(gpz-5, INPUT, DOWN); 1103 PIN_SLP(gpz-6, INPUT, DOWN); 1104 }; 1105}; 1106 1107&pinctrl_3 { 1108 pinctrl-names = "default"; 1109 pinctrl-0 = <&sleep3>; 1110 1111 sleep3: sleep-state { 1112 PIN_SLP(gpv0-0, INPUT, DOWN); 1113 PIN_SLP(gpv0-1, INPUT, DOWN); 1114 PIN_SLP(gpv0-2, INPUT, DOWN); 1115 PIN_SLP(gpv0-3, INPUT, DOWN); 1116 PIN_SLP(gpv0-4, INPUT, DOWN); 1117 PIN_SLP(gpv0-5, INPUT, DOWN); 1118 PIN_SLP(gpv0-6, INPUT, DOWN); 1119 PIN_SLP(gpv0-7, INPUT, DOWN); 1120 1121 PIN_SLP(gpv1-0, INPUT, DOWN); 1122 PIN_SLP(gpv1-1, INPUT, DOWN); 1123 PIN_SLP(gpv1-2, INPUT, DOWN); 1124 PIN_SLP(gpv1-3, INPUT, DOWN); 1125 PIN_SLP(gpv1-4, INPUT, DOWN); 1126 PIN_SLP(gpv1-5, INPUT, DOWN); 1127 PIN_SLP(gpv1-6, INPUT, DOWN); 1128 PIN_SLP(gpv1-7, INPUT, DOWN); 1129 1130 PIN_SLP(gpv2-0, INPUT, DOWN); 1131 PIN_SLP(gpv2-1, INPUT, DOWN); 1132 PIN_SLP(gpv2-2, INPUT, DOWN); 1133 PIN_SLP(gpv2-3, INPUT, DOWN); 1134 PIN_SLP(gpv2-4, INPUT, DOWN); 1135 PIN_SLP(gpv2-5, INPUT, DOWN); 1136 PIN_SLP(gpv2-6, INPUT, DOWN); 1137 PIN_SLP(gpv2-7, INPUT, DOWN); 1138 1139 PIN_SLP(gpv3-0, INPUT, DOWN); 1140 PIN_SLP(gpv3-1, INPUT, DOWN); 1141 PIN_SLP(gpv3-2, INPUT, DOWN); 1142 PIN_SLP(gpv3-3, INPUT, DOWN); 1143 PIN_SLP(gpv3-4, INPUT, DOWN); 1144 PIN_SLP(gpv3-5, INPUT, DOWN); 1145 PIN_SLP(gpv3-6, INPUT, DOWN); 1146 PIN_SLP(gpv3-7, INPUT, DOWN); 1147 1148 PIN_SLP(gpv4-0, INPUT, DOWN); 1149 PIN_SLP(gpv4-1, INPUT, DOWN); 1150 }; 1151}; 1152 1153&pmu_system_controller { 1154 assigned-clocks = <&pmu_system_controller 0>; 1155 assigned-clock-parents = <&clock CLK_XUSBXTI>; 1156}; 1157 1158&pwm { 1159 pinctrl-0 = <&pwm1_out>; 1160 pinctrl-names = "default"; 1161 samsung,pwm-outputs = <1>; 1162 status = "okay"; 1163}; 1164 1165&rtc { 1166 clocks = <&clock CLK_RTC>, <&max77686 MAX77686_CLK_AP>; 1167 clock-names = "rtc", "rtc_src"; 1168 status = "okay"; 1169}; 1170 1171&sdhci_2 { 1172 bus-width = <4>; 1173 cd-gpios = <&gpx3 4 GPIO_ACTIVE_LOW>; 1174 pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4 &sdhci2_cd>; 1175 pinctrl-names = "default"; 1176 vmmc-supply = <&ldo21_reg>; 1177 status = "okay"; 1178}; 1179 1180&sdhci_3 { 1181 #address-cells = <1>; 1182 #size-cells = <0>; 1183 non-removable; 1184 bus-width = <4>; 1185 mmc-pwrseq = <&wlan_pwrseq>; 1186 1187 pinctrl-names = "default"; 1188 pinctrl-0 = <&sd3_clk &sd3_cmd &sd3_wifi>; 1189 status = "okay"; 1190 1191 wifi@1 { 1192 compatible = "brcm,bcm4329-fmac"; 1193 reg = <0x1>; 1194 pinctrl-names = "default"; 1195 pinctrl-0 = <&wifi_host_wake>; 1196 interrupt-parent = <&gpx2>; 1197 interrupts = <5 IRQ_TYPE_LEVEL_HIGH>; 1198 interrupt-names = "host-wake"; 1199 }; 1200}; 1201 1202&serial_0 { 1203 pinctrl-0 = <&uart0_data &uart0_fctl>; 1204 pinctrl-names = "default"; 1205 status = "okay"; 1206 1207 bluetooth { 1208 compatible = "brcm,bcm4330-bt"; 1209 pinctrl-0 = <&bt_shutdown &bt_device_wakeup &bt_host_wakeup>; 1210 pinctrl-names = "default"; 1211 1212 max-speed = <2000000>; 1213 shutdown-gpios = <&gpl0 6 GPIO_ACTIVE_HIGH>; 1214 device-wakeup-gpios = <&gpx3 1 GPIO_ACTIVE_HIGH>; 1215 host-wakeup-gpios = <&gpx2 6 GPIO_ACTIVE_HIGH>; 1216 clocks = <&max77686 MAX77686_CLK_PMIC>; 1217 clock-names = "lpo"; 1218 }; 1219}; 1220 1221&serial_2 { 1222 pinctrl-0 = <&uart_sel>; 1223 pinctrl-names = "default"; 1224 status = "okay"; 1225}; 1226 1227&tmu { 1228 status = "okay"; 1229}; 1230