1 // SPDX-License-Identifier: GPL-2.0-only 2 /* 3 * Devicetree for the Samsung XCover 2 GT-S771 4 */ 5 6 /dts-v1/; 7 #include "ste-db8500.dtsi" 8 #include "ste-ab8505.dtsi" 9 #include "ste-dbx5x0-pinctrl.dtsi" 10 #include <dt-bindings/gpio/gpio.h> 11 #include <dt-bindings/leds/common.h> 12 #include <dt-bindings/input/input.h> 13 #include <dt-bindings/interrupt-controller/irq 14 15 / { 16 model = "Samsung XCover 2 (GT-S7710)"; 17 compatible = "samsung,skomer", "st-eri 18 19 chosen { 20 stdout-path = &serial2; 21 }; 22 23 battery: battery { 24 compatible = "samsung,eb485159 25 }; 26 27 thermal-zones { 28 battery-thermal { 29 /* This zone will be p 30 polling-delay = <0>; 31 polling-delay-passive 32 thermal-sensors = <&ba 33 34 trips { 35 battery-crit-h 36 temper 37 hyster 38 type = 39 }; 40 }; 41 }; 42 }; 43 44 bat_therm: thermistor { 45 compatible = "samsung,1404-001 46 io-channels = <&gpadc 0x02>; / 47 pullup-uv = <1800000>; 48 pullup-ohm = <230000>; 49 pulldown-ohm = <0>; 50 #thermal-sensor-cells = <0>; 51 }; 52 53 /* TI TXS0206 level translator for 2.9 54 sd_level_translator: regulator-gpio { 55 compatible = "regulator-fixed" 56 57 /* GPIO87 EN */ 58 gpios = <&gpio2 23 GPIO_ACTIVE 59 enable-active-high; 60 61 regulator-name = "sd-level-tra 62 regulator-min-microvolt = <290 63 regulator-max-microvolt = <290 64 regulator-type = "voltage"; 65 66 startup-delay-us = <200>; 67 68 pinctrl-names = "default"; 69 pinctrl-0 = <&sd_level_transla 70 }; 71 72 /* External LDO MIC5366-3.3YMT for eMM 73 ldo_3v3_reg: regulator-gpio-ldo-3v3 { 74 compatible = "regulator-fixed" 75 regulator-name = "en-3v3-fixed 76 regulator-min-microvolt = <330 77 regulator-max-microvolt = <330 78 gpio = <&gpio6 31 GPIO_ACTIVE_ 79 startup-delay-us = <5000>; 80 enable-active-high; 81 pinctrl-names = "default"; 82 pinctrl-0 = <&emmc_ldo_en_defa 83 }; 84 85 wlan_en: regulator-gpio-wlan-en { 86 compatible = "regulator-fixed" 87 regulator-name = "wl-reg-on"; 88 regulator-min-microvolt = <300 89 regulator-max-microvolt = <300 90 startup-delay-us = <200000>; 91 /* GPIO215 WLAN_EN */ 92 gpio = <&gpio6 23 GPIO_ACTIVE_ 93 enable-active-high; 94 pinctrl-names = "default"; 95 pinctrl-0 = <&wlan_en_default_ 96 }; 97 98 vibrator { 99 compatible = "gpio-vibrator"; 100 enable-gpios = <&gpio6 3 GPIO_ 101 pinctrl-names = "default"; 102 pinctrl-0 = <&vibrator_default 103 }; 104 105 gpio-keys { 106 compatible = "gpio-keys"; 107 pinctrl-names = "default"; 108 pinctrl-0 = <&gpio_keys_defaul 109 110 button-home { 111 linux,code = <KEY_HOME 112 label = "HOME"; 113 /* GPIO91 */ 114 gpios = <&gpio2 27 GPI 115 }; 116 button-volup { 117 linux,code = <KEY_VOLU 118 label = "VOL+"; 119 /* GPIO67 */ 120 gpios = <&gpio2 3 GPIO 121 }; 122 button-voldown { 123 linux,code = <KEY_VOLU 124 label = "VOL-"; 125 /* GPIO92 */ 126 gpios = <&gpio2 28 GPI 127 }; 128 button-menu { 129 linux,code = <KEY_MENU 130 label = "MENU"; 131 /* GPIO204 */ 132 gpios = <&gpio6 12 GPI 133 }; 134 button-back { 135 linux,code = <KEY_BACK 136 label = "BACK"; 137 /* GPIO205 */ 138 gpios = <&gpio6 13 GPI 139 }; 140 }; 141 142 ktd253: backlight { 143 compatible = "kinetic,ktd253"; 144 /* GPIO 69 */ 145 enable-gpios = <&gpio2 5 GPIO_ 146 /* Default to 13/32 brightness 147 default-brightness = <13>; 148 pinctrl-names = "default"; 149 pinctrl-0 = <&gpio_backlight_d 150 }; 151 152 /* Richtek RT8515GQW Flash LED Driver 153 flash { 154 compatible = "richtek,rt8515"; 155 /* GPIO 140 */ 156 enf-gpios = <&gpio4 12 GPIO_AC 157 /* GPIO 141 */ 158 ent-gpios = <&gpio4 13 GPIO_AC 159 /* 160 * RFS is 16 kOhm and RTS is 1 161 * the flash max current 343mA 162 * current 55 mA. 163 */ 164 richtek,rfs-ohms = <16000>; 165 richtek,rts-ohms = <100000>; 166 pinctrl-names = "default"; 167 pinctrl-0 = <&gpio_flash_defau 168 169 led { 170 function = LED_FUNCTIO 171 color = <LED_COLOR_ID_ 172 flash-max-timeout-us = 173 flash-max-microamp = < 174 led-max-microamp = <55 175 }; 176 }; 177 178 i2c-gpio-0 { 179 compatible = "i2c-gpio"; 180 sda-gpios = <&gpio4 16 (GPIO_A 181 scl-gpios = <&gpio4 15 (GPIO_A 182 pinctrl-names = "default"; 183 pinctrl-0 = <&i2c_gpio_0_defau 184 #address-cells = <1>; 185 #size-cells = <0>; 186 /* TODO: this should be used b 187 }; 188 189 i2c-gpio-1 { 190 compatible = "i2c-gpio"; 191 sda-gpios = <&gpio4 24 (GPIO_A 192 scl-gpios = <&gpio4 23 (GPIO_A 193 pinctrl-names = "default"; 194 pinctrl-0 = <&i2c_gpio_1_defau 195 #address-cells = <1>; 196 #size-cells = <0>; 197 magnetometer@c { 198 compatible = "alps,hsc 199 reg = <0x0c>; 200 avdd-supply = <&ab8500 201 dvdd-supply = <&ab8500 202 }; 203 }; 204 205 soc { 206 // External Micro SD slot 207 mmc@80126000 { 208 arm,primecell-periphid 209 max-frequency = <10000 210 bus-width = <4>; 211 cap-sd-highspeed; 212 cap-mmc-highspeed; 213 /* All direction contr 214 st,sig-pin-fbclk; 215 full-pwr-cycle; 216 vmmc-supply = <&ab8500 217 vqmmc-supply = <&sd_le 218 pinctrl-names = "defau 219 pinctrl-0 = <&mc0_a_1_ 220 pinctrl-1 = <&mc0_a_1_ 221 status = "okay"; 222 }; 223 224 // WLAN SDIO channel 225 mmc@80118000 { 226 arm,primecell-periphid 227 max-frequency = <50000 228 bus-width = <4>; 229 non-removable; 230 cap-sd-highspeed; 231 vmmc-supply = <&wlan_e 232 pinctrl-names = "defau 233 pinctrl-0 = <&mc1_a_2_ 234 pinctrl-1 = <&mc1_a_2_ 235 status = "okay"; 236 #address-cells = <1>; 237 #size-cells = <0>; 238 239 wifi@1 { 240 compatible = " 241 reg = <1>; 242 /* GPIO216 WL_ 243 interrupt-pare 244 interrupts = < 245 interrupt-name 246 pinctrl-names 247 pinctrl-0 = <& 248 }; 249 }; 250 251 /* 252 * eMMC seems to be mostly Sam 253 */ 254 mmc@80005000 { 255 arm,primecell-periphid 256 max-frequency = <10000 257 bus-width = <8>; 258 non-removable; 259 cap-mmc-highspeed; 260 mmc-ddr-1_8v; 261 no-sdio; 262 no-sd; 263 /* From datasheet page 264 post-power-on-delay-ms 265 vmmc-supply = <&ldo_3v 266 pinctrl-names = "defau 267 pinctrl-0 = <&mc2_a_1_ 268 pinctrl-1 = <&mc2_a_1_ 269 270 status = "okay"; 271 }; 272 273 /* GBF (Bluetooth) UART */ 274 serial@80120000 { 275 pinctrl-names = "defau 276 pinctrl-0 = <&u0_a_1_d 277 pinctrl-1 = <&u0_a_1_s 278 status = "okay"; 279 280 /* FIXME: not quite wo 281 bluetooth { 282 /* BCM4334B0 a 283 compatible = " 284 shutdown-gpios 285 device-wakeup- 286 host-wakeup-gp 287 pinctrl-names 288 pinctrl-0 = <& 289 }; 290 }; 291 292 /* GPS UART */ 293 serial@80121000 { 294 status = "okay"; 295 pinctrl-names = "defau 296 pinctrl-0 = <&u1rxtx_a 297 pinctrl-1 = <&u1rxtx_a 298 299 gnss { 300 /* The CSRG05T 301 compatible = " 302 /* GPS_RSTN on 303 reset-gpios = 304 /* GPS_ON_OFF 305 sirf,onoff-gpi 306 /* GPS_1V8 (VS 307 vcc-supply = < 308 pinctrl-names 309 pinctrl-0 = <& 310 /* According t 311 current-speed 312 }; 313 }; 314 315 /* Debugging console UART conn 316 serial@80007000 { 317 status = "okay"; 318 pinctrl-names = "defau 319 pinctrl-0 = <&u2rxtx_c 320 pinctrl-1 = <&u2rxtx_c 321 }; 322 323 prcmu@80157000 { 324 ab8505 { 325 phy { 326 pinctr 327 pinctr 328 pinctr 329 }; 330 331 ab8500_fg { 332 line-i 333 }; 334 335 regulator { 336 ab8500 337 338 339 340 341 }; 342 343 ab8500 344 345 346 347 348 }; 349 350 ab8500 351 352 353 354 355 }; 356 357 ab8500 358 359 360 361 362 }; 363 364 ab8500 365 366 367 368 369 }; 370 371 ab8500 372 373 374 375 376 }; 377 378 ab8500 379 380 381 }; 382 }; 383 }; 384 }; 385 386 /* I2C0 */ 387 i2c@80004000 { 388 status = "okay"; 389 390 pinctrl-names = "defau 391 pinctrl-0 = <&i2c0_a_1 392 pinctrl-1 = <&i2c0_a_1 393 394 proximity@44 { 395 compatible = " 396 clock-frequenc 397 reg = <0x44>; 398 399 interrupt-pare 400 interrupts = < 401 vdd-supply = < 402 vio-supply = < 403 pinctrl-names 404 pinctrl-0 = <& 405 sharp,proximit 406 sharp,proximit 407 }; 408 }; 409 410 411 /* I2C2 */ 412 i2c@80128000 { 413 status = "okay"; 414 415 pinctrl-names = "defau 416 pinctrl-0 = <&i2c2_b_2 417 pinctrl-1 = <&i2c2_b_2 418 419 accel@18 { 420 compatible = " 421 clock-frequenc 422 reg = <0x18>; 423 424 /* GPIO224 use 425 interrupt-pare 426 interrupts = < 427 428 mount-matrix = 429 430 431 vdd-supply = < 432 vddio-supply = 433 pinctrl-names 434 pinctrl-0 = <& 435 }; 436 }; 437 438 /* I2C3 */ 439 i2c@80110000 { 440 status = "okay"; 441 442 pinctrl-names = "defau 443 pinctrl-0 = <&i2c3_c_2 444 pinctrl-1 = <&i2c3_c_2 445 446 /* Cypress CY8CTMA140 447 touchscreen@20 { 448 compatible = " 449 clock-frequenc 450 reg = <0x20>; 451 452 touchscreen-si 453 touchscreen-si 454 touchscreen-ma 455 456 /* GPIO218 for 457 interrupt-pare 458 interrupts = < 459 460 /* VDD is "dig 461 vdd-supply = < 462 /* VCPIN is "a 463 vcpin-supply = 464 465 pinctrl-names 466 pinctrl-0 = <& 467 }; 468 }; 469 470 mcde@a0350000 { 471 status = "okay"; 472 pinctrl-names = "defau 473 pinctrl-0 = <&dsi_defa 474 475 dsi@a0351000 { 476 panel { 477 /* NT3 478 compat 479 reg = 480 /* v_l 481 vdd-su 482 /* v_l 483 vddi-s 484 /* GPI 485 reset- 486 pinctr 487 pinctr 488 backli 489 }; 490 }; 491 }; 492 }; 493 }; 494 495 &pinctrl { 496 sdi0 { 497 mc0_a_1_default { 498 default_cfg1 { 499 /* GPIO18, 19 500 ste,config = < 501 }; 502 }; 503 }; 504 505 /* This is a reset line for the eMMC * 506 sdi2 { 507 mc2_a_1_default { 508 default_cfg2 { 509 pins = "GPIO13 510 ste,config = < 511 }; 512 }; 513 }; 514 515 mcde { 516 dsi_default_mode: dsi_default 517 default_mux1 { 518 /* Mux in VSI0 519 function = "lc 520 groups = "lcdv 521 }; 522 default_cfg1 { 523 pins = "GPIO68 524 ste,config = < 525 }; 526 }; 527 }; 528 529 /* Two GPIO lines used by the display 530 display { 531 display_default_mode: display_ 532 skomer_cfg1 { 533 /* 534 * OLED DETECT 535 * on "PBA" wh 536 */ 537 pins = "GPIO93 538 ste,config = < 539 }; 540 skomer_cfg2 { 541 pins = "GPIO13 542 /* 543 * MIPI_DSI0_R 544 * (de-asserte 545 * from the di 546 */ 547 ste,config = < 548 }; 549 }; 550 }; 551 backlight { 552 gpio_backlight_default_mode: b 553 skomer_cfg1 { 554 pins = "GPIO69 555 ste,config = < 556 }; 557 }; 558 }; 559 flash { 560 gpio_flash_default_mode: flash 561 skomer_cfg1 { 562 pins = "GPIO14 563 ste,config = < 564 }; 565 }; 566 }; 567 /* GPIO that enables the 2.9V SD card 568 sd-level-translator { 569 sd_level_translator_default: s 570 /* level shifter on GP 571 skomer_cfg1 { 572 pins = "GPIO87 573 ste,config = < 574 }; 575 }; 576 }; 577 /* GPIO that enables the LDO regulator 578 emmc-ldo { 579 emmc_ldo_en_default_mode: emmc 580 /* LDO enable on GPIO2 581 skomer_cfg1 { 582 pins = "GPIO22 583 ste,config = < 584 }; 585 }; 586 }; 587 /* GPIO keys */ 588 gpio-keys { 589 gpio_keys_default_mode: gpio_k 590 skomer_cfg1 { 591 pins = "GPIO67 592 "GPIO91 593 "GPIO92 594 "GPIO20 595 "GPIO20 596 ste,co 597 }; 598 }; 599 }; 600 /* Interrupt line for BMA254 */ 601 bma254 { 602 bma254_skomer_default: bma254_ 603 skomer_cfg1 { 604 pins = "GPIO22 605 ste,config = < 606 }; 607 }; 608 }; 609 /* Interrupt line for light/proximity 610 gp2ap002 { 611 gp2ap002_skomer_default: gp2ap 612 skomer_cfg1 { 613 pins = "GPIO14 614 ste,config = < 615 }; 616 }; 617 }; 618 /* GPIO-based I2C bus for NCP6914 */ 619 i2c-gpio-0 { 620 i2c_gpio_0_default: i2c_gpio_0 621 skomer_cfg1 { 622 pins = "GPIO14 623 ste,config = < 624 }; 625 }; 626 }; 627 /* GPIO-based I2C bus for ALPS HSCD co 628 i2c-gpio-1 { 629 i2c_gpio_1_default: i2c_gpio_1 630 skomer_cfg1 { 631 pins = "GPIO15 632 ste,config = < 633 }; 634 }; 635 }; 636 wlan { 637 wlan_default_mode: wlan_defaul 638 skomer_cfg1 { 639 pins = "GPIO21 640 ste,config = < 641 }; 642 }; 643 wlan_en_default_mode: wlan_en_ 644 skomer_cfg2 { 645 pins = "GPIO21 646 ste,config = < 647 }; 648 }; 649 }; 650 bluetooth { 651 bluetooth_default_mode: blueto 652 skomer_cfg1 { 653 pins = "GPIO19 654 ste,config = < 655 }; 656 skomer_cfg2 { 657 pins = "GPIO97 658 ste,config = < 659 }; 660 }; 661 }; 662 vibrator { 663 vibrator_default: vibrator_def 664 skomer_cfg1 { 665 pins = "GPIO19 666 ste,config = < 667 }; 668 }; 669 }; 670 /* Interrupt line for the Cypress TMA1 671 touchscreen { 672 tma140_skomer_default: tma140_ 673 skomer_cfg1 { 674 pins = "GPIO21 675 ste,config = < 676 }; 677 }; 678 }; 679 g05ta03 { 680 g05ta03_skomer_default: g05ta0 681 /* Reset line, start o 682 skomer_cfg1 { 683 pins = "GPIO20 684 ste,config = < 685 }; 686 /* GPS_ON_OFF, start o 687 skomer_cfg2 { 688 pins = "GPIO86 689 ste,config = < 690 }; 691 }; 692 }; 693 }; 694 695 &ab8505_gpio { 696 /* Hog a few default settings */ 697 pinctrl-names = "default"; 698 pinctrl-0 = <&gpio_default>; 699 700 gpio { 701 gpio_default: gpio_default { 702 skomer_mux { 703 /* Change unus 704 function = "gp 705 groups = "gpio 706 "gpio 707 }; 708 skomer_cfg1 { 709 pins = "GPIO11 710 bias-disable; 711 }; 712 }; 713 }; 714 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.