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