1// SPDX-License-Identifier: GPL-2.0 2/* 3 * Samsung's Exynos4210 based Galaxy S2 (GT-I9100 version) device tree 4 * 5 * Copyright (c) 2012 Samsung Electronics Co., Ltd. 6 * http://www.samsung.com 7 * Copyright (c) 2020 Stenkin Evgeniy <stenkinevgeniy@gmail.com> 8 * Copyright (c) 2020 Paul Cercueil <paul@crapouillou.net> 9 */ 10 11/dts-v1/; 12#include "exynos4210.dtsi" 13#include "exynos4412-ppmu-common.dtsi" 14 15#include <dt-bindings/gpio/gpio.h> 16#include <dt-bindings/input/linux-event-codes.h> 17 18/ { 19 model = "Samsung Galaxy S2 (GT-I9100)"; 20 compatible = "samsung,i9100", "samsung,exynos4210", "samsung,exynos4"; 21 chassis-type = "handset"; 22 23 memory@40000000 { 24 device_type = "memory"; 25 reg = <0x40000000 0x40000000>; 26 }; 27 28 aliases { 29 mmc0 = &sdhci_0; 30 mmc1 = &sdhci_2; 31 mmc2 = &sdhci_3; 32 }; 33 34 chosen { 35 stdout-path = "serial2:115200n8"; 36 }; 37 38 vemmc_reg: regulator-0 { 39 compatible = "regulator-fixed"; 40 regulator-name = "VMEM_VDD_2.8V"; 41 regulator-min-microvolt = <2800000>; 42 regulator-max-microvolt = <2800000>; 43 gpio = <&gpk0 2 GPIO_ACTIVE_HIGH>; 44 enable-active-high; 45 }; 46 47 tsp_reg: regulator-1 { 48 compatible = "regulator-fixed"; 49 regulator-name = "TSP_FIXED_VOLTAGES"; 50 regulator-min-microvolt = <3300000>; 51 regulator-max-microvolt = <3300000>; 52 gpio = <&gpl0 3 GPIO_ACTIVE_HIGH>; 53 startup-delay-us = <70000>; 54 enable-active-high; 55 regulator-boot-on; 56 regulator-always-on; 57 }; 58 59 cam_af_28v_reg: regulator-2 { 60 compatible = "regulator-fixed"; 61 regulator-name = "8M_AF_2.8V_EN"; 62 regulator-min-microvolt = <2800000>; 63 regulator-max-microvolt = <2800000>; 64 gpio = <&gpk1 1 GPIO_ACTIVE_HIGH>; 65 enable-active-high; 66 }; 67 68 cam_io_en_reg: regulator-3 { 69 compatible = "regulator-fixed"; 70 regulator-name = "CAM_IO_EN"; 71 regulator-min-microvolt = <2800000>; 72 regulator-max-microvolt = <2800000>; 73 gpio = <&gpe2 1 GPIO_ACTIVE_HIGH>; 74 enable-active-high; 75 }; 76 77 cam_io_12v_reg: regulator-4 { 78 compatible = "regulator-fixed"; 79 regulator-name = "8M_1.2V_EN"; 80 regulator-min-microvolt = <1200000>; 81 regulator-max-microvolt = <1200000>; 82 gpio = <&gpe2 5 GPIO_ACTIVE_HIGH>; 83 enable-active-high; 84 }; 85 86 vt_core_15v_reg: regulator-5 { 87 compatible = "regulator-fixed"; 88 regulator-name = "VT_CORE_1.5V"; 89 regulator-min-microvolt = <1500000>; 90 regulator-max-microvolt = <1500000>; 91 gpio = <&gpe2 2 GPIO_ACTIVE_HIGH>; 92 enable-active-high; 93 }; 94 95 gpio-keys { 96 compatible = "gpio-keys"; 97 98 key-vol-down { 99 gpios = <&gpx2 1 GPIO_ACTIVE_LOW>; 100 linux,code = <KEY_VOLUMEDOWN>; 101 label = "volume down"; 102 debounce-interval = <10>; 103 }; 104 105 key-vol-up { 106 gpios = <&gpx2 0 GPIO_ACTIVE_LOW>; 107 linux,code = <KEY_VOLUMEUP>; 108 label = "volume up"; 109 debounce-interval = <10>; 110 }; 111 112 key-power { 113 gpios = <&gpx2 7 GPIO_ACTIVE_LOW>; 114 linux,code = <KEY_POWER>; 115 label = "power"; 116 debounce-interval = <10>; 117 wakeup-source; 118 }; 119 120 key-ok { 121 gpios = <&gpx3 5 GPIO_ACTIVE_LOW>; 122 linux,code = <KEY_OK>; 123 label = "ok"; 124 debounce-interval = <10>; 125 }; 126 }; 127 128 wlan_pwrseq: sdhci3-pwrseq { 129 compatible = "mmc-pwrseq-simple"; 130 reset-gpios = <&gpl1 2 GPIO_ACTIVE_LOW>; 131 }; 132 133 i2c_max17042_fuel: i2c-gpio-0 { 134 compatible = "i2c-gpio"; 135 #address-cells = <1>; 136 #size-cells = <0>; 137 138 sda-gpios = <&gpy4 0 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 139 scl-gpios = <&gpy4 1 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 140 i2c-gpio,delay-us = <5>; 141 142 battery@36 { 143 compatible = "maxim,max17042"; 144 145 interrupt-parent = <&gpx2>; 146 interrupts = <3 IRQ_TYPE_LEVEL_LOW>; 147 148 pinctrl-0 = <&max17042_fuel_irq>; 149 pinctrl-names = "default"; 150 151 reg = <0x36>; 152 maxim,over-heat-temp = <700>; 153 maxim,over-volt = <4500>; 154 }; 155 }; 156 157 i2c_s5k5baf: i2c-gpio-1 { 158 compatible = "i2c-gpio"; 159 #address-cells = <1>; 160 #size-cells = <0>; 161 162 sda-gpios = <&gpc1 0 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 163 scl-gpios = <&gpc1 2 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 164 i2c-gpio,delay-us = <2>; 165 166 image-sensor@2d { 167 compatible = "samsung,s5k5baf"; 168 reg = <0x2d>; 169 vdda-supply = <&cam_io_en_reg>; 170 vddreg-supply = <&vt_core_15v_reg>; 171 vddio-supply = <&vtcam_reg>; 172 clocks = <&camera 0>; 173 clock-names = "mclk"; 174 stbyn-gpios = <&gpl2 0 GPIO_ACTIVE_LOW>; 175 rstn-gpios = <&gpl2 1 GPIO_ACTIVE_LOW>; 176 clock-frequency = <24000000>; 177 178 port { 179 s5k5bafx_ep: endpoint { 180 remote-endpoint = <&csis1_ep>; 181 data-lanes = <1>; 182 }; 183 }; 184 }; 185 }; 186 187 i2c-gpio-2 { 188 compatible = "i2c-gpio"; 189 #address-cells = <1>; 190 #size-cells = <0>; 191 192 sda-gpios = <&gpk1 2 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 193 scl-gpios = <&gpk1 0 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 194 i2c-gpio,delay-us = <2>; 195 196 touchscreen@20 { 197 compatible = "cypress,aries-touchkey"; 198 reg = <0x20>; 199 200 interrupt-parent = <&gpl0>; 201 interrupts = <5 IRQ_TYPE_EDGE_FALLING>; 202 203 vdd-supply = <&vtouchled_reg>; 204 vcc-supply = <&vtouch_reg>; 205 linux,keycodes = <KEY_MENU>, <KEY_BACK>; 206 }; 207 }; 208 209 spi-3 { 210 compatible = "spi-gpio"; 211 #address-cells = <1>; 212 #size-cells = <0>; 213 214 num-chipselects = <1>; 215 cs-gpios = <&gpy4 3 GPIO_ACTIVE_LOW>; 216 sck-gpios = <&gpy3 1 GPIO_ACTIVE_HIGH>; 217 mosi-gpios = <&gpy3 3 GPIO_ACTIVE_HIGH>; 218 219 lcd@0 { 220 compatible = "samsung,ld9040"; 221 reg = <0>; 222 223 spi-max-frequency = <1200000>; 224 225 vdd3-supply = <&vmipi_reg>; 226 vci-supply = <&vcclcd_reg>; 227 228 reset-gpios = <&gpy4 5 GPIO_ACTIVE_HIGH>; 229 power-on-delay = <10>; 230 reset-delay = <10>; 231 232 panel-width-mm = <56>; 233 panel-height-mm = <93>; 234 235 display-timings { 236 timing { 237 clock-frequency = <23492370>; 238 hactive = <480>; 239 vactive = <800>; 240 hback-porch = <16>; 241 hfront-porch = <16>; 242 vback-porch = <2>; 243 vfront-porch = <28>; 244 hsync-len = <2>; 245 vsync-len = <1>; 246 hsync-active = <0>; 247 vsync-active = <0>; 248 de-active = <0>; 249 pixelclk-active = <0>; 250 }; 251 }; 252 253 port { 254 lcd_ep: endpoint { 255 remote-endpoint = <&fimd_dpi_ep>; 256 }; 257 }; 258 }; 259 }; 260 261 fixed-rate-clocks { 262 xxti { 263 compatible = "samsung,clock-xxti"; 264 clock-frequency = <0>; 265 }; 266 267 xusbxti { 268 compatible = "samsung,clock-xusbxti"; 269 clock-frequency = <24000000>; 270 }; 271 272 pmic_ap_clk: pmic-ap-clk { 273 /* Workaround for missing clock on max8997 PMIC */ 274 compatible = "fixed-clock"; 275 #clock-cells = <0>; 276 clock-frequency = <32768>; 277 }; 278 }; 279}; 280 281&camera { 282 pinctrl-0 = <&cam_port_a_clk_active>; 283 pinctrl-names = "default"; 284 status = "okay"; 285 assigned-clocks = <&clock CLK_MOUT_CAM0>, <&clock CLK_MOUT_CAM1>; 286 assigned-clock-parents = <&clock CLK_XUSBXTI>, <&clock CLK_XUSBXTI>; 287}; 288 289&csis_1 { 290 status = "okay"; 291 vddcore-supply = <&vusb_reg>; 292 vddio-supply = <&vmipi_reg>; 293 clock-frequency = <160000000>; 294 #address-cells = <1>; 295 #size-cells = <0>; 296 297 port@4 { 298 reg = <4>; 299 csis1_ep: endpoint { 300 remote-endpoint = <&s5k5bafx_ep>; 301 data-lanes = <1>; 302 samsung,csis-hs-settle = <6>; 303 }; 304 }; 305}; 306 307&cpu0 { 308 cpu0-supply = <&varm_breg>; 309}; 310 311&cpu_thermal { 312 cooling-maps { 313 map0 { 314 /* Corresponds to 800MHz */ 315 cooling-device = <&cpu0 2 2>; 316 }; 317 map1 { 318 /* Corresponds to 200MHz */ 319 cooling-device = <&cpu0 4 4>; 320 }; 321 }; 322}; 323 324&ehci { 325 status = "okay"; 326 327 phys = <&exynos_usbphy 1>; 328 phy-names = "host"; 329}; 330 331&exynos_usbphy { 332 status = "okay"; 333 334 vbus-supply = <&safe1_sreg>; 335}; 336 337&fimc_0 { 338 status = "okay"; 339 340 assigned-clocks = <&clock CLK_MOUT_FIMC0>, <&clock CLK_SCLK_FIMC0>; 341 assigned-clock-parents = <&clock CLK_SCLK_MPLL>; 342 assigned-clock-rates = <0>, <160000000>; 343}; 344 345&fimc_1 { 346 /* Back camera not implemented */ 347 status = "disabled"; 348 349 assigned-clocks = <&clock CLK_MOUT_FIMC1>, <&clock CLK_SCLK_FIMC1>; 350 assigned-clock-parents = <&clock CLK_SCLK_MPLL>; 351 assigned-clock-rates = <0>, <160000000>; 352}; 353 354&fimc_2 { 355 status = "okay"; 356 357 assigned-clocks = <&clock CLK_MOUT_FIMC2>, <&clock CLK_SCLK_FIMC2>; 358 assigned-clock-parents = <&clock CLK_SCLK_MPLL>; 359 assigned-clock-rates = <0>, <160000000>; 360}; 361 362&fimc_3 { 363 /* Back camera not implemented */ 364 status = "disabled"; 365 366 assigned-clocks = <&clock CLK_MOUT_FIMC3>, <&clock CLK_SCLK_FIMC3>; 367 assigned-clock-parents = <&clock CLK_SCLK_MPLL>; 368 assigned-clock-rates = <0>, <160000000>; 369}; 370 371&fimd { 372 status = "okay"; 373 #address-cells = <1>; 374 #size-cells = <0>; 375 376 samsung,invert-vden; 377 samsung,invert-vclk; 378 379 pinctrl-0 = <&lcd_clk>, <&lcd_data24>; 380 pinctrl-names = "default"; 381 382 port@3 { 383 reg = <3>; 384 385 fimd_dpi_ep: endpoint { 386 remote-endpoint = <&lcd_ep>; 387 }; 388 }; 389}; 390 391&gpu { 392 status = "okay"; 393 394 mali-supply = <&vg3d_breg>; 395}; 396 397&hsotg { 398 status = "okay"; 399 400 dr_mode = "otg"; 401 vusb_d-supply = <&vusb_reg>; 402 vusb_a-supply = <&vusbdac_reg>; 403}; 404 405&i2c_1 { 406 status = "okay"; 407 408 samsung,i2c-sda-delay = <100>; 409 samsung,i2c-slave-addr = <0x10>; 410 samsung,i2c-max-bus-freq = <100000>; 411 412 lis3dh: accelerometer@19 { 413 compatible = "st,lis3dh-accel"; 414 reg = <0x19>; 415 416 mount-matrix = "0", "-1", "0", 417 "1", "0", "0", 418 "0", "0", "1"; 419 }; 420}; 421 422&i2c_3 { 423 status = "okay"; 424 425 samsung,i2c-sda-delay = <100>; 426 samsung,i2c-slave-addr = <0x10>; 427 samsung,i2c-max-bus-freq = <100000>; 428 429 pinctrl-0 = <&i2c3_bus>; 430 pinctrl-names = "default"; 431 432 touchscreen@4a { 433 compatible = "atmel,maxtouch"; 434 reg = <0x4a>; 435 436 interrupt-parent = <&gpx0>; 437 interrupts = <4 IRQ_TYPE_EDGE_FALLING>; 438 }; 439}; 440 441&i2c_5 { 442 status = "okay"; 443 444 samsung,i2c-sda-delay = <100>; 445 samsung,i2c-slave-addr = <0x10>; 446 samsung,i2c-max-bus-freq = <100000>; 447 448 pinctrl-0 = <&i2c5_bus>; 449 pinctrl-names = "default"; 450 451 pmic@66 { 452 compatible = "maxim,max8997-pmic"; 453 reg = <0x66>; 454 455 interrupts-extended = <&gpx0 7 IRQ_TYPE_NONE>, 456 <&gpx2 3 IRQ_TYPE_EDGE_FALLING>; 457 458 max8997,pmic-buck1-uses-gpio-dvs; 459 max8997,pmic-buck2-uses-gpio-dvs; 460 max8997,pmic-buck5-uses-gpio-dvs; 461 462 max8997,pmic-ignore-gpiodvs-side-effect; 463 max8997,pmic-buck125-default-dvs-idx = <0>; 464 465 max8997,pmic-buck125-dvs-gpios = <&gpx0 5 GPIO_ACTIVE_HIGH>, 466 <&gpx0 6 GPIO_ACTIVE_HIGH>, 467 <&gpl0 0 GPIO_ACTIVE_HIGH>; 468 469 max8997,pmic-buck1-dvs-voltage = <1350000>, <1300000>, 470 <1250000>, <1200000>, 471 <1150000>, <1100000>, 472 <1000000>, <950000>; 473 474 max8997,pmic-buck2-dvs-voltage = <1100000>, <1000000>, 475 <950000>, <900000>, 476 <1100000>, <1000000>, 477 <950000>, <900000>; 478 479 max8997,pmic-buck5-dvs-voltage = <1200000>, <1200000>, 480 <1200000>, <1200000>, 481 <1200000>, <1200000>, 482 <1200000>, <1200000>; 483 484 pinctrl-0 = <&max8997_irq>, <&otg_gp>, <&usb_sel>; 485 pinctrl-names = "default"; 486 487 charger-supply = <&charger_reg>; 488 489 regulators { 490 vadc_reg: LDO1 { 491 regulator-name = "VADC_3.3V_C210"; 492 regulator-min-microvolt = <3300000>; 493 regulator-max-microvolt = <3300000>; 494 regulator-always-on; 495 496 }; 497 valive_reg: LDO2 { 498 regulator-name = "VALIVE_1.1V_C210"; 499 regulator-min-microvolt = <1100000>; 500 regulator-max-microvolt = <1100000>; 501 regulator-always-on; 502 503 }; 504 505 vusb_reg: LDO3 { 506 regulator-name = "VUSB_1.1V_C210"; 507 regulator-min-microvolt = <1100000>; 508 regulator-max-microvolt = <1100000>; 509 }; 510 511 vmipi_reg: LDO4 { 512 regulator-name = "VMIPI_1.8V"; 513 regulator-min-microvolt = <1800000>; 514 regulator-max-microvolt = <1800000>; 515 regulator-always-on; 516 }; 517 518 vhsic_reg: LDO5 { 519 regulator-name = "VHSIC_1.2V"; 520 regulator-min-microvolt = <1200000>; 521 regulator-max-microvolt = <1200000>; 522 regulator-always-on; 523 }; 524 525 vpda_reg: LDO6 { 526 regulator-name = "VCC_1.8V_PDA"; 527 regulator-min-microvolt = <1800000>; 528 regulator-max-microvolt = <1800000>; 529 regulator-always-on; 530 }; 531 532 vcam_reg: LDO7 { 533 regulator-name = "CAM_ISP_1.8V"; 534 regulator-min-microvolt = <1800000>; 535 regulator-max-microvolt = <1800000>; 536 }; 537 538 vusbdac_reg: LDO8 { 539 regulator-name = "VUSB+VDAC_3.3V_C210"; 540 regulator-min-microvolt = <3300000>; 541 regulator-max-microvolt = <3300000>; 542 }; 543 544 vccpda_reg: LDO9 { 545 regulator-name = "VCC_2.8V_PDA"; 546 regulator-min-microvolt = <2800000>; 547 regulator-max-microvolt = <2800000>; 548 regulator-always-on; 549 }; 550 551 vtouch_reg: LDO11 { 552 regulator-name = "TOUCH_2.8V"; 553 regulator-min-microvolt = <2800000>; 554 regulator-max-microvolt = <2800000>; 555 }; 556 557 vpll_reg: LDO10 { 558 regulator-name = "VPLL_1.1V"; 559 regulator-min-microvolt = <1100000>; 560 regulator-max-microvolt = <1100000>; 561 regulator-always-on; 562 }; 563 564 vtcam_reg: LDO12 { 565 regulator-name = "VT_CAM_1.8V"; 566 regulator-min-microvolt = <1800000>; 567 regulator-max-microvolt = <1800000>; 568 569 /* 570 * Force-enable this regulator; otherwise the 571 * kernel hangs very early in the boot process 572 * for about 12 seconds, without apparent 573 * reason. 574 */ 575 regulator-always-on; 576 }; 577 578 vcclcd_reg: LDO13 { 579 regulator-name = "VCC_3.0V_LCD"; 580 regulator-min-microvolt = <3000000>; 581 regulator-max-microvolt = <3000000>; 582 }; 583 584 vmotor_reg: LDO14 { 585 regulator-name = "VCC_2.8V_MOTOR"; 586 regulator-min-microvolt = <2800000>; 587 regulator-max-microvolt = <2800000>; 588 }; 589 590 vled_reg: LDO15 { 591 regulator-name = "LED_A_2.8V"; 592 regulator-min-microvolt = <2800000>; 593 regulator-max-microvolt = <2800000>; 594 }; 595 596 camsensor_reg: LDO16 { 597 regulator-name = "CAM_SENSOR_IO_1.8V"; 598 regulator-min-microvolt = <1800000>; 599 regulator-max-microvolt = <1800000>; 600 }; 601 602 vtf_reg: LDO17 { 603 regulator-name = "VTF_2.8V"; 604 regulator-min-microvolt = <2800000>; 605 regulator-max-microvolt = <2800000>; 606 }; 607 608 vtouchled_reg: LDO18 { 609 regulator-name = "TOUCH_LED_3.3V"; 610 regulator-min-microvolt = <2500000>; 611 regulator-max-microvolt = <3300000>; 612 }; 613 614 vddq_reg: LDO21 { 615 regulator-name = "VDDQ_M1M2_1.2V"; 616 regulator-min-microvolt = <1200000>; 617 regulator-max-microvolt = <1200000>; 618 regulator-always-on; 619 }; 620 621 varm_breg: BUCK1 { 622 regulator-name = "VARM_1.2V_C210"; 623 regulator-min-microvolt = <65000>; 624 regulator-max-microvolt = <2225000>; 625 regulator-always-on; 626 }; 627 628 vint_breg: BUCK2 { 629 regulator-name = "VINT_1.1V_C210"; 630 regulator-min-microvolt = <65000>; 631 regulator-max-microvolt = <2225000>; 632 regulator-always-on; 633 }; 634 635 vg3d_breg: BUCK3 { 636 regulator-name = "G3D_1.1V"; 637 regulator-min-microvolt = <900000>; 638 regulator-max-microvolt = <1200000>; 639 regulator-microvolt-offset = <50000>; 640 regulator-always-on; 641 }; 642 643 camisp_breg: BUCK4 { 644 regulator-name = "CAM_ISP_CORE_1.2V"; 645 regulator-min-microvolt = <1200000>; 646 regulator-max-microvolt = <1200000>; 647 }; 648 649 vmem_breg: BUCK5 { 650 regulator-name = "VMEM_1.2V"; 651 regulator-min-microvolt = <1200000>; 652 regulator-max-microvolt = <1200000>; 653 regulator-always-on; 654 }; 655 656 vccsub_breg: BUCK7 { 657 regulator-name = "VCC_SUB_2.0V"; 658 regulator-min-microvolt = <2000000>; 659 regulator-max-microvolt = <2000000>; 660 regulator-always-on; 661 }; 662 663 safe1_sreg: ESAFEOUT1 { 664 regulator-name = "SAFEOUT1"; 665 }; 666 667 safe2_sreg: ESAFEOUT2 { 668 regulator-name = "SAFEOUT2"; 669 regulator-boot-on; 670 }; 671 672 EN32KHZ_AP { 673 regulator-name = "EN32KHZ_AP"; 674 regulator-always-on; 675 }; 676 677 EN32KHZ_CP { 678 regulator-name = "EN32KHZ_CP"; 679 regulator-always-on; 680 }; 681 682 charger_reg: CHARGER { 683 regulator-name = "CHARGER"; 684 regulator-min-microamp = <200000>; 685 regulator-max-microamp = <950000>; 686 }; 687 688 chargercv_reg: CHARGER_CV { 689 regulator-name = "CHARGER_CV"; 690 regulator-min-microvolt = <4200000>; 691 regulator-max-microvolt = <4200000>; 692 regulator-always-on; 693 }; 694 695 CHARGER_TOPOFF { 696 regulator-name = "CHARGER_TOPOFF"; 697 regulator-min-microamp = <200000>; 698 regulator-max-microamp = <200000>; 699 regulator-always-on; 700 }; 701 }; 702 }; 703}; 704 705&i2c_7 { 706 status = "okay"; 707 708 samsung,i2c-sda-delay = <100>; 709 samsung,i2c-slave-addr = <0x10>; 710 samsung,i2c-max-bus-freq = <400000>; 711 712 pinctrl-0 = <&i2c7_bus>; 713 pinctrl-names = "default"; 714 715 magnetometer@c { 716 compatible = "asahi-kasei,ak8975"; 717 reg = <0x0c>; 718 719 gpios = <&gpx2 2 GPIO_ACTIVE_HIGH>; 720 }; 721}; 722 723&pinctrl_0 { 724 pinctrl-names = "default"; 725 pinctrl-0 = <&sleep0>; 726 727 sleep0: sleep-state { 728 gpa0-0-pin { 729 samsung,pins = "gpa0-0"; 730 samsung,pin-con-pdn = <EXYNOS_PIN_PDN_INPUT>; 731 samsung,pin-pud-pdn = <EXYNOS_PIN_PULL_NONE>; 732 }; 733 734 gpa0-1-pin { 735 samsung,pins = "gpa0-1"; 736 samsung,pin-con-pdn = <EXYNOS_PIN_PDN_OUT0>; 737 samsung,pin-pud-pdn = <EXYNOS_PIN_PULL_NONE>; 738 }; 739 740 gpa0-2-pin { 741 samsung,pins = "gpa0-2"; 742 samsung,pin-con-pdn = <EXYNOS_PIN_PDN_INPUT>; 743 samsung,pin-pud-pdn = <EXYNOS_PIN_PULL_NONE>; 744 }; 745 746 gpa0-3-pin { 747 samsung,pins = "gpa0-3"; 748 samsung,pin-con-pdn = <EXYNOS_PIN_PDN_OUT1>; 749 samsung,pin-pud-pdn = <EXYNOS_PIN_PULL_NONE>; 750 }; 751 }; 752}; 753 754&pinctrl_1 { 755 mhl_int: mhl-int-pins { 756 samsung,pins = "gpf3-5"; 757 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 758 }; 759 760 i2c_mhl_bus: i2c-mhl-bus-pins { 761 samsung,pins = "gpf0-4", "gpf0-6"; 762 samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 763 samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>; 764 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 765 }; 766 767 usb_sel: usb-sel-pins { 768 samsung,pins = "gpl0-6"; 769 samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>; 770 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 771 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 772 samsung,pin-val = <0>; 773 }; 774 775 bt_en: bt-en-pins { 776 samsung,pins = "gpl0-4"; 777 samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>; 778 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 779 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>; 780 samsung,pin-val = <0>; 781 }; 782 783 bt_res: bt-res-pins { 784 samsung,pins = "gpl1-0"; 785 samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>; 786 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 787 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>; 788 samsung,pin-val = <0>; 789 }; 790 791 otg_gp: otg-gp-pins { 792 samsung,pins = "gpx3-3"; 793 samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>; 794 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 795 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 796 samsung,pin-val = <0>; 797 }; 798 799 mag_mhl_gpio: mag-mhl-pins { 800 samsung,pins = "gpd0-2"; 801 samsung,pin-function = <EXYNOS_PIN_FUNC_3>; 802 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 803 }; 804 805 max8997_irq: max8997-irq-pins { 806 samsung,pins = "gpx0-7"; 807 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 808 }; 809 810 max17042_fuel_irq: max17042-fuel-irq-pins { 811 samsung,pins = "gpx2-3"; 812 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 813 }; 814 815 tsp224_irq: tsp224-irq-pins { 816 samsung,pins = "gpx0-4"; 817 samsung,pin-pud = <EXYNOS_PIN_PULL_UP>; 818 }; 819}; 820 821&rtc { 822 status = "okay"; 823 clocks = <&clock CLK_RTC>, <&pmic_ap_clk>; 824 clock-names = "rtc", "rtc_src"; 825}; 826 827&sdhci_0 { 828 status = "okay"; 829 830 bus-width = <8>; 831 non-removable; 832 vmmc-supply = <&vemmc_reg>; 833 834 pinctrl-0 = <&sd0_clk>, <&sd0_cmd>, <&sd0_bus8>; 835 pinctrl-names = "default"; 836}; 837 838&sdhci_2 { 839 status = "okay"; 840 841 bus-width = <4>; 842 cd-gpios = <&gpx3 4 GPIO_ACTIVE_LOW>; 843 vmmc-supply = <&vtf_reg>; 844 845 pinctrl-0 = <&sd2_clk>, <&sd2_cmd>, <&sd2_bus4>; 846 pinctrl-names = "default"; 847}; 848 849&sdhci_3 { 850 status = "okay"; 851 852 #address-cells = <1>; 853 #size-cells = <0>; 854 855 non-removable; 856 bus-width = <4>; 857 mmc-pwrseq = <&wlan_pwrseq>; 858 vmmc-supply = <&vtf_reg>; 859 860 pinctrl-names = "default"; 861 pinctrl-0 = <&sd3_clk>, <&sd3_cmd>, <&sd3_bus4>; 862 863 brcmf: wifi@1 { 864 compatible = "brcm,bcm4330-fmac", "brcm,bcm4329-fmac"; 865 reg = <1>; 866 867 interrupt-parent = <&gpx2>; 868 interrupts = <5 IRQ_TYPE_LEVEL_HIGH>; 869 interrupt-names = "host-wake"; 870 }; 871}; 872 873&serial_0 { 874 status = "okay"; 875 876 pinctrl-names = "default"; 877 pinctrl-0 = <&bt_en>, <&bt_res>, <&uart0_data>, <&uart0_fctl>; 878 879 bluetooth { 880 compatible = "brcm,bcm4330-bt"; 881 882 shutdown-gpios = <&gpl0 4 GPIO_ACTIVE_HIGH>; 883 reset-gpios = <&gpl1 0 GPIO_ACTIVE_LOW>; 884 device-wakeup-gpios = <&gpx3 1 GPIO_ACTIVE_HIGH>; 885 886 interrupt-parent = <&gpx2>; 887 interrupts = <6 IRQ_TYPE_EDGE_FALLING>; 888 interrupt-names = "host-wakeup"; 889 }; 890}; 891 892&serial_1 { 893 status = "okay"; 894}; 895 896&serial_2 { 897 status = "okay"; 898}; 899 900&serial_3 { 901 status = "okay"; 902}; 903 904&tmu { 905 status = "okay"; 906}; 907