1#include "qcom-msm8974pro.dtsi" 2#include "qcom-pm8841.dtsi" 3#include "qcom-pm8941.dtsi" 4#include <dt-bindings/gpio/gpio.h> 5#include <dt-bindings/input/input.h> 6#include <dt-bindings/pinctrl/qcom,pmic-gpio.h> 7 8/ { 9 model = "Sony Xperia Z2 Tablet"; 10 compatible = "sony,xperia-castor", "qcom,msm8974"; 11 12 aliases { 13 serial0 = &blsp1_uart2; 14 serial1 = &blsp2_uart7; 15 }; 16 17 chosen { 18 stdout-path = "serial0:115200n8"; 19 }; 20 21 gpio-keys { 22 compatible = "gpio-keys"; 23 input-name = "gpio-keys"; 24 25 pinctrl-names = "default"; 26 pinctrl-0 = <&gpio_keys_pin_a>; 27 28 volume-down { 29 label = "volume_down"; 30 gpios = <&pm8941_gpios 2 GPIO_ACTIVE_LOW>; 31 linux,input-type = <1>; 32 linux,code = <KEY_VOLUMEDOWN>; 33 }; 34 35 camera-snapshot { 36 label = "camera_snapshot"; 37 gpios = <&pm8941_gpios 3 GPIO_ACTIVE_LOW>; 38 linux,input-type = <1>; 39 linux,code = <KEY_CAMERA>; 40 }; 41 42 camera-focus { 43 label = "camera_focus"; 44 gpios = <&pm8941_gpios 4 GPIO_ACTIVE_LOW>; 45 linux,input-type = <1>; 46 linux,code = <KEY_CAMERA_FOCUS>; 47 }; 48 49 volume-up { 50 label = "volume_up"; 51 gpios = <&pm8941_gpios 5 GPIO_ACTIVE_LOW>; 52 linux,input-type = <1>; 53 linux,code = <KEY_VOLUMEUP>; 54 }; 55 }; 56 57 smd { 58 rpm { 59 rpm_requests { 60 pm8941-regulators { 61 vdd_l1_l3-supply = <&pm8941_s1>; 62 vdd_l2_lvs1_2_3-supply = <&pm8941_s3>; 63 vdd_l4_l11-supply = <&pm8941_s1>; 64 vdd_l5_l7-supply = <&pm8941_s2>; 65 vdd_l6_l12_l14_l15-supply = <&pm8941_s2>; 66 vdd_l9_l10_l17_l22-supply = <&vreg_boost>; 67 vdd_l13_l20_l23_l24-supply = <&vreg_boost>; 68 vdd_l21-supply = <&vreg_boost>; 69 70 s1 { 71 regulator-min-microvolt = <1300000>; 72 regulator-max-microvolt = <1300000>; 73 regulator-always-on; 74 regulator-boot-on; 75 }; 76 77 s2 { 78 regulator-min-microvolt = <2150000>; 79 regulator-max-microvolt = <2150000>; 80 regulator-boot-on; 81 }; 82 83 s3 { 84 regulator-min-microvolt = <1800000>; 85 regulator-max-microvolt = <1800000>; 86 regulator-always-on; 87 regulator-boot-on; 88 89 regulator-system-load = <154000>; 90 }; 91 92 s4 { 93 regulator-min-microvolt = <5000000>; 94 regulator-max-microvolt = <5000000>; 95 }; 96 97 l1 { 98 regulator-min-microvolt = <1225000>; 99 regulator-max-microvolt = <1225000>; 100 101 regulator-always-on; 102 regulator-boot-on; 103 }; 104 105 l2 { 106 regulator-min-microvolt = <1200000>; 107 regulator-max-microvolt = <1200000>; 108 }; 109 110 l3 { 111 regulator-min-microvolt = <1200000>; 112 regulator-max-microvolt = <1200000>; 113 }; 114 115 l4 { 116 regulator-min-microvolt = <1225000>; 117 regulator-max-microvolt = <1225000>; 118 }; 119 120 l5 { 121 regulator-min-microvolt = <1800000>; 122 regulator-max-microvolt = <1800000>; 123 }; 124 125 l6 { 126 regulator-min-microvolt = <1800000>; 127 regulator-max-microvolt = <1800000>; 128 129 regulator-boot-on; 130 }; 131 132 l7 { 133 regulator-min-microvolt = <1800000>; 134 regulator-max-microvolt = <1800000>; 135 136 regulator-boot-on; 137 }; 138 139 l8 { 140 regulator-min-microvolt = <1800000>; 141 regulator-max-microvolt = <1800000>; 142 }; 143 144 l9 { 145 regulator-min-microvolt = <1800000>; 146 regulator-max-microvolt = <2950000>; 147 }; 148 149 l11 { 150 regulator-min-microvolt = <1300000>; 151 regulator-max-microvolt = <1350000>; 152 }; 153 154 l12 { 155 regulator-min-microvolt = <1800000>; 156 regulator-max-microvolt = <1800000>; 157 158 regulator-always-on; 159 regulator-boot-on; 160 }; 161 162 l13 { 163 regulator-min-microvolt = <1800000>; 164 regulator-max-microvolt = <2950000>; 165 166 regulator-boot-on; 167 }; 168 169 l14 { 170 regulator-min-microvolt = <1800000>; 171 regulator-max-microvolt = <1800000>; 172 }; 173 174 l15 { 175 regulator-min-microvolt = <2050000>; 176 regulator-max-microvolt = <2050000>; 177 }; 178 179 l16 { 180 regulator-min-microvolt = <2700000>; 181 regulator-max-microvolt = <2700000>; 182 }; 183 184 l17 { 185 regulator-min-microvolt = <2700000>; 186 regulator-max-microvolt = <2700000>; 187 }; 188 189 l18 { 190 regulator-min-microvolt = <2850000>; 191 regulator-max-microvolt = <2850000>; 192 }; 193 194 l19 { 195 regulator-min-microvolt = <2850000>; 196 regulator-max-microvolt = <2850000>; 197 }; 198 199 l20 { 200 regulator-min-microvolt = <2950000>; 201 regulator-max-microvolt = <2950000>; 202 203 regulator-allow-set-load; 204 regulator-boot-on; 205 regulator-allow-set-load; 206 regulator-system-load = <500000>; 207 }; 208 209 l21 { 210 regulator-min-microvolt = <2950000>; 211 regulator-max-microvolt = <2950000>; 212 213 regulator-boot-on; 214 }; 215 216 l22 { 217 regulator-min-microvolt = <3000000>; 218 regulator-max-microvolt = <3000000>; 219 }; 220 221 l23 { 222 regulator-min-microvolt = <2800000>; 223 regulator-max-microvolt = <2800000>; 224 }; 225 226 l24 { 227 regulator-min-microvolt = <3075000>; 228 regulator-max-microvolt = <3075000>; 229 230 regulator-boot-on; 231 }; 232 }; 233 }; 234 }; 235 }; 236 237 vreg_bl_vddio: lcd-backlight-vddio { 238 compatible = "regulator-fixed"; 239 regulator-name = "vreg_bl_vddio"; 240 regulator-min-microvolt = <3150000>; 241 regulator-max-microvolt = <3150000>; 242 243 gpio = <&msmgpio 69 0>; 244 enable-active-high; 245 246 vin-supply = <&pm8941_s3>; 247 startup-delay-us = <70000>; 248 249 pinctrl-names = "default"; 250 pinctrl-0 = <&lcd_backlight_en_pin_a>; 251 }; 252 253 vreg_vsp: lcd-dcdc-regulator { 254 compatible = "regulator-fixed"; 255 regulator-name = "vreg_vsp"; 256 regulator-min-microvolt = <5600000>; 257 regulator-max-microvolt = <5600000>; 258 259 gpio = <&pm8941_gpios 20 GPIO_ACTIVE_HIGH>; 260 enable-active-high; 261 262 pinctrl-names = "default"; 263 pinctrl-0 = <&lcd_dcdc_en_pin_a>; 264 }; 265 266 vreg_wlan: wlan-regulator { 267 compatible = "regulator-fixed"; 268 269 regulator-name = "wl-reg"; 270 regulator-min-microvolt = <3300000>; 271 regulator-max-microvolt = <3300000>; 272 273 gpio = <&pm8941_gpios 18 GPIO_ACTIVE_HIGH>; 274 enable-active-high; 275 276 pinctrl-names = "default"; 277 pinctrl-0 = <&wlan_regulator_pin>; 278 }; 279}; 280 281&soc { 282 sdhci@f9824900 { 283 status = "okay"; 284 285 vmmc-supply = <&pm8941_l20>; 286 vqmmc-supply = <&pm8941_s3>; 287 288 bus-width = <8>; 289 non-removable; 290 291 pinctrl-names = "default"; 292 pinctrl-0 = <&sdhc1_pin_a>; 293 }; 294 295 sdhci@f9864900 { 296 status = "okay"; 297 298 max-frequency = <100000000>; 299 non-removable; 300 vmmc-supply = <&vreg_wlan>; 301 302 pinctrl-names = "default"; 303 pinctrl-0 = <&sdhc3_pin_a>; 304 305 #address-cells = <1>; 306 #size-cells = <0>; 307 308 bcrmf@1 { 309 compatible = "brcm,bcm4339-fmac", "brcm,bcm4329-fmac"; 310 reg = <1>; 311 312 brcm,drive-strength = <10>; 313 314 pinctrl-names = "default"; 315 pinctrl-0 = <&wlan_sleep_clk_pin>; 316 }; 317 }; 318 319 sdhci@f98a4900 { 320 status = "okay"; 321 322 bus-width = <4>; 323 324 vmmc-supply = <&pm8941_l21>; 325 vqmmc-supply = <&pm8941_l13>; 326 327 cd-gpios = <&msmgpio 62 GPIO_ACTIVE_LOW>; 328 329 pinctrl-names = "default"; 330 pinctrl-0 = <&sdhc2_pin_a>, <&sdhc2_cd_pin_a>; 331 }; 332 333 serial@f991e000 { 334 status = "okay"; 335 336 pinctrl-names = "default"; 337 pinctrl-0 = <&blsp1_uart2_pin_a>; 338 }; 339 340 serial@f995d000 { 341 status = "ok"; 342 343 pinctrl-names = "default"; 344 pinctrl-0 = <&blsp2_uart7_pin_a>; 345 346 bluetooth { 347 compatible = "brcm,bcm43438-bt"; 348 max-speed = <3000000>; 349 350 pinctrl-names = "default"; 351 pinctrl-0 = <&bt_host_wake_pin>, 352 <&bt_dev_wake_pin>, 353 <&bt_reg_on_pin>; 354 355 host-wakeup-gpios = <&msmgpio 95 GPIO_ACTIVE_HIGH>; 356 device-wakeup-gpios = <&msmgpio 96 GPIO_ACTIVE_HIGH>; 357 shutdown-gpios = <&pm8941_gpios 16 GPIO_ACTIVE_HIGH>; 358 }; 359 }; 360 361 usb@f9a55000 { 362 status = "okay"; 363 364 phys = <&usb_hs1_phy>; 365 phy-select = <&tcsr 0xb000 0>; 366 extcon = <&smbb>, <&usb_id>; 367 vbus-supply = <&chg_otg>; 368 369 hnp-disable; 370 srp-disable; 371 adp-disable; 372 373 ulpi { 374 phy@a { 375 status = "okay"; 376 377 v1p8-supply = <&pm8941_l6>; 378 v3p3-supply = <&pm8941_l24>; 379 380 extcon = <&smbb>; 381 qcom,init-seq = /bits/ 8 <0x1 0x64>; 382 }; 383 }; 384 }; 385 386 pinctrl@fd510000 { 387 blsp1_uart2_pin_a: blsp1-uart2-pin-active { 388 rx { 389 pins = "gpio5"; 390 function = "blsp_uart2"; 391 392 drive-strength = <2>; 393 bias-pull-up; 394 }; 395 396 tx { 397 pins = "gpio4"; 398 function = "blsp_uart2"; 399 400 drive-strength = <4>; 401 bias-disable; 402 }; 403 }; 404 405 blsp2_uart7_pin_a: blsp2-uart7-pin-active { 406 tx { 407 pins = "gpio41"; 408 function = "blsp_uart7"; 409 410 drive-strength = <2>; 411 bias-disable; 412 }; 413 414 rx { 415 pins = "gpio42"; 416 function = "blsp_uart7"; 417 418 drive-strength = <2>; 419 bias-pull-up; 420 }; 421 422 cts { 423 pins = "gpio43"; 424 function = "blsp_uart7"; 425 426 drive-strength = <2>; 427 bias-pull-up; 428 }; 429 430 rts { 431 pins = "gpio44"; 432 function = "blsp_uart7"; 433 434 drive-strength = <2>; 435 bias-disable; 436 }; 437 }; 438 439 i2c8_pins: i2c8 { 440 mux { 441 pins = "gpio47", "gpio48"; 442 function = "blsp_i2c8"; 443 444 drive-strength = <2>; 445 bias-disable; 446 }; 447 }; 448 449 i2c11_pins: i2c11 { 450 mux { 451 pins = "gpio83", "gpio84"; 452 function = "blsp_i2c11"; 453 454 drive-strength = <2>; 455 bias-disable; 456 }; 457 }; 458 459 lcd_backlight_en_pin_a: lcd-backlight-vddio { 460 pins = "gpio69"; 461 drive-strength = <10>; 462 output-low; 463 bias-disable; 464 }; 465 466 sdhc1_pin_a: sdhc1-pin-active { 467 clk { 468 pins = "sdc1_clk"; 469 drive-strength = <16>; 470 bias-disable; 471 }; 472 473 cmd-data { 474 pins = "sdc1_cmd", "sdc1_data"; 475 drive-strength = <10>; 476 bias-pull-up; 477 }; 478 }; 479 480 sdhc2_cd_pin_a: sdhc2-cd-pin-active { 481 pins = "gpio62"; 482 function = "gpio"; 483 484 drive-strength = <2>; 485 bias-disable; 486 }; 487 488 sdhc2_pin_a: sdhc2-pin-active { 489 clk { 490 pins = "sdc2_clk"; 491 drive-strength = <6>; 492 bias-disable; 493 }; 494 495 cmd-data { 496 pins = "sdc2_cmd", "sdc2_data"; 497 drive-strength = <6>; 498 bias-pull-up; 499 }; 500 }; 501 502 sdhc3_pin_a: sdhc3-pin-active { 503 clk { 504 pins = "gpio40"; 505 function = "sdc3"; 506 507 drive-strength = <10>; 508 bias-disable; 509 }; 510 511 cmd { 512 pins = "gpio39"; 513 function = "sdc3"; 514 515 drive-strength = <10>; 516 bias-pull-up; 517 }; 518 519 data { 520 pins = "gpio35", "gpio36", "gpio37", "gpio38"; 521 function = "sdc3"; 522 523 drive-strength = <10>; 524 bias-pull-up; 525 }; 526 }; 527 528 ts_int_pin: synaptics { 529 pin { 530 pins = "gpio86"; 531 function = "gpio"; 532 533 drive-strength = <2>; 534 bias-disable; 535 input-enable; 536 }; 537 }; 538 539 bt_host_wake_pin: bt-host-wake { 540 pins = "gpio95"; 541 function = "gpio"; 542 543 drive-strength = <2>; 544 bias-disable; 545 output-low; 546 }; 547 548 bt_dev_wake_pin: bt-dev-wake { 549 pins = "gpio96"; 550 function = "gpio"; 551 552 drive-strength = <2>; 553 bias-disable; 554 }; 555 }; 556 557 i2c@f9964000 { 558 status = "okay"; 559 560 clock-frequency = <355000>; 561 qcom,src-freq = <50000000>; 562 563 pinctrl-names = "default"; 564 pinctrl-0 = <&i2c8_pins>; 565 566 synaptics@2c { 567 compatible = "syna,rmi4-i2c"; 568 reg = <0x2c>; 569 570 interrupt-parent = <&msmgpio>; 571 interrupts = <86 IRQ_TYPE_EDGE_FALLING>; 572 573 #address-cells = <1>; 574 #size-cells = <0>; 575 576 vdd-supply = <&pm8941_l22>; 577 vio-supply = <&pm8941_lvs3>; 578 579 pinctrl-names = "default"; 580 pinctrl-0 = <&ts_int_pin>; 581 582 syna,startup-delay-ms = <10>; 583 584 rmi-f01@1 { 585 reg = <0x1>; 586 syna,nosleep = <1>; 587 }; 588 589 rmi-f11@11 { 590 reg = <0x11>; 591 syna,f11-flip-x = <1>; 592 syna,sensor-type = <1>; 593 }; 594 }; 595 }; 596 597 i2c@f9967000 { 598 status = "okay"; 599 pinctrl-names = "default"; 600 pinctrl-0 = <&i2c11_pins>; 601 clock-frequency = <355000>; 602 qcom,src-freq = <50000000>; 603 604 lp8566_wled: backlight@2c { 605 compatible = "ti,lp8556"; 606 reg = <0x2c>; 607 power-supply = <&vreg_bl_vddio>; 608 609 bl-name = "backlight"; 610 dev-ctrl = /bits/ 8 <0x05>; 611 init-brt = /bits/ 8 <0x3f>; 612 rom_a0h { 613 rom-addr = /bits/ 8 <0xa0>; 614 rom-val = /bits/ 8 <0xff>; 615 }; 616 rom_a1h { 617 rom-addr = /bits/ 8 <0xa1>; 618 rom-val = /bits/ 8 <0x3f>; 619 }; 620 rom_a2h { 621 rom-addr = /bits/ 8 <0xa2>; 622 rom-val = /bits/ 8 <0x20>; 623 }; 624 rom_a3h { 625 rom-addr = /bits/ 8 <0xa3>; 626 rom-val = /bits/ 8 <0x5e>; 627 }; 628 rom_a4h { 629 rom-addr = /bits/ 8 <0xa4>; 630 rom-val = /bits/ 8 <0x02>; 631 }; 632 rom_a5h { 633 rom-addr = /bits/ 8 <0xa5>; 634 rom-val = /bits/ 8 <0x04>; 635 }; 636 rom_a6h { 637 rom-addr = /bits/ 8 <0xa6>; 638 rom-val = /bits/ 8 <0x80>; 639 }; 640 rom_a7h { 641 rom-addr = /bits/ 8 <0xa7>; 642 rom-val = /bits/ 8 <0xf7>; 643 }; 644 rom_a9h { 645 rom-addr = /bits/ 8 <0xa9>; 646 rom-val = /bits/ 8 <0x80>; 647 }; 648 rom_aah { 649 rom-addr = /bits/ 8 <0xaa>; 650 rom-val = /bits/ 8 <0x0f>; 651 }; 652 rom_aeh { 653 rom-addr = /bits/ 8 <0xae>; 654 rom-val = /bits/ 8 <0x0f>; 655 }; 656 }; 657 }; 658}; 659 660&spmi_bus { 661 pm8941@0 { 662 charger@1000 { 663 qcom,fast-charge-safe-current = <1500000>; 664 qcom,fast-charge-current-limit = <1500000>; 665 qcom,dc-current-limit = <1800000>; 666 qcom,fast-charge-safe-voltage = <4400000>; 667 qcom,fast-charge-high-threshold-voltage = <4350000>; 668 qcom,fast-charge-low-threshold-voltage = <3400000>; 669 qcom,auto-recharge-threshold-voltage = <4200000>; 670 qcom,minimum-input-voltage = <4300000>; 671 }; 672 673 gpios@c000 { 674 gpio_keys_pin_a: gpio-keys-active { 675 pins = "gpio2", "gpio5"; 676 function = "normal"; 677 678 bias-pull-up; 679 power-source = <PM8941_GPIO_S3>; 680 }; 681 682 bt_reg_on_pin: bt-reg-on { 683 pins = "gpio16"; 684 function = "normal"; 685 686 output-low; 687 power-source = <PM8941_GPIO_S3>; 688 }; 689 690 wlan_sleep_clk_pin: wl-sleep-clk { 691 pins = "gpio17"; 692 function = "func2"; 693 694 output-high; 695 power-source = <PM8941_GPIO_S3>; 696 }; 697 698 wlan_regulator_pin: wl-reg-active { 699 pins = "gpio18"; 700 function = "normal"; 701 702 bias-disable; 703 power-source = <PM8941_GPIO_S3>; 704 }; 705 706 lcd_dcdc_en_pin_a: lcd-dcdc-en-active { 707 pins = "gpio20"; 708 function = "normal"; 709 710 bias-disable; 711 power-source = <PM8941_GPIO_S3>; 712 input-disable; 713 output-low; 714 }; 715 716 }; 717 718 coincell@2800 { 719 status = "okay"; 720 qcom,rset-ohms = <2100>; 721 qcom,vset-millivolts = <3000>; 722 }; 723 }; 724}; 725