1// SPDX-License-Identifier: BSD-3-Clause 2/* 3 * Copyright (c) 2021, AngeloGioacchino Del Regno 4 * <angelogioacchino.delregno@somainline.org> 5 * Copyright (c) 2021, Konrad Dybcio <konrad.dybcio@somainline.org> 6 */ 7 8#include <dt-bindings/input/input.h> 9#include <dt-bindings/leds/common.h> 10#include <dt-bindings/pinctrl/qcom,pmic-gpio.h> 11#include "msm8998.dtsi" 12#include "pm8005.dtsi" 13#include "pm8998.dtsi" 14#include "pmi8998.dtsi" 15 16/ { 17 /* required for bootloader to select correct board */ 18 qcom,msm-id = <0x124 0x20000>, <0x124 0x20001>; /* 8998v2, v2.1 */ 19 qcom,board-id = <8 0>; 20 21 clocks { 22 div1_mclk: divclk1 { 23 compatible = "gpio-gate-clock"; 24 pinctrl-0 = <&div_clk1>; 25 pinctrl-names = "default"; 26 clocks = <&rpmcc RPM_SMD_DIV_CLK1>; 27 #clock-cells = <0>; 28 enable-gpios = <&pm8998_gpios 13 GPIO_ACTIVE_HIGH>; 29 }; 30 }; 31 32 board_vbat: vbat-regulator { 33 compatible = "regulator-fixed"; 34 regulator-name = "VBAT"; 35 36 regulator-min-microvolt = <4000000>; 37 regulator-max-microvolt = <4000000>; 38 regulator-always-on; 39 regulator-boot-on; 40 }; 41 42 cam0_vdig_vreg: cam0-vdig { 43 compatible = "regulator-fixed"; 44 regulator-name = "cam0_vdig"; 45 startup-delay-us = <0>; 46 enable-active-high; 47 gpio = <&tlmm 21 GPIO_ACTIVE_HIGH>; 48 pinctrl-names = "default"; 49 pinctrl-0 = <&main_cam_pwr_en>; 50 }; 51 52 cam1_vdig_vreg: cam1-vdig { 53 compatible = "regulator-fixed"; 54 regulator-name = "cam1_vdig"; 55 startup-delay-us = <0>; 56 enable-active-high; 57 gpio = <&tlmm 25 GPIO_ACTIVE_HIGH>; 58 pinctrl-names = "default"; 59 pinctrl-0 = <&chat_cam_pwr_en>; 60 vin-supply = <&vreg_s3a_1p35>; 61 }; 62 63 cam_vio_vreg: cam-vio-vreg { 64 compatible = "regulator-fixed"; 65 regulator-name = "cam_vio_vreg"; 66 startup-delay-us = <0>; 67 enable-active-high; 68 gpio = <&pmi8998_gpios 1 GPIO_ACTIVE_HIGH>; 69 pinctrl-names = "default"; 70 pinctrl-0 = <&main_cam_pwr_io_en>; 71 vin-supply = <&vreg_lvs1a_1p8>; 72 }; 73 74 touch_vddio_vreg: touch-vddio-vreg { 75 compatible = "regulator-fixed"; 76 regulator-name = "touch_vddio_vreg"; 77 startup-delay-us = <10000>; 78 gpio = <&tlmm 133 GPIO_ACTIVE_HIGH>; 79 pinctrl-names = "default"; 80 pinctrl-0 = <&ts_vddio_en>; 81 }; 82 83 vph_pwr: vph-pwr-regulator { 84 compatible = "regulator-fixed"; 85 regulator-name = "vph_pwr"; 86 regulator-always-on; 87 regulator-boot-on; 88 }; 89 90 extcon_usb: extcon-usb { 91 compatible = "linux,extcon-usb-gpio"; 92 id-gpios = <&tlmm 38 GPIO_ACTIVE_HIGH>; 93 vbus-gpios = <&tlmm 128 GPIO_ACTIVE_HIGH>; 94 pinctrl-names = "default"; 95 pinctrl-0 = <&cc_dir_default &usb_detect_en>; 96 }; 97 98 gpio-keys { 99 compatible = "gpio-keys"; 100 label = "Side buttons"; 101 pinctrl-0 = <&focus_n &snapshot_n &vol_down_n &vol_up_n>; 102 pinctrl-names = "default"; 103 button-camera-focus { 104 label = "Camera Focus"; 105 gpios = <&pm8998_gpios 8 GPIO_ACTIVE_LOW>; 106 linux,code = <KEY_CAMERA_FOCUS>; 107 debounce-interval = <15>; 108 }; 109 110 button-camera-snapshot { 111 label = "Camera Snapshot"; 112 gpios = <&pm8998_gpios 7 GPIO_ACTIVE_LOW>; 113 linux,code = <KEY_CAMERA>; 114 debounce-interval = <15>; 115 }; 116 117 button-vol-down { 118 label = "Volume Down"; 119 gpios = <&pm8998_gpios 5 GPIO_ACTIVE_LOW>; 120 linux,code = <KEY_VOLUMEDOWN>; 121 wakeup-source; 122 debounce-interval = <15>; 123 }; 124 125 button-vol-up { 126 label = "Volume Up"; 127 gpios = <&pm8998_gpios 6 GPIO_ACTIVE_LOW>; 128 linux,code = <KEY_VOLUMEUP>; 129 wakeup-source; 130 debounce-interval = <15>; 131 }; 132 }; 133 134 gpio-hall-sensor { 135 compatible = "gpio-keys"; 136 label = "Hall sensors"; 137 pinctrl-names = "default"; 138 pinctrl-0 = <&acc_cover_open>; 139 140 event-hall-sensor0 { 141 label = "Cover Hall Sensor"; 142 gpios = <&tlmm 124 GPIO_ACTIVE_LOW>; 143 linux,input-type = <EV_SW>; 144 linux,code = <SW_LID>; 145 wakeup-source; 146 debounce-interval = <30>; 147 }; 148 }; 149 150 reserved-memory { 151 #address-cells = <2>; 152 #size-cells = <2>; 153 ranges; 154 155 hyp_mem: memory@85800000 { 156 reg = <0x0 0x85800000 0x0 0x3700000>; 157 no-map; 158 }; 159 160 cont_splash_mem: memory@9d400000 { 161 reg = <0x0 0x9d400000 0x0 0x2400000>; 162 no-map; 163 }; 164 165 zap_shader_region: memory@f6400000 { 166 compatible = "shared-dma-pool"; 167 reg = <0x0 0xf6400000 0x0 0x2000>; 168 no-map; 169 }; 170 171 adsp_region: memory@fe000000 { 172 reg = <0x0 0xfe000000 0x0 0x800000>; 173 no-map; 174 }; 175 176 qseecom_region: memory@fe800000 { 177 reg = <0x0 0xfe800000 0x0 0x1400000>; 178 no-map; 179 }; 180 181 ramoops@ffc00000 { 182 compatible = "ramoops"; 183 reg = <0x0 0xffc00000 0x0 0x100000>; 184 record-size = <0x10000>; 185 console-size = <0x60000>; 186 ftrace-size = <0x10000>; 187 pmsg-size = <0x20000>; 188 ecc-size = <16>; 189 }; 190 }; 191 192 vibrator { 193 compatible = "gpio-vibrator"; 194 enable-gpios = <&pmi8998_gpios 5 GPIO_ACTIVE_HIGH>; 195 pinctrl-names = "default"; 196 pinctrl-0 = <&vib_ldo_en>; 197 }; 198}; 199 200&blsp1_i2c5 { 201 status = "okay"; 202 clock-frequency = <355000>; 203 204 touchscreen@2c { 205 compatible = "syna,rmi4-i2c"; 206 reg = <0x2c>; 207 #address-cells = <1>; 208 #size-cells = <0>; 209 interrupts-extended = <&tlmm 125 IRQ_TYPE_EDGE_FALLING>; 210 211 pinctrl-names = "default"; 212 pinctrl-0 = <&ts_int_n>; 213 214 vdd-supply = <&vreg_l28_3p0>; 215 vio-supply = <&touch_vddio_vreg>; 216 217 syna,reset-delay-ms = <220>; 218 syna,startup-delay-ms = <1000>; 219 220 rmi4-f01@1 { 221 reg = <0x01>; 222 syna,nosleep-mode = <1>; 223 }; 224 225 rmi4-f11@11 { 226 reg = <0x11>; 227 syna,sensor-type = <1>; 228 }; 229 }; 230}; 231 232&blsp1_i2c5_sleep { 233 bias-disable; 234}; 235 236&blsp1_uart3 { 237 status = "okay"; 238 239 bluetooth { 240 compatible = "qcom,wcn3990-bt"; 241 242 vddio-supply = <&vreg_s4a_1p8>; 243 vddxo-supply = <&vreg_l7a_1p8>; 244 vddrf-supply = <&vreg_l17a_1p3>; 245 vddch0-supply = <&vreg_l25a_3p3>; 246 max-speed = <3200000>; 247 248 clocks = <&rpmcc RPM_SMD_RF_CLK2_PIN>; 249 }; 250}; 251 252&blsp2_uart1 { 253 status = "okay"; 254}; 255 256&blsp2_i2c2 { 257 status = "okay"; 258 259 proximity@29 { 260 compatible = "st,vl53l0x"; 261 reg = <0x29>; 262 263 interrupt-parent = <&tlmm>; 264 interrupts = <22 IRQ_TYPE_EDGE_FALLING>; 265 266 reset-gpios = <&tlmm 27 GPIO_ACTIVE_LOW>; 267 vdd-supply = <&cam_vio_vreg>; 268 269 pinctrl-names = "default"; 270 pinctrl-0 = <&tof_int_n &tof_reset>; 271 }; 272}; 273 274&ibb { 275 regulator-min-microamp = <800000>; 276 regulator-max-microamp = <800000>; 277 regulator-enable-ramp-delay = <200>; 278 regulator-over-current-protection; 279 regulator-pull-down; 280 regulator-ramp-delay = <1>; 281 regulator-settling-time-up-us = <600>; 282 regulator-settling-time-down-us = <1000>; 283 regulator-soft-start; 284 qcom,discharge-resistor-kohms = <300>; 285}; 286 287&lab { 288 regulator-min-microamp = <200000>; 289 regulator-max-microamp = <200000>; 290 regulator-enable-ramp-delay = <500>; 291 regulator-over-current-protection; 292 regulator-pull-down; 293 regulator-ramp-delay = <1>; 294 regulator-settling-time-up-us = <50000>; 295 regulator-settling-time-down-us = <3000>; 296 regulator-soft-start; 297}; 298 299&pm8005_gpios { 300 gpio-line-names = "NC", /* GPIO_1 */ 301 "NC", 302 "SLB", 303 "OPTION_1_PM8005"; 304}; 305 306&pm8005_regulators { 307 /* VDD_GFX supply */ 308 pm8005_s1: s1 { 309 regulator-min-microvolt = <524000>; 310 regulator-max-microvolt = <1088000>; 311 regulator-enable-ramp-delay = <500>; 312 /* Hack until we rig up the gpu consumer */ 313 regulator-always-on; 314 }; 315}; 316 317&pm8998_gpios { 318 gpio-line-names = "UIM_BATT_ALARM", /* GPIO_1 */ 319 "NC", 320 "WLAN_SW_CTRL (DISALLOWED)", 321 "SSC_PWR_EN", 322 "VOL_DOWN_N", 323 "VOL_UP_N", 324 "SNAPSHOT_N", 325 "FOCUS_N", 326 "FLASH_THERM", 327 "", /* GPIO_10 */ 328 "", 329 "", 330 "DIV_CLK1", 331 "NC", 332 "NC (DISALLOWED)", 333 "DIV_CLK3", 334 "NC", 335 "NC", 336 "NC", 337 "NC (DISALLOWED)", /* GPIO_20 */ 338 "NFC_CLK_REQ", 339 "NC (DISALLOWED)", 340 "WCSS_PWR_REQ", 341 "OPTION_1 (DISALLOWED)", 342 "OPTION_2 (DISALLOWED)", 343 "PM_SLB (DISALLOWED)"; 344 345 vol_down_n: vol-down-n-state { 346 pins = "gpio5"; 347 function = PMIC_GPIO_FUNC_NORMAL; 348 bias-pull-up; 349 input-enable; 350 qcom,drive-strength = <PMIC_GPIO_STRENGTH_NO>; 351 }; 352 353 vol_up_n: vol-up-n-state { 354 pins = "gpio6"; 355 function = PMIC_GPIO_FUNC_NORMAL; 356 bias-pull-up; 357 input-enable; 358 qcom,drive-strength = <PMIC_GPIO_STRENGTH_NO>; 359 }; 360 361 focus_n: focus-n-state { 362 pins = "gpio7"; 363 function = PMIC_GPIO_FUNC_NORMAL; 364 bias-pull-up; 365 input-enable; 366 qcom,drive-strength = <PMIC_GPIO_STRENGTH_NO>; 367 }; 368 369 snapshot_n: snapshot-n-state { 370 pins = "gpio8"; 371 function = PMIC_GPIO_FUNC_NORMAL; 372 bias-pull-up; 373 input-enable; 374 qcom,drive-strength = <PMIC_GPIO_STRENGTH_NO>; 375 }; 376 377 div_clk1: div-clk1-state { 378 pins = "gpio13"; 379 function = "func2"; 380 power-source = <0>; 381 }; 382}; 383 384&pmi8998_gpios { 385 gpio-line-names = "MAIN_CAM_PWR_IO_EN", /* GPIO_1 */ 386 "NC", 387 "NC", 388 "TYPEC_UUSB_SEL", 389 "VIB_LDO_EN", 390 "NC", 391 "DISPLAY_TYPE_SEL", 392 "NC", 393 "NC", 394 "NC", /* GPIO_10 */ 395 "NC", 396 "DIV_CLK3", 397 "SPMI_I2C_SEL", 398 "NC"; 399 400 main_cam_pwr_io_en: main-cam-pwr-io-en-state { 401 pins = "gpio1"; 402 function = PMIC_GPIO_FUNC_NORMAL; 403 bias-disable; 404 drive-push-pull; 405 output-low; 406 qcom,drive-strength = <PMIC_GPIO_STRENGTH_HIGH>; 407 power-source = <1>; 408 }; 409 410 vib_ldo_en: vib-ldo-en-state { 411 pins = "gpio5"; 412 function = PMIC_GPIO_FUNC_NORMAL; 413 bias-disable; 414 drive-push-pull; 415 output-low; 416 qcom,drive-strength = <PMIC_GPIO_STRENGTH_NO>; 417 power-source = <0>; 418 }; 419}; 420 421&pmi8998_lpg { 422 qcom,power-source = <1>; 423 424 status = "okay"; 425 426 multi-led { 427 color = <LED_COLOR_ID_RGB>; 428 function = LED_FUNCTION_STATUS; 429 430 #address-cells = <1>; 431 #size-cells = <0>; 432 433 led@3 { 434 reg = <3>; 435 color = <LED_COLOR_ID_BLUE>; 436 }; 437 438 led@4 { 439 reg = <4>; 440 color = <LED_COLOR_ID_GREEN>; 441 }; 442 443 led@5 { 444 reg = <5>; 445 color = <LED_COLOR_ID_RED>; 446 }; 447 }; 448}; 449 450&qusb2phy { 451 status = "okay"; 452 453 vdda-pll-supply = <&vreg_l12a_1p8>; 454 vdda-phy-dpdm-supply = <&vreg_l24a_3p075>; 455}; 456 457&rpm_requests { 458 regulators-0 { 459 compatible = "qcom,rpm-pm8998-regulators"; 460 461 vdd_s1-supply = <&vph_pwr>; 462 vdd_s2-supply = <&vph_pwr>; 463 vdd_s3-supply = <&vph_pwr>; 464 vdd_s4-supply = <&vph_pwr>; 465 vdd_s5-supply = <&vph_pwr>; 466 vdd_s6-supply = <&vph_pwr>; 467 vdd_s7-supply = <&vph_pwr>; 468 vdd_s8-supply = <&vph_pwr>; 469 vdd_s9-supply = <&vph_pwr>; 470 vdd_s10-supply = <&vph_pwr>; 471 vdd_s11-supply = <&vph_pwr>; 472 vdd_s12-supply = <&vph_pwr>; 473 vdd_s13-supply = <&vph_pwr>; 474 vdd_l1_l27-supply = <&vreg_s7a_1p025>; 475 vdd_l2_l8_l17-supply = <&vreg_s3a_1p35>; 476 vdd_l3_l11-supply = <&vreg_s7a_1p025>; 477 vdd_l4_l5-supply = <&vreg_s7a_1p025>; 478 vdd_l6-supply = <&vreg_s5a_2p04>; 479 vdd_l7_l12_l14_l15-supply = <&vreg_s5a_2p04>; 480 vdd_l9-supply = <&vreg_bob>; 481 vdd_l10_l23_l25-supply = <&vreg_bob>; 482 vdd_l13_l19_l21-supply = <&vreg_bob>; 483 vdd_l16_l28-supply = <&vreg_bob>; 484 vdd_l18_l22-supply = <&vreg_bob>; 485 vdd_l20_l24-supply = <&vreg_bob>; 486 vdd_l26-supply = <&vreg_s3a_1p35>; 487 vdd_lvs1_lvs2-supply = <&vreg_s4a_1p8>; 488 489 vreg_s3a_1p35: s3 { 490 regulator-min-microvolt = <1352000>; 491 regulator-max-microvolt = <1352000>; 492 }; 493 494 vreg_s4a_1p8: s4 { 495 regulator-min-microvolt = <1800000>; 496 regulator-max-microvolt = <1800000>; 497 regulator-system-load = <100000>; 498 regulator-allow-set-load; 499 }; 500 501 vreg_s5a_2p04: s5 { 502 regulator-min-microvolt = <1904000>; 503 regulator-max-microvolt = <2032000>; 504 }; 505 506 vreg_s7a_1p025: s7 { 507 regulator-min-microvolt = <900000>; 508 regulator-max-microvolt = <1028000>; 509 }; 510 511 vreg_l1a_0p875: l1 { 512 regulator-min-microvolt = <880000>; 513 regulator-max-microvolt = <880000>; 514 regulator-system-load = <73400>; 515 regulator-allow-set-load; 516 }; 517 518 vreg_l2a_1p2: l2 { 519 regulator-min-microvolt = <1200000>; 520 regulator-max-microvolt = <1200000>; 521 regulator-system-load = <12560>; 522 regulator-allow-set-load; 523 }; 524 525 vreg_l3a_1p0: l3 { 526 regulator-min-microvolt = <1000000>; 527 regulator-max-microvolt = <1000000>; 528 }; 529 530 vreg_l5a_0p8: l5 { 531 regulator-min-microvolt = <800000>; 532 regulator-max-microvolt = <800000>; 533 }; 534 535 vreg_l6a_1p8: l6 { 536 regulator-min-microvolt = <1800000>; 537 regulator-max-microvolt = <1800000>; 538 }; 539 540 vreg_l7a_1p8: l7 { 541 regulator-min-microvolt = <1800000>; 542 regulator-max-microvolt = <1800000>; 543 }; 544 545 vreg_l8a_1p2: l8 { 546 regulator-min-microvolt = <1200000>; 547 regulator-max-microvolt = <1200000>; 548 }; 549 550 vreg_l9a_1p8: l9 { 551 regulator-min-microvolt = <1808000>; 552 regulator-max-microvolt = <2960000>; 553 }; 554 555 vreg_l10a_1p8: l10 { 556 regulator-min-microvolt = <1808000>; 557 regulator-max-microvolt = <2960000>; 558 }; 559 560 vreg_l11a_1p0: l11 { 561 regulator-min-microvolt = <1000000>; 562 regulator-max-microvolt = <1000000>; 563 }; 564 565 vreg_l12a_1p8: l12 { 566 regulator-min-microvolt = <1800000>; 567 regulator-max-microvolt = <1800000>; 568 }; 569 570 vreg_l13a_2p95: l13 { 571 regulator-min-microvolt = <1808000>; 572 regulator-max-microvolt = <2960000>; 573 regulator-allow-set-load; 574 }; 575 576 vreg_l14a_1p85: l14 { 577 regulator-min-microvolt = <1848000>; 578 regulator-max-microvolt = <1856000>; 579 regulator-system-load = <32000>; 580 regulator-allow-set-load; 581 }; 582 583 vreg_l15a_1p8: l15 { 584 regulator-min-microvolt = <1800000>; 585 regulator-max-microvolt = <1800000>; 586 }; 587 588 vreg_l16a_2p7: l16 { 589 regulator-min-microvolt = <2704000>; 590 regulator-max-microvolt = <2704000>; 591 }; 592 593 vreg_l17a_1p3: l17 { 594 regulator-min-microvolt = <1304000>; 595 regulator-max-microvolt = <1304000>; 596 }; 597 598 vreg_l18a_2p85: l18 { }; 599 600 vreg_l19a_2p7: l19 { 601 regulator-min-microvolt = <2696000>; 602 regulator-max-microvolt = <2704000>; 603 }; 604 605 vreg_l20a_2p95: l20 { 606 regulator-min-microvolt = <2960000>; 607 regulator-max-microvolt = <2960000>; 608 regulator-system-load = <10000>; 609 regulator-allow-set-load; 610 }; 611 612 vreg_l21a_2p95: l21 { 613 regulator-min-microvolt = <2960000>; 614 regulator-max-microvolt = <2960000>; 615 regulator-system-load = <800000>; 616 regulator-allow-set-load; 617 }; 618 619 vreg_l22a_2p85: l22 { }; 620 621 vreg_l23a_3p3: l23 { 622 regulator-min-microvolt = <3312000>; 623 regulator-max-microvolt = <3312000>; 624 }; 625 626 vreg_l24a_3p075: l24 { 627 regulator-min-microvolt = <3088000>; 628 regulator-max-microvolt = <3088000>; 629 }; 630 631 vreg_l25a_3p3: l25 { 632 regulator-min-microvolt = <3104000>; 633 regulator-max-microvolt = <3312000>; 634 }; 635 636 vreg_l26a_1p2: l26 { 637 regulator-min-microvolt = <1200000>; 638 regulator-max-microvolt = <1200000>; 639 regulator-allow-set-load; 640 }; 641 642 vreg_l28_3p0: l28 { 643 regulator-min-microvolt = <3000000>; 644 regulator-max-microvolt = <3000000>; 645 }; 646 647 vreg_lvs1a_1p8: lvs1 { }; 648 649 vreg_lvs2a_1p8: lvs2 { }; 650 }; 651 652 regulators-1 { 653 compatible = "qcom,rpm-pmi8998-regulators"; 654 655 vdd_bob-supply = <&vph_pwr>; 656 657 vreg_bob: bob { 658 regulator-min-microvolt = <3312000>; 659 regulator-max-microvolt = <3600000>; 660 }; 661 }; 662}; 663 664&sdhc2 { 665 status = "okay"; 666 cd-gpios = <&tlmm 95 GPIO_ACTIVE_HIGH>; 667 668 vmmc-supply = <&vreg_l21a_2p95>; 669 vqmmc-supply = <&vreg_l13a_2p95>; 670 671 pinctrl-names = "default", "sleep"; 672 pinctrl-0 = <&sdc2_on &sdc2_cd>; 673 pinctrl-1 = <&sdc2_off &sdc2_cd>; 674}; 675 676&tlmm { 677 gpio-reserved-ranges = <0 4>, <81 4>; 678 gpio-line-names = "", /* GPIO_0 */ 679 "", 680 "", 681 "", 682 "DEBUG_UART_TX", 683 "DEBUG_UART_RX", 684 "CAMSENSOR_I2C_SDA", 685 "CAMSENSOR_I2C_SCL", 686 "NC", 687 "NC", 688 "MDP_VSYNC_P", /* GPIO_10 */ 689 "RGBC_IR_INT", 690 "NFC_VEN", 691 "CAM_MCLK0", 692 "CAM_MCLK1", 693 "NC", 694 "NC", 695 "CCI_I2C_SDA0", 696 "CCI_I2C_SCL0", 697 "CCI_I2C_SDA1", 698 "CCI_I2C_SCL1", /* GPIO_20 */ 699 "MAIN_CAM_PWR_EN", 700 "TOF_INT_N", 701 "NC", 702 "NC", 703 "CHAT_CAM_PWR_EN", 704 "NC", 705 "TOF_RESET_N", 706 "CAM2_RSTN", 707 "NC", 708 "CAM1_RSTN", /* GPIO_30 */ 709 "NC", 710 "NC", 711 "NC", 712 "NC", 713 "NC", 714 "NC", 715 "NC", 716 "CC_DIR", 717 "UIM2_DETECT_EN", 718 "FP_RESET_N", /* GPIO_40 */ 719 "NC", 720 "NC", 721 "NC", 722 "NC", 723 "BT_HCI_UART_TXD", 724 "BT_HCI_UART_RXD", 725 "BT_HCI_UART_CTS_N", 726 "BT_HCI_UART_RFR_N", 727 "NC", 728 "NC", /* GPIO_50 */ 729 "NC", 730 "NC", 731 "CODEC_INT2_N", 732 "CODEC_INT1_N", 733 "APPS_I2C_SDA", 734 "APPS_I2C_SCL", 735 "FORCED_USB_BOOT", 736 "NC", 737 "NC", 738 "NC", /* GPIO_60 */ 739 "NC", 740 "NC", 741 "TRAY2_DET_DS", 742 "CODEC_RST_N", 743 "WSA_L_EN", 744 "WSA_R_EN", 745 "NC", 746 "NC", 747 "NC", 748 "LPASS_SLIMBUS_CLK", /* GPIO_70 */ 749 "LPASS_SLIMBUS_DATA0", 750 "LPASS_SLIMBUS_DATA1", 751 "BT_FM_SLIMBUS_DATA", 752 "BT_FM_SLIMBUS_CLK", 753 "NC", 754 "RF_LCD_ID_EN", 755 "NC", 756 "NC", 757 "NC", 758 "NC", /* GPIO_80 */ 759 "SW_SERVICE", 760 "TX_GTR_THRES_IN", 761 "HW_ID0", 762 "HW_ID1", 763 "NC", 764 "NC", 765 "TS_I2C_SDA", 766 "TS_I2C_SCL", 767 "TS_RESET_N", 768 "NC", /* GPIO_90 */ 769 "NC", 770 "NFC_IRQ", 771 "NFC_DWLD_EN", 772 "DISP_RESET_N", 773 "TRAY2_DET", 774 "CAM_SOF", 775 "RFFE6_CLK", 776 "RFFE6_DATA", 777 "DEBUG_GPIO0", 778 "DEBUG_GPIO1", /* GPIO_100 */ 779 "GRFC4", 780 "NC", 781 "NC", 782 "RSVD", 783 "UIM2_DATA", 784 "UIM2_CLK", 785 "UIM2_RESET", 786 "UIM2_PRESENT", 787 "UIM1_DATA", 788 "UIM1_CLK", /* GPIO_110 */ 789 "UIM1_RST", 790 "UIM1_PRESENT", 791 "UIM_BATT_ALARM", 792 "RSVD", 793 "NC", 794 "NC", 795 "ACCEL_INT", 796 "GYRO_INT", 797 "COMPASS_INT", 798 "ALS_PROX_INT_N", /* GPIO_120 */ 799 "FP_INT_N", 800 "NC", 801 "BAROMETER_INT", 802 "ACC_COVER_OPEN", 803 "TS_INT_N", 804 "NC", 805 "NC", 806 "USB_DETECT_EN", 807 "NC", 808 "QLINK_REQUEST", /* GPIO_130 */ 809 "QLINK_ENABLE", 810 "NC", 811 "NC", 812 "WMSS_RESET_N", 813 "PA_INDICATOR_OR", 814 "NC", 815 "RFFE3_DATA", 816 "RFFE3_CLK", 817 "RFFE4_DATA", 818 "RFFE4_CLK", /* GPIO_140 */ 819 "RFFE5_DATA", 820 "RFFE5_CLK", 821 "GNSS_EN", 822 "MSS_LTE_COXM_TXD", 823 "MSS_LTE_COXM_RXD", 824 "RFFE2_DATA", 825 "RFFE2_CLK", 826 "RFFE1_DATA", 827 "RFFE1_CLK"; 828 829 mdp_vsync_p: mdp-vsync-p-state { 830 pins = "gpio10"; 831 function = "mdp_vsync_a"; 832 drive-strength = <2>; 833 bias-pull-down; 834 }; 835 836 nfc_ven: nfc-ven-state { 837 pins = "gpio12"; 838 function = "gpio"; 839 bias-disable; 840 drive-strength = <2>; 841 output-low; 842 }; 843 844 cam_mclk0_active: cam-mclk0-active-state { 845 pins = "gpio13"; 846 function = "cam_mclk"; 847 drive-strength = <2>; 848 bias-disable; 849 }; 850 851 cam_mclk1_active: cam-mclk1-active-state { 852 pins = "gpio14"; 853 function = "cam_mclk"; 854 drive-strength = <2>; 855 bias-disable; 856 }; 857 858 cci0_default: cci0-default-state { 859 pins = "gpio18", "gpio19"; 860 function = "cci_i2c"; 861 bias-disable; 862 drive-strength = <2>; 863 }; 864 865 cci1_default: cci1-default-state { 866 pins = "gpio19", "gpio20"; 867 function = "cci_i2c"; 868 bias-disable; 869 drive-strength = <2>; 870 }; 871 872 main_cam_pwr_en: main-cam-pwr-en-default-state { 873 pins = "gpio21"; 874 function = "gpio"; 875 bias-disable; 876 drive-strength = <2>; 877 }; 878 879 tof_int_n: tof-int-n-state { 880 pins = "gpio22"; 881 function = "gpio"; 882 bias-pull-up; 883 drive-strength = <2>; 884 }; 885 886 chat_cam_pwr_en: chat-cam-pwr-en-default-state { 887 pins = "gpio25"; 888 function = "gpio"; 889 bias-disable; 890 drive-strength = <2>; 891 }; 892 893 tof_reset: tof-reset-state { 894 pins = "gpio27"; 895 function = "gpio"; 896 bias-disable; 897 drive-strength = <2>; 898 }; 899 900 cc_dir_default: cc-dir-active-state { 901 pins = "gpio38"; 902 function = "gpio"; 903 bias-disable; 904 drive-strength = <16>; 905 }; 906 907 acc_cover_open: acc-cover-open-state { 908 pins = "gpio124"; 909 function = "gpio"; 910 bias-disable; 911 drive-strength = <2>; 912 }; 913 914 ts_int_n: ts-int-n-state { 915 pins = "gpio125"; 916 function = "gpio"; 917 drive-strength = <8>; 918 bias-pull-up; 919 }; 920 921 usb_detect_en: usb-detect-en-active-state { 922 pins = "gpio128"; 923 function = "gpio"; 924 bias-disable; 925 drive-strength = <2>; 926 output-low; 927 }; 928 929 ts_vddio_en: ts-vddio-en-default-state { 930 pins = "gpio133"; 931 function = "gpio"; 932 bias-disable; 933 drive-strength = <2>; 934 output-low; 935 }; 936}; 937 938/* 939 * WARNING: 940 * Disable UFS until card quirks are in to avoid unrecoverable hard-brick 941 * that would happen as soon as the UFS card gets probed as, without the 942 * required quirks, the bootloader will be erased right after card probe. 943 */ 944&ufshc { 945 status = "disabled"; 946}; 947 948&ufsphy { 949 status = "disabled"; 950}; 951 952&usb3 { 953 status = "okay"; 954}; 955 956&usb3_dwc3 { 957 /* Force to peripheral until we have Type-C hooked up */ 958 dr_mode = "peripheral"; 959 extcon = <&extcon_usb>; 960}; 961 962&usb3phy { 963 status = "okay"; 964 965 vdda-phy-supply = <&vreg_l1a_0p875>; 966 vdda-pll-supply = <&vreg_l2a_1p2>; 967}; 968