1// SPDX-License-Identifier: BSD-3-Clause 2/* 3 * Copyright (c) 2023 Linaro Limited 4 */ 5 6/dts-v1/; 7 8#include <dt-bindings/leds/common.h> 9#include <dt-bindings/regulator/qcom,rpmh-regulator.h> 10#include "sm8550.dtsi" 11#include "pm8010.dtsi" 12#include "pm8550.dtsi" 13#include "pm8550b.dtsi" 14#include "pm8550ve.dtsi" 15#include "pm8550vs.dtsi" 16#include "pmk8550.dtsi" 17#include "pmr735d_a.dtsi" 18#include "pmr735d_b.dtsi" 19 20/ { 21 model = "Qualcomm Technologies, Inc. SM8550 QRD"; 22 compatible = "qcom,sm8550-qrd", "qcom,sm8550"; 23 chassis-type = "handset"; 24 25 aliases { 26 serial0 = &uart7; 27 serial1 = &uart14; 28 }; 29 30 wcd938x: audio-codec { 31 compatible = "qcom,wcd9385-codec"; 32 33 pinctrl-names = "default"; 34 pinctrl-0 = <&wcd_default>; 35 36 qcom,micbias1-microvolt = <1800000>; 37 qcom,micbias2-microvolt = <1800000>; 38 qcom,micbias3-microvolt = <1800000>; 39 qcom,micbias4-microvolt = <1800000>; 40 qcom,mbhc-buttons-vthreshold-microvolt = <75000 150000 237000 500000 500000 500000 500000 500000>; 41 qcom,mbhc-headset-vthreshold-microvolt = <1700000>; 42 qcom,mbhc-headphone-vthreshold-microvolt = <50000>; 43 qcom,rx-device = <&wcd_rx>; 44 qcom,tx-device = <&wcd_tx>; 45 46 reset-gpios = <&tlmm 108 GPIO_ACTIVE_LOW>; 47 48 vdd-buck-supply = <&vreg_l15b_1p8>; 49 vdd-rxtx-supply = <&vreg_l15b_1p8>; 50 vdd-io-supply = <&vreg_l15b_1p8>; 51 vdd-mic-bias-supply = <&vreg_bob1>; 52 53 #sound-dai-cells = <1>; 54 }; 55 56 chosen { 57 stdout-path = "serial0:115200n8"; 58 }; 59 60 gpio-keys { 61 compatible = "gpio-keys"; 62 63 pinctrl-0 = <&volume_up_n>; 64 pinctrl-names = "default"; 65 66 key-volume-up { 67 label = "Volume Up"; 68 linux,code = <KEY_VOLUMEUP>; 69 gpios = <&pm8550_gpios 6 GPIO_ACTIVE_LOW>; 70 debounce-interval = <15>; 71 linux,can-disable; 72 wakeup-source; 73 }; 74 }; 75 76 pmic-glink { 77 compatible = "qcom,sm8550-pmic-glink", "qcom,pmic-glink"; 78 #address-cells = <1>; 79 #size-cells = <0>; 80 81 connector@0 { 82 compatible = "usb-c-connector"; 83 reg = <0>; 84 power-role = "dual"; 85 data-role = "dual"; 86 87 ports { 88 #address-cells = <1>; 89 #size-cells = <0>; 90 91 port@0 { 92 reg = <0>; 93 94 pmic_glink_hs_in: endpoint { 95 remote-endpoint = <&usb_1_dwc3_hs>; 96 }; 97 }; 98 99 port@1 { 100 reg = <1>; 101 102 pmic_glink_ss_in: endpoint { 103 remote-endpoint = <&redriver_ss_out>; 104 }; 105 }; 106 107 port@2 { 108 reg = <2>; 109 110 pmic_glink_sbu: endpoint { 111 remote-endpoint = <&fsa4480_sbu_mux>; 112 }; 113 }; 114 }; 115 }; 116 }; 117 118 sound { 119 compatible = "qcom,sm8550-sndcard", "qcom,sm8450-sndcard"; 120 model = "SM8550-QRD"; 121 audio-routing = "SpkrLeft IN", "WSA_SPK1 OUT", 122 "SpkrRight IN", "WSA_SPK2 OUT", 123 "IN1_HPHL", "HPHL_OUT", 124 "IN2_HPHR", "HPHR_OUT", 125 "AMIC2", "MIC BIAS2", 126 "VA DMIC0", "MIC BIAS1", 127 "VA DMIC1", "MIC BIAS1", 128 "VA DMIC2", "MIC BIAS3", 129 "TX DMIC0", "MIC BIAS1", 130 "TX DMIC1", "MIC BIAS2", 131 "TX DMIC2", "MIC BIAS3", 132 "TX SWR_ADC1", "ADC2_OUTPUT"; 133 134 wcd-playback-dai-link { 135 link-name = "WCD Playback"; 136 137 cpu { 138 sound-dai = <&q6apmbedai RX_CODEC_DMA_RX_0>; 139 }; 140 141 codec { 142 sound-dai = <&wcd938x 0>, <&swr1 0>, <&lpass_rxmacro 0>; 143 }; 144 145 platform { 146 sound-dai = <&q6apm>; 147 }; 148 }; 149 150 wcd-capture-dai-link { 151 link-name = "WCD Capture"; 152 153 cpu { 154 sound-dai = <&q6apmbedai TX_CODEC_DMA_TX_3>; 155 }; 156 157 codec { 158 sound-dai = <&wcd938x 1>, <&swr2 0>, <&lpass_txmacro 0>; 159 }; 160 161 platform { 162 sound-dai = <&q6apm>; 163 }; 164 }; 165 166 wsa-dai-link { 167 link-name = "WSA Playback"; 168 169 cpu { 170 sound-dai = <&q6apmbedai WSA_CODEC_DMA_RX_0>; 171 }; 172 173 codec { 174 sound-dai = <&north_spkr>, <&south_spkr>, <&swr0 0>, <&lpass_wsamacro 0>; 175 }; 176 177 platform { 178 sound-dai = <&q6apm>; 179 }; 180 }; 181 182 va-dai-link { 183 link-name = "VA Capture"; 184 185 cpu { 186 sound-dai = <&q6apmbedai TX_CODEC_DMA_TX_3>; 187 }; 188 189 codec { 190 sound-dai = <&lpass_vamacro 0>; 191 }; 192 193 platform { 194 sound-dai = <&q6apm>; 195 }; 196 }; 197 }; 198 199 vph_pwr: vph-pwr-regulator { 200 compatible = "regulator-fixed"; 201 regulator-name = "vph_pwr"; 202 regulator-min-microvolt = <3700000>; 203 regulator-max-microvolt = <3700000>; 204 205 regulator-always-on; 206 regulator-boot-on; 207 }; 208}; 209 210&apps_rsc { 211 regulators-0 { 212 compatible = "qcom,pm8550-rpmh-regulators"; 213 qcom,pmic-id = "b"; 214 215 vdd-bob1-supply = <&vph_pwr>; 216 vdd-bob2-supply = <&vph_pwr>; 217 vdd-l1-l4-l10-supply = <&vreg_s6g_1p86>; 218 vdd-l2-l13-l14-supply = <&vreg_bob1>; 219 vdd-l3-supply = <&vreg_s4g_1p25>; 220 vdd-l5-l16-supply = <&vreg_bob1>; 221 vdd-l6-l7-supply = <&vreg_bob1>; 222 vdd-l8-l9-supply = <&vreg_bob1>; 223 vdd-l11-supply = <&vreg_s4g_1p25>; 224 vdd-l12-supply = <&vreg_s6g_1p86>; 225 vdd-l15-supply = <&vreg_s6g_1p86>; 226 vdd-l17-supply = <&vreg_bob2>; 227 228 vreg_bob1: bob1 { 229 regulator-name = "vreg_bob1"; 230 regulator-min-microvolt = <3296000>; 231 regulator-max-microvolt = <3960000>; 232 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 233 }; 234 235 vreg_bob2: bob2 { 236 regulator-name = "vreg_bob2"; 237 regulator-min-microvolt = <2720000>; 238 regulator-max-microvolt = <3960000>; 239 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 240 }; 241 242 vreg_l1b_1p8: ldo1 { 243 regulator-name = "vreg_l1b_1p8"; 244 regulator-min-microvolt = <1800000>; 245 regulator-max-microvolt = <1800000>; 246 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 247 }; 248 249 vreg_l2b_3p0: ldo2 { 250 regulator-name = "vreg_l2b_3p0"; 251 regulator-min-microvolt = <3008000>; 252 regulator-max-microvolt = <3008000>; 253 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 254 }; 255 256 vreg_l5b_3p1: ldo5 { 257 regulator-name = "vreg_l5b_3p1"; 258 regulator-min-microvolt = <3104000>; 259 regulator-max-microvolt = <3104000>; 260 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 261 }; 262 263 vreg_l6b_1p8: ldo6 { 264 regulator-name = "vreg_l6b_1p8"; 265 regulator-min-microvolt = <1800000>; 266 regulator-max-microvolt = <3008000>; 267 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 268 }; 269 270 vreg_l7b_1p8: ldo7 { 271 regulator-name = "vreg_l7b_1p8"; 272 regulator-min-microvolt = <1800000>; 273 regulator-max-microvolt = <3008000>; 274 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 275 }; 276 277 vreg_l8b_1p8: ldo8 { 278 regulator-name = "vreg_l8b_1p8"; 279 regulator-min-microvolt = <1800000>; 280 regulator-max-microvolt = <3008000>; 281 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 282 }; 283 284 vreg_l9b_2p9: ldo9 { 285 regulator-name = "vreg_l9b_2p9"; 286 regulator-min-microvolt = <2960000>; 287 regulator-max-microvolt = <3008000>; 288 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 289 }; 290 291 vreg_l11b_1p2: ldo11 { 292 regulator-name = "vreg_l11b_1p2"; 293 regulator-min-microvolt = <1200000>; 294 regulator-max-microvolt = <1504000>; 295 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 296 }; 297 298 vreg_l12b_1p8: ldo12 { 299 regulator-name = "vreg_l12b_1p8"; 300 regulator-min-microvolt = <1800000>; 301 regulator-max-microvolt = <1800000>; 302 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 303 }; 304 305 vreg_l13b_3p0: ldo13 { 306 regulator-name = "vreg_l13b_3p0"; 307 regulator-min-microvolt = <3000000>; 308 regulator-max-microvolt = <3000000>; 309 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 310 }; 311 312 vreg_l14b_3p2: ldo14 { 313 regulator-name = "vreg_l14b_3p2"; 314 regulator-min-microvolt = <3200000>; 315 regulator-max-microvolt = <3200000>; 316 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 317 }; 318 319 vreg_l15b_1p8: ldo15 { 320 regulator-name = "vreg_l15b_1p8"; 321 regulator-min-microvolt = <1800000>; 322 regulator-max-microvolt = <1800000>; 323 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 324 }; 325 326 vreg_l16b_2p8: ldo16 { 327 regulator-name = "vreg_l16b_2p8"; 328 regulator-min-microvolt = <2800000>; 329 regulator-max-microvolt = <2800000>; 330 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 331 }; 332 333 vreg_l17b_2p5: ldo17 { 334 regulator-name = "vreg_l17b_2p5"; 335 regulator-min-microvolt = <2504000>; 336 regulator-max-microvolt = <2504000>; 337 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 338 }; 339 }; 340 341 regulators-1 { 342 compatible = "qcom,pm8550vs-rpmh-regulators"; 343 qcom,pmic-id = "c"; 344 345 vdd-l1-supply = <&vreg_s4g_1p25>; 346 vdd-l2-supply = <&vreg_s4e_0p95>; 347 vdd-l3-supply = <&vreg_s4e_0p95>; 348 349 vreg_l3c_0p9: ldo3 { 350 regulator-name = "vreg_l3c_0p9"; 351 regulator-min-microvolt = <880000>; 352 regulator-max-microvolt = <912000>; 353 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 354 }; 355 }; 356 357 regulators-2 { 358 compatible = "qcom,pm8550vs-rpmh-regulators"; 359 qcom,pmic-id = "d"; 360 361 vdd-l1-supply = <&vreg_s4e_0p95>; 362 vdd-l2-supply = <&vreg_s4e_0p95>; 363 vdd-l3-supply = <&vreg_s4e_0p95>; 364 365 vreg_l1d_0p88: ldo1 { 366 regulator-name = "vreg_l1d_0p88"; 367 regulator-min-microvolt = <880000>; 368 regulator-max-microvolt = <920000>; 369 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 370 }; 371 372 /* ldo2 supplies SM8550 VDD_LPI_MX */ 373 }; 374 375 regulators-3 { 376 compatible = "qcom,pm8550vs-rpmh-regulators"; 377 qcom,pmic-id = "e"; 378 379 vdd-l1-supply = <&vreg_s4e_0p95>; 380 vdd-l2-supply = <&vreg_s4e_0p95>; 381 vdd-l3-supply = <&vreg_s4g_1p25>; 382 vdd-s4-supply = <&vph_pwr>; 383 vdd-s5-supply = <&vph_pwr>; 384 385 vreg_s4e_0p95: smps4 { 386 regulator-name = "vreg_s4e_0p95"; 387 regulator-min-microvolt = <904000>; 388 regulator-max-microvolt = <984000>; 389 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 390 }; 391 392 vreg_s5e_1p08: smps5 { 393 regulator-name = "vreg_s5e_1p08"; 394 regulator-min-microvolt = <1080000>; 395 regulator-max-microvolt = <1120000>; 396 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 397 }; 398 399 vreg_l1e_0p88: ldo1 { 400 regulator-name = "vreg_l1e_0p88"; 401 regulator-min-microvolt = <880000>; 402 regulator-max-microvolt = <880000>; 403 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 404 }; 405 406 vreg_l2e_0p9: ldo2 { 407 regulator-name = "vreg_l2e_0p9"; 408 regulator-min-microvolt = <904000>; 409 regulator-max-microvolt = <970000>; 410 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 411 }; 412 413 vreg_l3e_1p2: ldo3 { 414 regulator-name = "vreg_l3e_1p2"; 415 regulator-min-microvolt = <1200000>; 416 regulator-max-microvolt = <1200000>; 417 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 418 }; 419 }; 420 421 regulators-4 { 422 compatible = "qcom,pm8550ve-rpmh-regulators"; 423 qcom,pmic-id = "f"; 424 425 vdd-l1-supply = <&vreg_s4e_0p95>; 426 vdd-l2-supply = <&vreg_s4e_0p95>; 427 vdd-l3-supply = <&vreg_s4e_0p95>; 428 vdd-s4-supply = <&vph_pwr>; 429 430 vreg_s4f_0p5: smps4 { 431 regulator-name = "vreg_s4f_0p5"; 432 regulator-min-microvolt = <500000>; 433 regulator-max-microvolt = <700000>; 434 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 435 }; 436 437 vreg_l1f_0p9: ldo1 { 438 regulator-name = "vreg_l1f_0p9"; 439 regulator-min-microvolt = <912000>; 440 regulator-max-microvolt = <912000>; 441 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 442 }; 443 444 vreg_l2f_0p88: ldo2 { 445 regulator-name = "vreg_l2f_0p88"; 446 regulator-min-microvolt = <880000>; 447 regulator-max-microvolt = <912000>; 448 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 449 }; 450 451 vreg_l3f_0p88: ldo3 { 452 regulator-name = "vreg_l3f_0p88"; 453 regulator-min-microvolt = <880000>; 454 regulator-max-microvolt = <912000>; 455 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 456 }; 457 }; 458 459 regulators-5 { 460 compatible = "qcom,pm8550vs-rpmh-regulators"; 461 qcom,pmic-id = "g"; 462 463 vdd-l1-supply = <&vreg_s4g_1p25>; 464 vdd-l2-supply = <&vreg_s4g_1p25>; 465 vdd-l3-supply = <&vreg_s4g_1p25>; 466 vdd-s1-supply = <&vph_pwr>; 467 vdd-s2-supply = <&vph_pwr>; 468 vdd-s3-supply = <&vph_pwr>; 469 vdd-s4-supply = <&vph_pwr>; 470 vdd-s5-supply = <&vph_pwr>; 471 vdd-s6-supply = <&vph_pwr>; 472 473 vreg_s1g_1p25: smps1 { 474 regulator-name = "vreg_s1g_1p25"; 475 regulator-min-microvolt = <1200000>; 476 regulator-max-microvolt = <1300000>; 477 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 478 }; 479 480 vreg_s2g_0p85: smps2 { 481 regulator-name = "vreg_s2g_0p85"; 482 regulator-min-microvolt = <800000>; 483 regulator-max-microvolt = <1000000>; 484 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 485 }; 486 487 vreg_s3g_0p8: smps3 { 488 regulator-name = "vreg_s3g_0p8"; 489 regulator-min-microvolt = <300000>; 490 regulator-max-microvolt = <1004000>; 491 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 492 }; 493 494 vreg_s4g_1p25: smps4 { 495 regulator-name = "vreg_s4g_1p25"; 496 regulator-min-microvolt = <1200000>; 497 regulator-max-microvolt = <1352000>; 498 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 499 }; 500 501 vreg_s5g_0p85: smps5 { 502 regulator-name = "vreg_s5g_0p85"; 503 regulator-min-microvolt = <500000>; 504 regulator-max-microvolt = <1004000>; 505 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 506 }; 507 508 vreg_s6g_1p86: smps6 { 509 regulator-name = "vreg_s6g_1p86"; 510 regulator-min-microvolt = <1800000>; 511 regulator-max-microvolt = <2000000>; 512 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 513 }; 514 515 vreg_l1g_1p2: ldo1 { 516 regulator-name = "vreg_l1g_1p2"; 517 regulator-min-microvolt = <1200000>; 518 regulator-max-microvolt = <1200000>; 519 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 520 }; 521 522 vreg_l3g_1p2: ldo3 { 523 regulator-name = "vreg_l3g_1p2"; 524 regulator-min-microvolt = <1200000>; 525 regulator-max-microvolt = <1200000>; 526 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 527 }; 528 }; 529}; 530 531&i2c_master_hub_0 { 532 status = "okay"; 533}; 534 535&i2c_hub_2 { 536 status = "okay"; 537 538 typec-retimer@1c { 539 compatible = "onnn,nb7vpq904m"; 540 reg = <0x1c>; 541 542 vcc-supply = <&vreg_l15b_1p8>; 543 544 retimer-switch; 545 orientation-switch; 546 547 ports { 548 #address-cells = <1>; 549 #size-cells = <0>; 550 551 port@0 { 552 reg = <0>; 553 554 redriver_ss_out: endpoint { 555 remote-endpoint = <&pmic_glink_ss_in>; 556 }; 557 }; 558 559 port@1 { 560 reg = <1>; 561 562 redriver_ss_in: endpoint { 563 data-lanes = <3 2 1 0>; 564 remote-endpoint = <&usb_dp_qmpphy_out>; 565 }; 566 }; 567 }; 568 }; 569 570 typec-mux@42 { 571 compatible = "fcs,fsa4480"; 572 reg = <0x42>; 573 574 vcc-supply = <&vreg_bob1>; 575 576 mode-switch; 577 orientation-switch; 578 579 port { 580 fsa4480_sbu_mux: endpoint { 581 remote-endpoint = <&pmic_glink_sbu>; 582 }; 583 }; 584 }; 585}; 586 587&gcc { 588 clocks = <&bi_tcxo_div2>, <&sleep_clk>, 589 <&pcie0_phy>, 590 <&pcie1_phy>, 591 <0>, 592 <&ufs_mem_phy 0>, 593 <&ufs_mem_phy 1>, 594 <&ufs_mem_phy 2>, 595 <&usb_dp_qmpphy QMP_USB43DP_USB3_PIPE_CLK>; 596}; 597 598&lpass_tlmm { 599 spkr_1_sd_n_active: spkr-1-sd-n-active-state { 600 pins = "gpio17"; 601 function = "gpio"; 602 drive-strength = <16>; 603 bias-disable; 604 output-low; 605 }; 606 607 spkr_2_sd_n_active: spkr-2-sd-n-active-state { 608 pins = "gpio18"; 609 function = "gpio"; 610 drive-strength = <16>; 611 bias-disable; 612 output-low; 613 }; 614}; 615 616&mdss { 617 status = "okay"; 618}; 619 620&mdss_dsi0 { 621 vdda-supply = <&vreg_l3e_1p2>; 622 status = "okay"; 623 624 panel@0 { 625 compatible = "visionox,vtdr6130"; 626 reg = <0>; 627 628 pinctrl-0 = <&sde_dsi_active>, <&sde_te_active>; 629 pinctrl-1 = <&sde_dsi_suspend>, <&sde_te_suspend>; 630 pinctrl-names = "default", "sleep"; 631 632 vci-supply = <&vreg_l13b_3p0>; 633 vdd-supply = <&vreg_l11b_1p2>; 634 vddio-supply = <&vreg_l12b_1p8>; 635 636 reset-gpios = <&tlmm 133 GPIO_ACTIVE_LOW>; 637 638 port { 639 panel0_in: endpoint { 640 remote-endpoint = <&mdss_dsi0_out>; 641 }; 642 }; 643 }; 644}; 645 646&mdss_dsi0_out { 647 remote-endpoint = <&panel0_in>; 648 data-lanes = <0 1 2 3>; 649}; 650 651&mdss_dsi0_phy { 652 vdds-supply = <&vreg_l1e_0p88>; 653 status = "okay"; 654}; 655 656&mdss_dp0 { 657 status = "okay"; 658}; 659 660&mdss_dp0_out { 661 data-lanes = <0 1>; 662 remote-endpoint = <&usb_dp_qmpphy_dp_in>; 663}; 664 665&pcie_1_phy_aux_clk { 666 status = "disabled"; 667}; 668 669&pcie0 { 670 wake-gpios = <&tlmm 96 GPIO_ACTIVE_HIGH>; 671 perst-gpios = <&tlmm 94 GPIO_ACTIVE_LOW>; 672 673 pinctrl-0 = <&pcie0_default_state>; 674 pinctrl-names = "default"; 675 676 status = "okay"; 677}; 678 679&pcie0_phy { 680 vdda-phy-supply = <&vreg_l1e_0p88>; 681 vdda-pll-supply = <&vreg_l3e_1p2>; 682 683 status = "okay"; 684}; 685 686&pm8550_flash { 687 status = "okay"; 688 689 led-0 { 690 function = LED_FUNCTION_FLASH; 691 color = <LED_COLOR_ID_YELLOW>; 692 led-sources = <1>, <4>; 693 led-max-microamp = <500000>; 694 flash-max-microamp = <2000000>; 695 flash-max-timeout-us = <1280000>; 696 function-enumerator = <0>; 697 }; 698 699 led-1 { 700 function = LED_FUNCTION_FLASH; 701 color = <LED_COLOR_ID_WHITE>; 702 led-sources = <2>, <3>; 703 led-max-microamp = <500000>; 704 flash-max-microamp = <2000000>; 705 flash-max-timeout-us = <1280000>; 706 function-enumerator = <1>; 707 }; 708}; 709 710&pm8550_gpios { 711 volume_up_n: volume-up-n-state { 712 pins = "gpio6"; 713 function = "normal"; 714 power-source = <1>; 715 bias-pull-up; 716 input-enable; 717 }; 718}; 719 720&pm8550_pwm { 721 status = "okay"; 722 723 multi-led { 724 color = <LED_COLOR_ID_RGB>; 725 function = LED_FUNCTION_STATUS; 726 727 #address-cells = <1>; 728 #size-cells = <0>; 729 730 led@1 { 731 reg = <1>; 732 color = <LED_COLOR_ID_RED>; 733 }; 734 735 led@2 { 736 reg = <2>; 737 color = <LED_COLOR_ID_GREEN>; 738 }; 739 740 led@3 { 741 reg = <3>; 742 color = <LED_COLOR_ID_BLUE>; 743 }; 744 }; 745}; 746 747&pm8550b_eusb2_repeater { 748 vdd18-supply = <&vreg_l15b_1p8>; 749 vdd3-supply = <&vreg_l5b_3p1>; 750}; 751 752&pon_pwrkey { 753 status = "okay"; 754}; 755 756&pon_resin { 757 linux,code = <KEY_VOLUMEDOWN>; 758 759 status = "okay"; 760}; 761 762&pcie_1_phy_aux_clk { 763 clock-frequency = <1000>; 764}; 765 766&qupv3_id_0 { 767 status = "okay"; 768}; 769 770&qupv3_id_1 { 771 status = "okay"; 772}; 773 774&remoteproc_adsp { 775 firmware-name = "qcom/sm8550/adsp.mbn", 776 "qcom/sm8550/adsp_dtb.mbn"; 777 status = "okay"; 778}; 779 780&remoteproc_cdsp { 781 firmware-name = "qcom/sm8550/cdsp.mbn", 782 "qcom/sm8550/cdsp_dtb.mbn"; 783 status = "okay"; 784}; 785 786&remoteproc_mpss { 787 firmware-name = "qcom/sm8550/modem.mbn", 788 "qcom/sm8550/modem_dtb.mbn"; 789 status = "okay"; 790}; 791 792&sleep_clk { 793 clock-frequency = <32000>; 794}; 795 796&swr0 { 797 status = "okay"; 798 799 /* WSA8845, Speaker North */ 800 north_spkr: speaker@0,0 { 801 compatible = "sdw20217020400"; 802 reg = <0 0>; 803 pinctrl-names = "default"; 804 pinctrl-0 = <&spkr_1_sd_n_active>; 805 powerdown-gpios = <&lpass_tlmm 17 GPIO_ACTIVE_LOW>; 806 #sound-dai-cells = <0>; 807 sound-name-prefix = "SpkrLeft"; 808 vdd-1p8-supply = <&vreg_l15b_1p8>; 809 vdd-io-supply = <&vreg_l3g_1p2>; 810 }; 811 812 /* WSA8845, Speaker South */ 813 south_spkr: speaker@0,1 { 814 compatible = "sdw20217020400"; 815 reg = <0 1>; 816 pinctrl-names = "default"; 817 pinctrl-0 = <&spkr_2_sd_n_active>; 818 powerdown-gpios = <&lpass_tlmm 18 GPIO_ACTIVE_LOW>; 819 #sound-dai-cells = <0>; 820 sound-name-prefix = "SpkrRight"; 821 vdd-1p8-supply = <&vreg_l15b_1p8>; 822 vdd-io-supply = <&vreg_l3g_1p2>; 823 }; 824}; 825 826&swr1 { 827 status = "okay"; 828 829 /* WCD9385 RX */ 830 wcd_rx: codec@0,4 { 831 compatible = "sdw20217010d00"; 832 reg = <0 4>; 833 qcom,rx-port-mapping = <1 2 3 4 5>; 834 }; 835}; 836 837&swr2 { 838 status = "okay"; 839 840 /* WCD9385 TX */ 841 wcd_tx: codec@0,3 { 842 compatible = "sdw20217010d00"; 843 reg = <0 3>; 844 qcom,tx-port-mapping = <1 1 2 3>; 845 }; 846}; 847 848&tlmm { 849 gpio-reserved-ranges = <32 8>; 850 851 bt_default: bt-default-state { 852 bt-en-pins { 853 pins = "gpio81"; 854 function = "gpio"; 855 drive-strength = <16>; 856 bias-disable; 857 }; 858 859 sw-ctrl-pins { 860 pins = "gpio82"; 861 function = "gpio"; 862 bias-pull-down; 863 }; 864 }; 865 866 sde_dsi_active: sde-dsi-active-state { 867 pins = "gpio133"; 868 function = "gpio"; 869 drive-strength = <8>; 870 bias-disable; 871 }; 872 873 sde_dsi_suspend: sde-dsi-suspend-state { 874 pins = "gpio133"; 875 function = "gpio"; 876 drive-strength = <2>; 877 bias-pull-down; 878 }; 879 880 sde_te_active: sde-te-active-state { 881 pins = "gpio86"; 882 function = "mdp_vsync"; 883 drive-strength = <2>; 884 bias-pull-down; 885 }; 886 887 sde_te_suspend: sde-te-suspend-state { 888 pins = "gpio86"; 889 function = "mdp_vsync"; 890 drive-strength = <2>; 891 bias-pull-down; 892 }; 893 894 wcd_default: wcd-reset-n-active-state { 895 pins = "gpio108"; 896 function = "gpio"; 897 drive-strength = <16>; 898 bias-disable; 899 output-low; 900 }; 901}; 902 903&uart7 { 904 status = "okay"; 905}; 906 907&uart14 { 908 status = "okay"; 909 910 bluetooth { 911 compatible = "qcom,wcn7850-bt"; 912 913 vddio-supply = <&vreg_l15b_1p8>; 914 vddaon-supply = <&vreg_s4e_0p95>; 915 vdddig-supply = <&vreg_s4e_0p95>; 916 vddrfa0p8-supply = <&vreg_s4e_0p95>; 917 vddrfa1p2-supply = <&vreg_s4g_1p25>; 918 vddrfa1p9-supply = <&vreg_s6g_1p86>; 919 920 max-speed = <3200000>; 921 922 enable-gpios = <&tlmm 81 GPIO_ACTIVE_HIGH>; 923 swctrl-gpios = <&tlmm 82 GPIO_ACTIVE_HIGH>; 924 925 pinctrl-0 = <&bt_default>; 926 pinctrl-names = "default"; 927 }; 928}; 929 930&ufs_mem_hc { 931 reset-gpios = <&tlmm 210 GPIO_ACTIVE_LOW>; 932 vcc-supply = <&vreg_l17b_2p5>; 933 vcc-max-microamp = <1300000>; 934 vccq-supply = <&vreg_l1g_1p2>; 935 vccq-max-microamp = <1200000>; 936 vdd-hba-supply = <&vreg_l3g_1p2>; 937 938 status = "okay"; 939}; 940 941&ufs_mem_phy { 942 vdda-phy-supply = <&vreg_l1d_0p88>; 943 vdda-pll-supply = <&vreg_l3e_1p2>; 944 945 status = "okay"; 946}; 947 948&usb_1 { 949 status = "okay"; 950}; 951 952&usb_1_dwc3 { 953 dr_mode = "otg"; 954 usb-role-switch; 955}; 956 957&usb_1_dwc3_hs { 958 remote-endpoint = <&pmic_glink_hs_in>; 959}; 960 961&usb_1_dwc3_ss { 962 remote-endpoint = <&usb_dp_qmpphy_usb_ss_in>; 963}; 964 965&usb_1_hsphy { 966 vdd-supply = <&vreg_l1e_0p88>; 967 vdda12-supply = <&vreg_l3e_1p2>; 968 969 phys = <&pm8550b_eusb2_repeater>; 970 971 status = "okay"; 972}; 973 974&usb_dp_qmpphy { 975 vdda-phy-supply = <&vreg_l3e_1p2>; 976 vdda-pll-supply = <&vreg_l3f_0p88>; 977 978 orientation-switch; 979 980 status = "okay"; 981}; 982 983&usb_dp_qmpphy_dp_in { 984 remote-endpoint = <&mdss_dp0_out>; 985}; 986 987&usb_dp_qmpphy_out { 988 remote-endpoint = <&redriver_ss_in>; 989}; 990 991&usb_dp_qmpphy_usb_ss_in { 992 remote-endpoint = <&usb_1_dwc3_ss>; 993}; 994 995&xo_board { 996 clock-frequency = <76800000>; 997}; 998