1// SPDX-License-Identifier: BSD-3-Clause 2/* 3 * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries. 4 */ 5 6/dts-v1/; 7 8#include <dt-bindings/leds/common.h> 9#include "hamoa-iot-som.dtsi" 10#include <dt-bindings/pinctrl/qcom,pmic-gpio.h> 11 12/ { 13 model = "Qualcomm Technologies, Inc. Hamoa IoT EVK"; 14 compatible = "qcom,hamoa-iot-evk", "qcom,hamoa-iot-som", "qcom,x1e80100"; 15 chassis-type = "embedded"; 16 17 aliases { 18 serial0 = &uart21; 19 serial1 = &uart14; 20 }; 21 22 backlight: backlight { 23 compatible = "pwm-backlight"; 24 pwms = <&pmk8550_pwm 0 5000000>; 25 enable-gpios = <&pmc8380_3_gpios 4 GPIO_ACTIVE_HIGH>; 26 power-supply = <&vreg_edp_bl>; 27 28 pinctrl-0 = <&edp_bl_en>, <&edp_bl_pwm>; 29 pinctrl-names = "default"; 30 }; 31 32 wcd938x: audio-codec { 33 compatible = "qcom,wcd9385-codec"; 34 35 pinctrl-0 = <&wcd_default>; 36 pinctrl-names = "default"; 37 38 reset-gpios = <&tlmm 191 GPIO_ACTIVE_LOW>; 39 40 qcom,micbias1-microvolt = <1800000>; 41 qcom,micbias2-microvolt = <1800000>; 42 qcom,micbias3-microvolt = <1800000>; 43 qcom,micbias4-microvolt = <1800000>; 44 qcom,mbhc-buttons-vthreshold-microvolt = <75000 150000 237000 500000 45 500000 500000 500000 500000>; 46 qcom,mbhc-headset-vthreshold-microvolt = <1700000>; 47 qcom,mbhc-headphone-vthreshold-microvolt = <50000>; 48 qcom,rx-device = <&wcd_rx>; 49 qcom,tx-device = <&wcd_tx>; 50 51 vdd-buck-supply = <&vreg_l15b_1p8>; 52 vdd-rxtx-supply = <&vreg_l15b_1p8>; 53 vdd-io-supply = <&vreg_l15b_1p8>; 54 vdd-mic-bias-supply = <&vreg_bob1>; 55 56 #sound-dai-cells = <1>; 57 }; 58 59 chosen { 60 stdout-path = "serial0:115200n8"; 61 }; 62 63 connector3 { 64 compatible = "usb-a-connector"; 65 label = "USB-3-Type-A"; 66 power-role = "source"; 67 68 vbus-supply = <®ulator_usb3_vbus>; 69 70 port { 71 connector_3_in: endpoint { 72 }; 73 }; 74 }; 75 76 connector6 { 77 compatible = "usb-a-connector"; 78 label = "USB-6-Type-A"; 79 power-role = "source"; 80 81 vbus-supply = <®ulator_usb6_vbus>; 82 83 port { 84 connector_4_in: endpoint { 85 }; 86 }; 87 }; 88 89 pmic-glink { 90 compatible = "qcom,x1e80100-pmic-glink", 91 "qcom,sm8550-pmic-glink", 92 "qcom,pmic-glink"; 93 #address-cells = <1>; 94 #size-cells = <0>; 95 orientation-gpios = <&tlmm 121 GPIO_ACTIVE_HIGH>, 96 <&tlmm 123 GPIO_ACTIVE_HIGH>, 97 <&tlmm 125 GPIO_ACTIVE_HIGH>; 98 99 connector@0 { 100 compatible = "usb-c-connector"; 101 reg = <0>; 102 power-role = "dual"; 103 data-role = "dual"; 104 105 ports { 106 #address-cells = <1>; 107 #size-cells = <0>; 108 109 port@0 { 110 reg = <0>; 111 112 pmic_glink_ss0_hs_in: endpoint { 113 remote-endpoint = <&usb_1_ss0_dwc3_hs>; 114 }; 115 }; 116 117 port@1 { 118 reg = <1>; 119 120 pmic_glink_ss0_ss_in: endpoint { 121 remote-endpoint = <&usb_1_ss0_qmpphy_out>; 122 }; 123 }; 124 125 port@2 { 126 reg = <2>; 127 128 pmic_glink_ss0_sbu: endpoint { 129 remote-endpoint = <&usb_1_ss0_sbu_mux>; 130 }; 131 }; 132 }; 133 }; 134 135 connector@1 { 136 compatible = "usb-c-connector"; 137 reg = <1>; 138 power-role = "dual"; 139 data-role = "dual"; 140 141 ports { 142 #address-cells = <1>; 143 #size-cells = <0>; 144 145 port@0 { 146 reg = <0>; 147 148 pmic_glink_ss1_hs_in: endpoint { 149 remote-endpoint = <&usb_1_ss1_dwc3_hs>; 150 }; 151 }; 152 153 port@1 { 154 reg = <1>; 155 156 pmic_glink_ss1_ss_in: endpoint { 157 remote-endpoint = <&retimer_ss1_ss_out>; 158 }; 159 }; 160 161 port@2 { 162 reg = <2>; 163 164 pmic_glink_ss1_con_sbu_in: endpoint { 165 remote-endpoint = <&retimer_ss1_con_sbu_out>; 166 }; 167 }; 168 }; 169 }; 170 171 connector@2 { 172 compatible = "usb-c-connector"; 173 reg = <2>; 174 power-role = "dual"; 175 data-role = "dual"; 176 177 ports { 178 #address-cells = <1>; 179 #size-cells = <0>; 180 181 port@0 { 182 reg = <0>; 183 184 pmic_glink_ss2_hs_in: endpoint { 185 remote-endpoint = <&usb_1_ss2_dwc3_hs>; 186 }; 187 }; 188 189 port@1 { 190 reg = <1>; 191 192 pmic_glink_ss2_ss_in: endpoint { 193 remote-endpoint = <&retimer_ss2_ss_out>; 194 }; 195 }; 196 197 port@2 { 198 reg = <2>; 199 200 pmic_glink_ss2_con_sbu_in: endpoint { 201 remote-endpoint = <&retimer_ss2_con_sbu_out>; 202 }; 203 }; 204 }; 205 }; 206 }; 207 208 vreg_edp_3p3: regulator-edp-3p3 { 209 compatible = "regulator-fixed"; 210 211 regulator-name = "VREG_EDP_3P3"; 212 regulator-min-microvolt = <3300000>; 213 regulator-max-microvolt = <3300000>; 214 215 gpio = <&tlmm 70 GPIO_ACTIVE_HIGH>; 216 enable-active-high; 217 218 pinctrl-0 = <&edp_reg_en>; 219 pinctrl-names = "default"; 220 221 regulator-boot-on; 222 }; 223 224 vreg_edp_bl: regulator-edp-bl { 225 compatible = "regulator-fixed"; 226 227 regulator-name = "VBL9"; 228 regulator-min-microvolt = <3600000>; 229 regulator-max-microvolt = <3600000>; 230 231 gpio = <&pmc8380_3_gpios 10 GPIO_ACTIVE_HIGH>; 232 enable-active-high; 233 234 pinctrl-0 = <&edp_bl_reg_en>; 235 pinctrl-names = "default"; 236 237 regulator-boot-on; 238 }; 239 240 vreg_nvme: regulator-nvme { 241 compatible = "regulator-fixed"; 242 243 regulator-name = "VREG_NVME_3P3"; 244 regulator-min-microvolt = <3300000>; 245 regulator-max-microvolt = <3300000>; 246 247 gpio = <&tlmm 18 GPIO_ACTIVE_HIGH>; 248 enable-active-high; 249 250 pinctrl-0 = <&nvme_reg_en>; 251 pinctrl-names = "default"; 252 253 regulator-boot-on; 254 }; 255 256 vreg_pcie_12v: regulator-pcie-12v { 257 compatible = "regulator-fixed"; 258 259 regulator-name = "VREG_PCIE_12V"; 260 regulator-min-microvolt = <12000000>; 261 regulator-max-microvolt = <12000000>; 262 263 gpio = <&pm8550ve_8_gpios 8 GPIO_ACTIVE_HIGH>; 264 enable-active-high; 265 266 pinctrl-0 = <&pcie_x8_12v>; 267 pinctrl-names = "default"; 268 }; 269 270 vreg_pcie_3v3: regulator-pcie-3v3 { 271 compatible = "regulator-fixed"; 272 273 regulator-name = "VREG_PCIE_3P3"; 274 regulator-min-microvolt = <3300000>; 275 regulator-max-microvolt = <3300000>; 276 277 gpio = <&pmc8380_3_gpios 6 GPIO_ACTIVE_HIGH>; 278 enable-active-high; 279 280 pinctrl-0 = <&pm_sde7_main_3p3_en>; 281 pinctrl-names = "default"; 282 }; 283 284 vreg_pcie_3v3_aux: regulator-pcie-3v3-aux { 285 compatible = "regulator-fixed"; 286 287 regulator-name = "VREG_PCIE_3P3_AUX"; 288 regulator-min-microvolt = <3300000>; 289 regulator-max-microvolt = <3300000>; 290 291 gpio = <&pmc8380_3_gpios 8 GPIO_ACTIVE_HIGH>; 292 enable-active-high; 293 294 pinctrl-0 = <&pm_sde7_aux_3p3_en>; 295 pinctrl-names = "default"; 296 }; 297 298 /* Left unused as the retimer is not used on this board. */ 299 vreg_rtmr0_1p15: regulator-rtmr0-1p15 { 300 compatible = "regulator-fixed"; 301 302 regulator-name = "VREG_RTMR0_1P15"; 303 regulator-min-microvolt = <1150000>; 304 regulator-max-microvolt = <1150000>; 305 306 gpio = <&pmc8380_5_gpios 8 GPIO_ACTIVE_HIGH>; 307 enable-active-high; 308 309 pinctrl-0 = <&usb0_pwr_1p15_reg_en>; 310 pinctrl-names = "default"; 311 312 regulator-boot-on; 313 }; 314 315 vreg_rtmr0_1p8: regulator-rtmr0-1p8 { 316 compatible = "regulator-fixed"; 317 318 regulator-name = "VREG_RTMR0_1P8"; 319 regulator-min-microvolt = <1800000>; 320 regulator-max-microvolt = <1800000>; 321 322 gpio = <&pm8550ve_9_gpios 8 GPIO_ACTIVE_HIGH>; 323 enable-active-high; 324 325 pinctrl-0 = <&usb0_1p8_reg_en>; 326 pinctrl-names = "default"; 327 328 regulator-boot-on; 329 }; 330 331 vreg_rtmr0_3p3: regulator-rtmr0-3p3 { 332 compatible = "regulator-fixed"; 333 334 regulator-name = "VREG_RTMR0_3P3"; 335 regulator-min-microvolt = <3300000>; 336 regulator-max-microvolt = <3300000>; 337 338 gpio = <&pm8550_gpios 11 GPIO_ACTIVE_HIGH>; 339 enable-active-high; 340 341 pinctrl-0 = <&usb0_3p3_reg_en>; 342 pinctrl-names = "default"; 343 344 regulator-boot-on; 345 }; 346 347 vreg_rtmr1_1p15: regulator-rtmr1-1p15 { 348 compatible = "regulator-fixed"; 349 350 regulator-name = "VREG_RTMR1_1P15"; 351 regulator-min-microvolt = <1150000>; 352 regulator-max-microvolt = <1150000>; 353 354 gpio = <&tlmm 188 GPIO_ACTIVE_HIGH>; 355 enable-active-high; 356 357 pinctrl-0 = <&usb1_pwr_1p15_reg_en>; 358 pinctrl-names = "default"; 359 360 regulator-boot-on; 361 }; 362 363 vreg_rtmr1_1p8: regulator-rtmr1-1p8 { 364 compatible = "regulator-fixed"; 365 366 regulator-name = "VREG_RTMR1_1P8"; 367 regulator-min-microvolt = <1800000>; 368 regulator-max-microvolt = <1800000>; 369 370 gpio = <&tlmm 175 GPIO_ACTIVE_HIGH>; 371 enable-active-high; 372 373 pinctrl-0 = <&usb1_pwr_1p8_reg_en>; 374 pinctrl-names = "default"; 375 376 regulator-boot-on; 377 }; 378 379 vreg_rtmr1_3p3: regulator-rtmr1-3p3 { 380 compatible = "regulator-fixed"; 381 382 regulator-name = "VREG_RTMR1_3P3"; 383 regulator-min-microvolt = <3300000>; 384 regulator-max-microvolt = <3300000>; 385 386 gpio = <&tlmm 186 GPIO_ACTIVE_HIGH>; 387 enable-active-high; 388 389 pinctrl-0 = <&usb1_pwr_3p3_reg_en>; 390 pinctrl-names = "default"; 391 392 regulator-boot-on; 393 }; 394 395 vreg_rtmr2_1p15: regulator-rtmr2-1p15 { 396 compatible = "regulator-fixed"; 397 398 regulator-name = "VREG_RTMR2_1P15"; 399 regulator-min-microvolt = <1150000>; 400 regulator-max-microvolt = <1150000>; 401 402 gpio = <&tlmm 189 GPIO_ACTIVE_HIGH>; 403 enable-active-high; 404 405 pinctrl-0 = <&usb2_pwr_1p15_reg_en>; 406 pinctrl-names = "default"; 407 408 regulator-boot-on; 409 }; 410 411 vreg_rtmr2_1p8: regulator-rtmr2-1p8 { 412 compatible = "regulator-fixed"; 413 414 regulator-name = "VREG_RTMR2_1P8"; 415 regulator-min-microvolt = <1800000>; 416 regulator-max-microvolt = <1800000>; 417 418 gpio = <&tlmm 126 GPIO_ACTIVE_HIGH>; 419 enable-active-high; 420 421 pinctrl-0 = <&usb2_pwr_1p8_reg_en>; 422 pinctrl-names = "default"; 423 424 regulator-boot-on; 425 }; 426 427 vreg_rtmr2_3p3: regulator-rtmr2-3p3 { 428 compatible = "regulator-fixed"; 429 430 regulator-name = "VREG_RTMR2_3P3"; 431 regulator-min-microvolt = <3300000>; 432 regulator-max-microvolt = <3300000>; 433 434 gpio = <&tlmm 187 GPIO_ACTIVE_HIGH>; 435 enable-active-high; 436 437 pinctrl-0 = <&usb2_pwr_3p3_reg_en>; 438 pinctrl-names = "default"; 439 440 regulator-boot-on; 441 }; 442 443 regulator_usb3_vbus: regulator-usb3-vbus { 444 compatible = "regulator-fixed"; 445 regulator-name = "USB3_VBUS"; 446 gpio = <&pm8550ve_9_gpios 4 GPIO_ACTIVE_HIGH>; 447 pinctrl-0 = <&usb3_en>; 448 pinctrl-names = "default"; 449 enable-active-high; 450 regulator-always-on; 451 }; 452 453 regulator_usb6_vbus: regulator-usb6-vbus { 454 compatible = "regulator-fixed"; 455 regulator-name = "USB6_VBUS"; 456 gpio = <&pm8550ve_9_gpios 5 GPIO_ACTIVE_HIGH>; 457 pinctrl-0 = <&usb6_en>; 458 pinctrl-names = "default"; 459 enable-active-high; 460 regulator-always-on; 461 }; 462 463 vph_pwr: regulator-vph-pwr { 464 compatible = "regulator-fixed"; 465 466 regulator-name = "vph_pwr"; 467 regulator-min-microvolt = <3700000>; 468 regulator-max-microvolt = <3700000>; 469 470 regulator-always-on; 471 regulator-boot-on; 472 }; 473 474 /* 475 * TODO: These two regulators are actually part of the removable M.2 476 * card and not the EVK mainboard. Need to describe this differently. 477 * Functionally it works correctly, because all we need to do is to 478 * turn on the actual 3.3V supply above. 479 */ 480 vreg_wcn_0p95: regulator-wcn-0p95 { 481 compatible = "regulator-fixed"; 482 483 regulator-name = "VREG_WCN_0P95"; 484 regulator-min-microvolt = <950000>; 485 regulator-max-microvolt = <950000>; 486 487 vin-supply = <&vreg_wcn_3p3>; 488 }; 489 490 vreg_wcn_1p9: regulator-wcn-1p9 { 491 compatible = "regulator-fixed"; 492 493 regulator-name = "VREG_WCN_1P9"; 494 regulator-min-microvolt = <1900000>; 495 regulator-max-microvolt = <1900000>; 496 497 vin-supply = <&vreg_wcn_3p3>; 498 }; 499 500 vreg_wcn_3p3: regulator-wcn-3p3 { 501 compatible = "regulator-fixed"; 502 503 regulator-name = "VREG_WCN_3P3"; 504 regulator-min-microvolt = <3300000>; 505 regulator-max-microvolt = <3300000>; 506 507 gpio = <&tlmm 214 GPIO_ACTIVE_HIGH>; 508 enable-active-high; 509 510 pinctrl-0 = <&wcn_sw_en>; 511 pinctrl-names = "default"; 512 513 regulator-always-on; 514 regulator-boot-on; 515 }; 516 517 vreg_wwan: regulator-wwan { 518 compatible = "regulator-fixed"; 519 520 regulator-name = "SDX_VPH_PWR"; 521 regulator-min-microvolt = <3300000>; 522 regulator-max-microvolt = <3300000>; 523 524 gpio = <&tlmm 221 GPIO_ACTIVE_HIGH>; 525 enable-active-high; 526 527 pinctrl-0 = <&wwan_sw_en>; 528 pinctrl-names = "default"; 529 530 regulator-boot-on; 531 }; 532 533 sound { 534 compatible = "qcom,x1e80100-sndcard"; 535 model = "X1E80100-EVK"; 536 audio-routing = "WooferLeft IN", "WSA WSA_SPK1 OUT", 537 "TweeterLeft IN", "WSA WSA_SPK2 OUT", 538 "WooferRight IN", "WSA2 WSA_SPK2 OUT", 539 "TweeterRight IN", "WSA2 WSA_SPK2 OUT", 540 "IN1_HPHL", "HPHL_OUT", 541 "IN2_HPHR", "HPHR_OUT", 542 "AMIC2", "MIC BIAS2", 543 "VA DMIC0", "MIC BIAS3", 544 "VA DMIC1", "MIC BIAS3", 545 "VA DMIC2", "MIC BIAS1", 546 "VA DMIC3", "MIC BIAS1", 547 "TX SWR_INPUT1", "ADC2_OUTPUT"; 548 549 wcd-playback-dai-link { 550 link-name = "WCD Playback"; 551 552 codec { 553 sound-dai = <&wcd938x 0>, <&swr1 0>, <&lpass_rxmacro 0>; 554 }; 555 556 cpu { 557 sound-dai = <&q6apmbedai RX_CODEC_DMA_RX_0>; 558 }; 559 560 platform { 561 sound-dai = <&q6apm>; 562 }; 563 }; 564 565 wcd-capture-dai-link { 566 link-name = "WCD Capture"; 567 568 codec { 569 sound-dai = <&wcd938x 1>, <&swr2 1>, <&lpass_txmacro 0>; 570 }; 571 572 cpu { 573 sound-dai = <&q6apmbedai TX_CODEC_DMA_TX_3>; 574 }; 575 576 platform { 577 sound-dai = <&q6apm>; 578 }; 579 }; 580 581 wsa-dai-link { 582 link-name = "WSA Playback"; 583 584 codec { 585 sound-dai = <&left_woofer>, 586 <&left_tweeter>, 587 <&swr0 0>, 588 <&lpass_wsamacro 0>, 589 <&right_woofer>, 590 <&right_tweeter>, 591 <&swr3 0>, 592 <&lpass_wsa2macro 0>; 593 }; 594 595 cpu { 596 sound-dai = <&q6apmbedai WSA_CODEC_DMA_RX_0>; 597 }; 598 599 platform { 600 sound-dai = <&q6apm>; 601 }; 602 }; 603 604 va-dai-link { 605 link-name = "VA Capture"; 606 607 codec { 608 sound-dai = <&lpass_vamacro 0>; 609 }; 610 611 cpu { 612 sound-dai = <&q6apmbedai VA_CODEC_DMA_TX_0>; 613 }; 614 615 platform { 616 sound-dai = <&q6apm>; 617 }; 618 }; 619 }; 620 621 usb-1-ss0-sbu-mux { 622 compatible = "onnn,fsusb42", "gpio-sbu-mux"; 623 624 enable-gpios = <&tlmm 168 GPIO_ACTIVE_LOW>; 625 select-gpios = <&tlmm 167 GPIO_ACTIVE_HIGH>; 626 627 pinctrl-0 = <&usb_1_ss0_sbu_default>; 628 pinctrl-names = "default"; 629 630 mode-switch; 631 orientation-switch; 632 633 port { 634 usb_1_ss0_sbu_mux: endpoint { 635 remote-endpoint = <&pmic_glink_ss0_sbu>; 636 }; 637 }; 638 }; 639 640 wcn7850-pmu { 641 compatible = "qcom,wcn7850-pmu"; 642 643 vdd-supply = <&vreg_wcn_0p95>; 644 vddio-supply = <&vreg_l15b_1p8>; 645 vddaon-supply = <&vreg_wcn_0p95>; 646 vdddig-supply = <&vreg_wcn_0p95>; 647 vddrfa1p2-supply = <&vreg_wcn_1p9>; 648 vddrfa1p8-supply = <&vreg_wcn_1p9>; 649 650 bt-enable-gpios = <&tlmm 116 GPIO_ACTIVE_HIGH>; 651 wlan-enable-gpios = <&tlmm 117 GPIO_ACTIVE_HIGH>; 652 653 pinctrl-0 = <&wcn_bt_en>, <&wcn_wlan_en>; 654 pinctrl-names = "default"; 655 656 regulators { 657 vreg_pmu_rfa_cmn: ldo0 { 658 regulator-name = "vreg_pmu_rfa_cmn"; 659 }; 660 661 vreg_pmu_aon_0p59: ldo1 { 662 regulator-name = "vreg_pmu_aon_0p59"; 663 }; 664 665 vreg_pmu_wlcx_0p8: ldo2 { 666 regulator-name = "vreg_pmu_wlcx_0p8"; 667 }; 668 669 vreg_pmu_wlmx_0p85: ldo3 { 670 regulator-name = "vreg_pmu_wlmx_0p85"; 671 }; 672 673 vreg_pmu_btcmx_0p85: ldo4 { 674 regulator-name = "vreg_pmu_btcmx_0p85"; 675 }; 676 677 vreg_pmu_rfa_0p8: ldo5 { 678 regulator-name = "vreg_pmu_rfa_0p8"; 679 }; 680 681 vreg_pmu_rfa_1p2: ldo6 { 682 regulator-name = "vreg_pmu_rfa_1p2"; 683 }; 684 685 vreg_pmu_rfa_1p8: ldo7 { 686 regulator-name = "vreg_pmu_rfa_1p8"; 687 }; 688 689 vreg_pmu_pcie_0p9: ldo8 { 690 regulator-name = "vreg_pmu_pcie_0p9"; 691 }; 692 693 vreg_pmu_pcie_1p8: ldo9 { 694 regulator-name = "vreg_pmu_pcie_1p8"; 695 }; 696 }; 697 }; 698}; 699 700&i2c1 { 701 clock-frequency = <400000>; 702 status = "okay"; 703 704 typec-mux@8 { 705 compatible = "parade,ps8830"; 706 reg = <0x08>; 707 708 clocks = <&rpmhcc RPMH_RF_CLK5>; 709 710 vdd-supply = <&vreg_rtmr2_1p15>; 711 vdd33-supply = <&vreg_rtmr2_3p3>; 712 vdd33-cap-supply = <&vreg_rtmr2_3p3>; 713 vddar-supply = <&vreg_rtmr2_1p15>; 714 vddat-supply = <&vreg_rtmr2_1p15>; 715 vddio-supply = <&vreg_rtmr2_1p8>; 716 717 reset-gpios = <&tlmm 185 GPIO_ACTIVE_LOW>; 718 719 pinctrl-0 = <&rtmr2_default>; 720 pinctrl-names = "default"; 721 722 orientation-switch; 723 retimer-switch; 724 725 ports { 726 #address-cells = <1>; 727 #size-cells = <0>; 728 729 port@0 { 730 reg = <0>; 731 732 retimer_ss2_ss_out: endpoint { 733 remote-endpoint = <&pmic_glink_ss2_ss_in>; 734 }; 735 }; 736 737 port@1 { 738 reg = <1>; 739 740 retimer_ss2_ss_in: endpoint { 741 remote-endpoint = <&usb_1_ss2_qmpphy_out>; 742 }; 743 }; 744 745 port@2 { 746 reg = <2>; 747 748 retimer_ss2_con_sbu_out: endpoint { 749 remote-endpoint = <&pmic_glink_ss2_con_sbu_in>; 750 }; 751 }; 752 }; 753 }; 754}; 755 756&i2c5 { 757 clock-frequency = <400000>; 758 759 status = "okay"; 760 761 eusb3_repeater: redriver@47 { 762 compatible = "nxp,ptn3222"; 763 reg = <0x47>; 764 #phy-cells = <0>; 765 766 vdd3v3-supply = <&vreg_l13b_3p0>; 767 vdd1v8-supply = <&vreg_l4b_1p8>; 768 769 reset-gpios = <&tlmm 6 GPIO_ACTIVE_LOW>; 770 771 pinctrl-0 = <&eusb3_reset_n>; 772 pinctrl-names = "default"; 773 }; 774 775 eusb5_repeater: redriver@43 { 776 compatible = "nxp,ptn3222"; 777 reg = <0x43>; 778 #phy-cells = <0>; 779 780 vdd3v3-supply = <&vreg_l13b_3p0>; 781 vdd1v8-supply = <&vreg_l4b_1p8>; 782 783 reset-gpios = <&tlmm 7 GPIO_ACTIVE_LOW>; 784 785 pinctrl-0 = <&eusb5_reset_n>; 786 pinctrl-names = "default"; 787 }; 788 789 eusb6_repeater: redriver@4f { 790 compatible = "nxp,ptn3222"; 791 reg = <0x4f>; 792 #phy-cells = <0>; 793 794 vdd3v3-supply = <&vreg_l13b_3p0>; 795 vdd1v8-supply = <&vreg_l4b_1p8>; 796 797 reset-gpios = <&tlmm 184 GPIO_ACTIVE_LOW>; 798 799 pinctrl-0 = <&eusb6_reset_n>; 800 pinctrl-names = "default"; 801 }; 802}; 803 804&i2c7 { 805 clock-frequency = <400000>; 806 807 status = "okay"; 808 809 typec-mux@8 { 810 compatible = "parade,ps8830"; 811 reg = <0x8>; 812 813 clocks = <&rpmhcc RPMH_RF_CLK4>; 814 815 vdd-supply = <&vreg_rtmr1_1p15>; 816 vdd33-supply = <&vreg_rtmr1_3p3>; 817 vdd33-cap-supply = <&vreg_rtmr1_3p3>; 818 vddar-supply = <&vreg_rtmr1_1p15>; 819 vddat-supply = <&vreg_rtmr1_1p15>; 820 vddio-supply = <&vreg_rtmr1_1p8>; 821 822 reset-gpios = <&tlmm 176 GPIO_ACTIVE_LOW>; 823 824 pinctrl-0 = <&rtmr1_default>; 825 pinctrl-names = "default"; 826 827 retimer-switch; 828 orientation-switch; 829 830 ports { 831 #address-cells = <1>; 832 #size-cells = <0>; 833 834 port@0 { 835 reg = <0>; 836 837 retimer_ss1_ss_out: endpoint { 838 remote-endpoint = <&pmic_glink_ss1_ss_in>; 839 }; 840 }; 841 842 port@1 { 843 reg = <1>; 844 845 retimer_ss1_ss_in: endpoint { 846 remote-endpoint = <&usb_1_ss1_qmpphy_out>; 847 }; 848 }; 849 850 port@2 { 851 reg = <2>; 852 853 retimer_ss1_con_sbu_out: endpoint { 854 remote-endpoint = <&pmic_glink_ss1_con_sbu_in>; 855 }; 856 }; 857 }; 858 }; 859}; 860 861&lpass_tlmm { 862 spkr_0_sd_n_active: spkr-0-sd-n-active-state { 863 pins = "gpio12"; 864 function = "gpio"; 865 drive-strength = <16>; 866 bias-disable; 867 }; 868 869 spkr_1_sd_n_active: spkr-1-sd-n-active-state { 870 pins = "gpio13"; 871 function = "gpio"; 872 drive-strength = <16>; 873 bias-disable; 874 }; 875 876 spkr_2_sd_n_active: spkr-2-sd-n-active-state { 877 pins = "gpio17"; 878 function = "gpio"; 879 drive-strength = <16>; 880 bias-disable; 881 }; 882 883 spkr_3_sd_n_active: spkr-3-sd-n-active-state { 884 pins = "gpio18"; 885 function = "gpio"; 886 drive-strength = <16>; 887 bias-disable; 888 }; 889}; 890 891&lpass_vamacro { 892 pinctrl-0 = <&dmic01_default>, <&dmic23_default>; 893 pinctrl-names = "default"; 894 895 vdd-micb-supply = <&vreg_l1b_1p8>; 896 qcom,dmic-sample-rate = <4800000>; 897}; 898 899&mdss { 900 status = "okay"; 901}; 902 903&mdss_dp0 { 904 status = "okay"; 905}; 906 907&mdss_dp0_out { 908 link-frequencies = /bits/ 64 <1620000000 2700000000 5400000000 8100000000>; 909}; 910 911&mdss_dp1 { 912 status = "okay"; 913}; 914 915&mdss_dp1_out { 916 link-frequencies = /bits/ 64 <1620000000 2700000000 5400000000 8100000000>; 917}; 918 919&mdss_dp2 { 920 status = "okay"; 921}; 922 923&mdss_dp2_out { 924 link-frequencies = /bits/ 64 <1620000000 2700000000 5400000000 8100000000>; 925}; 926 927&mdss_dp3 { 928 /delete-property/ #sound-dai-cells; 929 930 pinctrl-0 = <&edp0_hpd_default>; 931 pinctrl-names = "default"; 932 933 status = "okay"; 934 935 aux-bus { 936 panel { 937 compatible = "edp-panel"; 938 939 backlight = <&backlight>; 940 power-supply = <&vreg_edp_3p3>; 941 942 port { 943 edp_panel_in: endpoint { 944 remote-endpoint = <&mdss_dp3_out>; 945 }; 946 }; 947 }; 948 }; 949}; 950 951&mdss_dp3_out { 952 data-lanes = <0 1 2 3>; 953 link-frequencies = /bits/ 64 <1620000000 2700000000 5400000000 8100000000>; 954 955 remote-endpoint = <&edp_panel_in>; 956}; 957 958&mdss_dp3_phy { 959 vdda-phy-supply = <&vreg_l3j_0p8>; 960 vdda-pll-supply = <&vreg_l2j_1p2>; 961 962 status = "okay"; 963}; 964 965&pcie3_port0 { 966 vpcie12v-supply = <&vreg_pcie_12v>; 967 vpcie3v3-supply = <&vreg_pcie_3v3>; 968 vpcie3v3aux-supply = <&vreg_pcie_3v3_aux>; 969 970 reset-gpios = <&tlmm 143 GPIO_ACTIVE_LOW>; 971 wake-gpios = <&tlmm 145 GPIO_ACTIVE_LOW>; 972}; 973 974&pcie4_port0 { 975 reset-gpios = <&tlmm 146 GPIO_ACTIVE_LOW>; 976 wake-gpios = <&tlmm 148 GPIO_ACTIVE_LOW>; 977 978 wifi@0 { 979 compatible = "pci17cb,1107"; 980 reg = <0x10000 0x0 0x0 0x0 0x0>; 981 982 vddaon-supply = <&vreg_pmu_aon_0p59>; 983 vddwlcx-supply = <&vreg_pmu_wlcx_0p8>; 984 vddwlmx-supply = <&vreg_pmu_wlmx_0p85>; 985 vddrfacmn-supply = <&vreg_pmu_rfa_cmn>; 986 vddrfa0p8-supply = <&vreg_pmu_rfa_0p8>; 987 vddrfa1p2-supply = <&vreg_pmu_rfa_1p2>; 988 vddrfa1p8-supply = <&vreg_pmu_rfa_1p8>; 989 vddpcie0p9-supply = <&vreg_pmu_pcie_0p9>; 990 vddpcie1p8-supply = <&vreg_pmu_pcie_1p8>; 991 }; 992}; 993 994&pcie5 { 995 vddpe-3v3-supply = <&vreg_wwan>; 996}; 997 998&pcie5_port0 { 999 reset-gpios = <&tlmm 149 GPIO_ACTIVE_LOW>; 1000 wake-gpios = <&tlmm 151 GPIO_ACTIVE_LOW>; 1001}; 1002 1003&pcie6a { 1004 vddpe-3v3-supply = <&vreg_nvme>; 1005}; 1006 1007&pcie6a_port0 { 1008 reset-gpios = <&tlmm 152 GPIO_ACTIVE_LOW>; 1009 wake-gpios = <&tlmm 154 GPIO_ACTIVE_LOW>; 1010}; 1011 1012&pm8550_gpios { 1013 rtmr0_default: rtmr0-reset-n-active-state { 1014 pins = "gpio10"; 1015 function = "normal"; 1016 power-source = <1>; /* 1.8V */ 1017 bias-disable; 1018 input-disable; 1019 output-enable; 1020 }; 1021 1022 usb0_3p3_reg_en: usb0-3p3-reg-en-state { 1023 pins = "gpio11"; 1024 function = "normal"; 1025 power-source = <1>; /* 1.8V */ 1026 bias-disable; 1027 input-disable; 1028 output-enable; 1029 }; 1030}; 1031 1032&pm8550ve_8_gpios { 1033 pcie_x8_12v: pcie-12v-default-state { 1034 pins = "gpio8"; 1035 function = "normal"; 1036 output-enable; 1037 output-high; 1038 bias-pull-down; 1039 power-source = <0>; 1040 }; 1041}; 1042 1043&pm8550ve_9_gpios { 1044 usb0_1p8_reg_en: usb0-1p8-reg-en-state { 1045 pins = "gpio8"; 1046 function = "normal"; 1047 power-source = <1>; /* 1.8V */ 1048 bias-disable; 1049 input-disable; 1050 output-enable; 1051 }; 1052 1053 usb3_en: usb3-en-state { 1054 pins = "gpio4"; 1055 function = "normal"; 1056 qcom,drive-strength = <PMIC_GPIO_STRENGTH_HIGH>; 1057 output-enable; 1058 power-source = <0>; 1059 }; 1060 1061 usb6_en: usb6-en-state { 1062 pins = "gpio5"; 1063 function = "normal"; 1064 qcom,drive-strength = <PMIC_GPIO_STRENGTH_HIGH>; 1065 output-enable; 1066 power-source = <0>; 1067 }; 1068}; 1069 1070&pm8550_pwm { 1071 status = "okay"; 1072 1073 multi-led { 1074 color = <LED_COLOR_ID_MULTI>; 1075 function = LED_FUNCTION_STATUS; 1076 1077 #address-cells = <1>; 1078 #size-cells = <0>; 1079 1080 led@1 { 1081 reg = <1>; 1082 color = <LED_COLOR_ID_RED>; 1083 }; 1084 1085 led@2 { 1086 reg = <2>; 1087 color = <LED_COLOR_ID_GREEN>; 1088 }; 1089 }; 1090}; 1091 1092&pmc8380_3_gpios { 1093 edp_bl_en: edp-bl-en-state { 1094 pins = "gpio4"; 1095 function = "normal"; 1096 power-source = <1>; 1097 input-disable; 1098 output-enable; 1099 }; 1100 1101 edp_bl_reg_en: edp-bl-reg-en-state { 1102 pins = "gpio10"; 1103 function = "normal"; 1104 }; 1105}; 1106 1107&pmc8380_3_gpios { 1108 pm_sde7_aux_3p3_en: pcie-aux-3p3-default-state { 1109 pins = "gpio8"; 1110 function = "normal"; 1111 output-enable; 1112 bias-pull-down; 1113 power-source = <0>; 1114 }; 1115 1116 pm_sde7_main_3p3_en: pcie-main-3p3-default-state { 1117 pins = "gpio6"; 1118 function = "normal"; 1119 output-enable; 1120 bias-pull-down; 1121 power-source = <0>; 1122 }; 1123}; 1124 1125&pmc8380_5_gpios { 1126 usb0_pwr_1p15_reg_en: usb0-pwr-1p15-reg-en-state { 1127 pins = "gpio8"; 1128 function = "normal"; 1129 power-source = <1>; /* 1.8V */ 1130 bias-disable; 1131 input-disable; 1132 output-enable; 1133 }; 1134}; 1135 1136&pmk8550_gpios { 1137 edp_bl_pwm: edp-bl-pwm-state { 1138 pins = "gpio5"; 1139 function = "func3"; 1140 }; 1141}; 1142 1143&pmk8550_pwm { 1144 status = "okay"; 1145}; 1146 1147&smb2360_0 { 1148 status = "okay"; 1149}; 1150 1151&smb2360_0_eusb2_repeater { 1152 vdd18-supply = <&vreg_l3d_1p8>; 1153 vdd3-supply = <&vreg_l2b_3p0>; 1154}; 1155 1156&smb2360_1 { 1157 status = "okay"; 1158}; 1159 1160&smb2360_1_eusb2_repeater { 1161 vdd18-supply = <&vreg_l3d_1p8>; 1162 vdd3-supply = <&vreg_l14b_3p0>; 1163}; 1164 1165&smb2360_2 { 1166 status = "okay"; 1167}; 1168 1169&smb2360_2_eusb2_repeater { 1170 vdd18-supply = <&vreg_l3d_1p8>; 1171 vdd3-supply = <&vreg_l8b_3p0>; 1172}; 1173 1174&spi11 { 1175 status = "okay"; 1176 1177 tpm@0 { 1178 compatible = "st,st33htpm-spi", "tcg,tpm_tis-spi"; 1179 reg = <0>; 1180 spi-max-frequency = <20000000>; 1181 }; 1182}; 1183 1184&swr0 { 1185 status = "okay"; 1186 1187 pinctrl-0 = <&wsa_swr_active>; 1188 pinctrl-names = "default"; 1189 1190 /* WSA8845, Left Woofer */ 1191 left_woofer: speaker@0,0 { 1192 compatible = "sdw20217020400"; 1193 pinctrl-0 = <&spkr_0_sd_n_active>; 1194 pinctrl-names = "default"; 1195 reg = <0 0>; 1196 reset-gpios = <&lpass_tlmm 12 GPIO_ACTIVE_LOW>; 1197 #sound-dai-cells = <0>; 1198 sound-name-prefix = "WooferLeft"; 1199 vdd-1p8-supply = <&vreg_l15b_1p8>; 1200 vdd-io-supply = <&vreg_l12b_1p2>; 1201 qcom,port-mapping = <1 2 3 7 10 13>; 1202 }; 1203 1204 /* WSA8845, Left Tweeter */ 1205 left_tweeter: speaker@0,1 { 1206 compatible = "sdw20217020400"; 1207 pinctrl-0 = <&spkr_1_sd_n_active>; 1208 pinctrl-names = "default"; 1209 reg = <0 1>; 1210 reset-gpios = <&lpass_tlmm 13 GPIO_ACTIVE_LOW>; 1211 #sound-dai-cells = <0>; 1212 sound-name-prefix = "TweeterLeft"; 1213 vdd-1p8-supply = <&vreg_l15b_1p8>; 1214 vdd-io-supply = <&vreg_l12b_1p2>; 1215 qcom,port-mapping = <4 5 6 7 11 13>; 1216 }; 1217}; 1218 1219&swr1 { 1220 status = "okay"; 1221 1222 /* WCD9385 RX */ 1223 wcd_rx: codec@0,4 { 1224 compatible = "sdw20217010d00"; 1225 reg = <0 4>; 1226 qcom,rx-port-mapping = <1 2 3 4 5>; 1227 }; 1228}; 1229 1230&swr2 { 1231 status = "okay"; 1232 1233 /* WCD9385 TX */ 1234 wcd_tx: codec@0,3 { 1235 compatible = "sdw20217010d00"; 1236 reg = <0 3>; 1237 qcom,tx-port-mapping = <2 2 3 4>; 1238 }; 1239}; 1240 1241&swr3 { 1242 status = "okay"; 1243 1244 pinctrl-0 = <&wsa2_swr_active>; 1245 pinctrl-names = "default"; 1246 1247 /* WSA8845, Right Woofer */ 1248 right_woofer: speaker@0,0 { 1249 compatible = "sdw20217020400"; 1250 pinctrl-0 = <&spkr_2_sd_n_active>; 1251 pinctrl-names = "default"; 1252 reg = <0 0>; 1253 reset-gpios = <&lpass_tlmm 17 GPIO_ACTIVE_LOW>; 1254 #sound-dai-cells = <0>; 1255 sound-name-prefix = "WooferRight"; 1256 vdd-1p8-supply = <&vreg_l15b_1p8>; 1257 vdd-io-supply = <&vreg_l12b_1p2>; 1258 qcom,port-mapping = <1 2 3 7 10 13>; 1259 }; 1260 1261 /* WSA8845, Right Tweeter */ 1262 right_tweeter: speaker@0,1 { 1263 compatible = "sdw20217020400"; 1264 pinctrl-0 = <&spkr_3_sd_n_active>; 1265 pinctrl-names = "default"; 1266 reg = <0 1>; 1267 reset-gpios = <&lpass_tlmm 18 GPIO_ACTIVE_LOW>; 1268 #sound-dai-cells = <0>; 1269 sound-name-prefix = "TweeterRight"; 1270 vdd-1p8-supply = <&vreg_l15b_1p8>; 1271 vdd-io-supply = <&vreg_l12b_1p2>; 1272 qcom,port-mapping = <4 5 6 7 11 13>; 1273 }; 1274}; 1275 1276&tlmm { 1277 edp_reg_en: edp-reg-en-state { 1278 pins = "gpio70"; 1279 function = "gpio"; 1280 drive-strength = <16>; 1281 bias-disable; 1282 }; 1283 1284 eusb3_reset_n: eusb3-reset-n-state { 1285 pins = "gpio6"; 1286 function = "gpio"; 1287 drive-strength = <2>; 1288 bias-disable; 1289 output-low; 1290 }; 1291 1292 eusb5_reset_n: eusb5-reset-n-state { 1293 pins = "gpio7"; 1294 function = "gpio"; 1295 drive-strength = <2>; 1296 bias-pull-up; 1297 output-low; 1298 }; 1299 1300 eusb6_reset_n: eusb6-reset-n-state { 1301 pins = "gpio184"; 1302 function = "gpio"; 1303 drive-strength = <2>; 1304 bias-pull-up; 1305 output-low; 1306 }; 1307 1308 nvme_reg_en: nvme-reg-en-state { 1309 pins = "gpio18"; 1310 function = "gpio"; 1311 drive-strength = <2>; 1312 bias-disable; 1313 }; 1314 1315 rtmr1_default: rtmr1-reset-n-active-state { 1316 pins = "gpio176"; 1317 function = "gpio"; 1318 drive-strength = <2>; 1319 bias-disable; 1320 }; 1321 1322 rtmr2_default: rtmr2-reset-n-active-state { 1323 pins = "gpio185"; 1324 function = "gpio"; 1325 drive-strength = <2>; 1326 bias-disable; 1327 }; 1328 1329 usb1_pwr_1p15_reg_en: usb1-pwr-1p15-reg-en-state { 1330 pins = "gpio188"; 1331 function = "gpio"; 1332 drive-strength = <2>; 1333 bias-disable; 1334 }; 1335 1336 usb1_pwr_1p8_reg_en: usb1-pwr-1p8-reg-en-state { 1337 pins = "gpio175"; 1338 function = "gpio"; 1339 drive-strength = <2>; 1340 bias-disable; 1341 }; 1342 1343 usb1_pwr_3p3_reg_en: usb1-pwr-3p3-reg-en-state { 1344 pins = "gpio186"; 1345 function = "gpio"; 1346 drive-strength = <2>; 1347 bias-disable; 1348 }; 1349 1350 usb2_pwr_1p15_reg_en: usb2-pwr-1p15-reg-en-state { 1351 pins = "gpio189"; 1352 function = "gpio"; 1353 drive-strength = <2>; 1354 bias-disable; 1355 }; 1356 1357 usb2_pwr_1p8_reg_en: usb2-pwr-1p8-reg-en-state { 1358 pins = "gpio126"; 1359 function = "gpio"; 1360 drive-strength = <2>; 1361 bias-disable; 1362 }; 1363 1364 usb2_pwr_3p3_reg_en: usb2-pwr-3p3-reg-en-state { 1365 pins = "gpio187"; 1366 function = "gpio"; 1367 drive-strength = <2>; 1368 bias-disable; 1369 }; 1370 1371 usb_1_ss0_sbu_default: usb-1-ss0-sbu-state { 1372 mode-pins { 1373 pins = "gpio166"; 1374 function = "gpio"; 1375 bias-disable; 1376 drive-strength = <2>; 1377 output-high; 1378 }; 1379 1380 oe-n-pins { 1381 pins = "gpio168"; 1382 function = "gpio"; 1383 bias-disable; 1384 drive-strength = <2>; 1385 }; 1386 1387 sel-pins { 1388 pins = "gpio167"; 1389 function = "gpio"; 1390 bias-disable; 1391 drive-strength = <2>; 1392 }; 1393 }; 1394 1395 wcd_default: wcd-reset-n-active-state { 1396 pins = "gpio191"; 1397 function = "gpio"; 1398 drive-strength = <16>; 1399 bias-disable; 1400 output-low; 1401 }; 1402 1403 wcn_bt_en: wcn-bt-en-state { 1404 pins = "gpio116"; 1405 function = "gpio"; 1406 drive-strength = <2>; 1407 bias-disable; 1408 }; 1409 1410 wcn_wlan_en: wcn-wlan-en-state { 1411 pins = "gpio117"; 1412 function = "gpio"; 1413 drive-strength = <2>; 1414 bias-disable; 1415 }; 1416 1417 wwan_sw_en: wwan-sw-en-state { 1418 pins = "gpio221"; 1419 function = "gpio"; 1420 drive-strength = <4>; 1421 bias-disable; 1422 }; 1423 1424 wcn_sw_en: wcn-sw-en-state { 1425 pins = "gpio214"; 1426 function = "gpio"; 1427 drive-strength = <2>; 1428 bias-disable; 1429 }; 1430 1431 /* Switches USB signal routing between the USB connector and the Wi-Fi card. */ 1432 wcn_usb_sw_n: wcn-usb-sw-n-state { 1433 pins = "gpio225"; 1434 function = "gpio"; 1435 drive-strength = <2>; 1436 bias-disable; 1437 output-high; 1438 }; 1439}; 1440 1441&uart14 { 1442 status = "okay"; 1443 1444 bluetooth { 1445 compatible = "qcom,wcn7850-bt"; 1446 max-speed = <3200000>; 1447 1448 vddaon-supply = <&vreg_pmu_aon_0p59>; 1449 vddwlcx-supply = <&vreg_pmu_wlcx_0p8>; 1450 vddwlmx-supply = <&vreg_pmu_wlmx_0p85>; 1451 vddrfacmn-supply = <&vreg_pmu_rfa_cmn>; 1452 vddrfa0p8-supply = <&vreg_pmu_rfa_0p8>; 1453 vddrfa1p2-supply = <&vreg_pmu_rfa_1p2>; 1454 vddrfa1p8-supply = <&vreg_pmu_rfa_1p8>; 1455 }; 1456}; 1457 1458&uart21 { 1459 compatible = "qcom,geni-debug-uart"; 1460 1461 status = "okay"; 1462}; 1463 1464&usb_1_ss0_dwc3_hs { 1465 remote-endpoint = <&pmic_glink_ss0_hs_in>; 1466}; 1467 1468&usb_1_ss0_hsphy { 1469 phys = <&smb2360_0_eusb2_repeater>; 1470}; 1471 1472&usb_1_ss0_qmpphy_out { 1473 remote-endpoint = <&pmic_glink_ss0_ss_in>; 1474}; 1475 1476&usb_1_ss1_dwc3_hs { 1477 remote-endpoint = <&pmic_glink_ss1_hs_in>; 1478}; 1479 1480&usb_1_ss1_hsphy { 1481 phys = <&smb2360_1_eusb2_repeater>; 1482}; 1483 1484&usb_1_ss1_qmpphy_out { 1485 remote-endpoint = <&retimer_ss1_ss_in>; 1486}; 1487 1488&usb_1_ss2_dwc3_hs { 1489 remote-endpoint = <&pmic_glink_ss2_hs_in>; 1490}; 1491 1492&usb_1_ss2_hsphy { 1493 phys = <&smb2360_2_eusb2_repeater>; 1494}; 1495 1496&usb_1_ss2_qmpphy_out { 1497 remote-endpoint = <&retimer_ss2_ss_in>; 1498}; 1499 1500&usb_2_hsphy { 1501 phys = <&eusb5_repeater>; 1502 1503 pinctrl-0 = <&wcn_usb_sw_n>; 1504 pinctrl-names = "default"; 1505}; 1506 1507&usb_mp_hsphy0 { 1508 phys = <&eusb3_repeater>; 1509}; 1510 1511&usb_mp_hsphy1 { 1512 phys = <&eusb6_repeater>; 1513}; 1514