1// SPDX-License-Identifier: BSD-3-Clause 2/* 3 * Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved. 4 */ 5 6/dts-v1/; 7 8#include <dt-bindings/gpio/gpio.h> 9#include <dt-bindings/leds/common.h> 10#include <dt-bindings/regulator/qcom,rpmh-regulator.h> 11#include "sm8750.dtsi" 12#include "pm8010.dtsi" 13#include "pm8550.dtsi" 14#define PMK8550VE_SID 8 15#include "pm8550ve.dtsi" 16#include "pmd8028.dtsi" 17#include "pmih0108.dtsi" 18#include "pmk8550.dtsi" 19#include "pmr735d_a.dtsi" 20#include "sm8750-pmics.dtsi" 21 22/ { 23 model = "Qualcomm Technologies, Inc. SM8750 MTP"; 24 compatible = "qcom,sm8750-mtp", "qcom,sm8750"; 25 chassis-type = "handset"; 26 27 28 aliases { 29 serial0 = &uart7; 30 }; 31 32 wcd939x: audio-codec { 33 compatible = "qcom,wcd9395-codec", "qcom,wcd9390-codec"; 34 35 pinctrl-0 = <&wcd_default>; 36 pinctrl-names = "default"; 37 38 qcom,micbias1-microvolt = <1800000>; 39 qcom,micbias2-microvolt = <1800000>; 40 qcom,micbias3-microvolt = <1800000>; 41 qcom,micbias4-microvolt = <1800000>; 42 qcom,mbhc-buttons-vthreshold-microvolt = <75000 150000 237000 500000 500000 500000 500000 500000>; 43 qcom,mbhc-headset-vthreshold-microvolt = <1700000>; 44 qcom,mbhc-headphone-vthreshold-microvolt = <50000>; 45 qcom,rx-device = <&wcd_rx>; 46 qcom,tx-device = <&wcd_tx>; 47 48 reset-gpios = <&tlmm 101 GPIO_ACTIVE_LOW>; 49 50 vdd-buck-supply = <&vreg_l15b_1p8>; 51 vdd-rxtx-supply = <&vreg_l15b_1p8>; 52 vdd-io-supply = <&vreg_l15b_1p8>; 53 vdd-mic-bias-supply = <&vreg_bob1>; 54 vdd-px-supply = <&vreg_l2i_1p2>; 55 56 #sound-dai-cells = <1>; 57 }; 58 59 chosen { 60 stdout-path = "serial0:115200n8"; 61 }; 62 63 clocks { 64 xo_board: xo-board { 65 compatible = "fixed-clock"; 66 clock-frequency = <76800000>; 67 #clock-cells = <0>; 68 }; 69 70 sleep_clk: sleep-clk { 71 compatible = "fixed-clock"; 72 clock-frequency = <32000>; 73 #clock-cells = <0>; 74 }; 75 76 bi_tcxo_div2: bi-tcxo-div2-clk { 77 compatible = "fixed-factor-clock"; 78 #clock-cells = <0>; 79 80 clocks = <&rpmhcc RPMH_CXO_CLK>; 81 clock-mult = <1>; 82 clock-div = <2>; 83 }; 84 85 bi_tcxo_ao_div2: bi-tcxo-ao-div2-clk { 86 compatible = "fixed-factor-clock"; 87 #clock-cells = <0>; 88 89 clocks = <&rpmhcc RPMH_CXO_CLK_A>; 90 clock-mult = <1>; 91 clock-div = <2>; 92 }; 93 }; 94 95 gpio-keys { 96 compatible = "gpio-keys"; 97 98 pinctrl-0 = <&volume_up_n>; 99 pinctrl-names = "default"; 100 101 key-volume-up { 102 label = "Volume Up"; 103 linux,code = <KEY_VOLUMEUP>; 104 gpios = <&pm8550_gpios 6 GPIO_ACTIVE_LOW>; 105 debounce-interval = <15>; 106 linux,can-disable; 107 wakeup-source; 108 }; 109 }; 110 111 sound { 112 compatible = "qcom,sm8750-sndcard", "qcom,sm8450-sndcard"; 113 model = "SM8750-MTP"; 114 audio-routing = "SpkrLeft IN", "WSA_SPK1 OUT", 115 "SpkrRight IN", "WSA_SPK2 OUT", 116 "IN1_HPHL", "HPHL_OUT", 117 "IN2_HPHR", "HPHR_OUT", 118 "AMIC2", "MIC BIAS2", 119 "VA DMIC0", "MIC BIAS3", /* MIC4 on schematics */ 120 "VA DMIC1", "MIC BIAS3", /* MIC1 on schematics */ 121 "VA DMIC2", "MIC BIAS1", 122 "VA DMIC3", "MIC BIAS1", 123 "VA DMIC0", "VA MIC BIAS3", 124 "VA DMIC1", "VA MIC BIAS3", 125 "VA DMIC2", "VA MIC BIAS1", 126 "VA DMIC3", "VA MIC BIAS1", 127 "TX SWR_INPUT1", "ADC2_OUTPUT"; 128 129 wcd-playback-dai-link { 130 link-name = "WCD Playback"; 131 132 codec { 133 sound-dai = <&wcd939x 0>, <&swr1 0>, <&lpass_rxmacro 0>; 134 }; 135 136 cpu { 137 sound-dai = <&q6apmbedai RX_CODEC_DMA_RX_0>; 138 }; 139 140 platform { 141 sound-dai = <&q6apm>; 142 }; 143 }; 144 145 wcd-capture-dai-link { 146 link-name = "WCD Capture"; 147 148 codec { 149 sound-dai = <&wcd939x 1>, <&swr2 0>, <&lpass_txmacro 0>; 150 }; 151 152 cpu { 153 sound-dai = <&q6apmbedai TX_CODEC_DMA_TX_3>; 154 }; 155 156 platform { 157 sound-dai = <&q6apm>; 158 }; 159 }; 160 161 wsa-dai-link { 162 link-name = "WSA Playback"; 163 164 codec { 165 sound-dai = <&left_spkr>, <&right_spkr>, <&swr0 0>, <&lpass_wsamacro 0>; 166 }; 167 168 cpu { 169 sound-dai = <&q6apmbedai WSA_CODEC_DMA_RX_0>; 170 }; 171 172 platform { 173 sound-dai = <&q6apm>; 174 }; 175 }; 176 177 va-dai-link { 178 link-name = "VA Capture"; 179 180 codec { 181 sound-dai = <&lpass_vamacro 0>; 182 }; 183 184 cpu { 185 sound-dai = <&q6apmbedai VA_CODEC_DMA_TX_0>; 186 }; 187 188 platform { 189 sound-dai = <&q6apm>; 190 }; 191 }; 192 }; 193 194 vph_pwr: vph-pwr-regulator { 195 compatible = "regulator-fixed"; 196 197 regulator-name = "vph_pwr"; 198 regulator-min-microvolt = <3700000>; 199 regulator-max-microvolt = <3700000>; 200 201 regulator-always-on; 202 regulator-boot-on; 203 }; 204}; 205 206&apps_rsc { 207 regulators-0 { 208 compatible = "qcom,pm8550-rpmh-regulators"; 209 210 vdd-bob1-supply = <&vph_pwr>; 211 vdd-bob2-supply = <&vph_pwr>; 212 vdd-l1-l4-l10-supply = <&vreg_s3g_1p8>; 213 vdd-l2-l13-l14-supply = <&vreg_bob1>; 214 vdd-l3-supply = <&vreg_s7i_1p2>; 215 vdd-l5-l16-supply = <&vreg_bob1>; 216 vdd-l6-l7-supply = <&vreg_bob1>; 217 vdd-l8-l9-supply = <&vreg_bob1>; 218 vdd-l11-supply = <&vreg_s7i_1p2>; 219 vdd-l12-supply = <&vreg_s3g_1p8>; 220 vdd-l15-supply = <&vreg_s3g_1p8>; 221 vdd-l17-supply = <&vreg_bob2>; 222 223 qcom,pmic-id = "b"; 224 225 vreg_bob1: bob1 { 226 regulator-name = "vreg_bob1"; 227 regulator-min-microvolt = <3008000>; 228 regulator-max-microvolt = <4000000>; 229 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 230 }; 231 232 vreg_bob2: bob2 { 233 regulator-name = "vreg_bob2"; 234 regulator-min-microvolt = <2704000>; 235 regulator-max-microvolt = <3008000>; 236 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 237 }; 238 239 vreg_l1b_1p8: ldo1 { 240 regulator-name = "vreg_l1b_1p8"; 241 regulator-min-microvolt = <1800000>; 242 regulator-max-microvolt = <1800000>; 243 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 244 regulator-allow-set-load; 245 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 246 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 = <3048000>; 253 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 254 regulator-allow-set-load; 255 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 256 RPMH_REGULATOR_MODE_HPM>; 257 }; 258 259 vreg_l4b_1p8: ldo4 { 260 regulator-name = "vreg_l4b_1p8"; 261 regulator-min-microvolt = <1800000>; 262 regulator-max-microvolt = <1800000>; 263 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 264 regulator-allow-set-load; 265 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 266 RPMH_REGULATOR_MODE_HPM>; 267 }; 268 269 vreg_l5b_3p1: ldo5 { 270 regulator-name = "vreg_l5b_3p1"; 271 regulator-min-microvolt = <3100000>; 272 regulator-max-microvolt = <3148000>; 273 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 274 regulator-allow-set-load; 275 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 276 RPMH_REGULATOR_MODE_HPM>; 277 }; 278 279 vreg_l6b_1p8: ldo6 { 280 regulator-name = "vreg_l6b_1p8"; 281 regulator-min-microvolt = <1800000>; 282 regulator-max-microvolt = <3008000>; 283 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 284 regulator-allow-set-load; 285 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 286 RPMH_REGULATOR_MODE_HPM>; 287 }; 288 289 vreg_l7b_1p8: ldo7 { 290 regulator-name = "vreg_l7b_1p8"; 291 regulator-min-microvolt = <1800000>; 292 regulator-max-microvolt = <3008000>; 293 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 294 regulator-allow-set-load; 295 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 296 RPMH_REGULATOR_MODE_HPM>; 297 298 }; 299 300 vreg_l8b_1p8: ldo8 { 301 regulator-name = "vreg_l8b_1p8"; 302 regulator-min-microvolt = <1800000>; 303 regulator-max-microvolt = <3008000>; 304 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 305 regulator-allow-set-load; 306 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 307 RPMH_REGULATOR_MODE_HPM>; 308 }; 309 310 vreg_l9b_2p9: ldo9 { 311 regulator-name = "vreg_l9b_2p9"; 312 regulator-min-microvolt = <2960000>; 313 regulator-max-microvolt = <3008000>; 314 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 315 regulator-allow-set-load; 316 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 317 RPMH_REGULATOR_MODE_HPM>; 318 }; 319 320 vreg_l10b_1p8: ldo10 { 321 regulator-name = "vreg_l10b_1p8"; 322 regulator-min-microvolt = <1800000>; 323 regulator-max-microvolt = <1800000>; 324 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 325 regulator-allow-set-load; 326 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 327 RPMH_REGULATOR_MODE_HPM>; 328 }; 329 330 vreg_l11b_1p0: ldo11 { 331 regulator-name = "vreg_l11b_1p0"; 332 regulator-min-microvolt = <1064000>; 333 regulator-max-microvolt = <1292000>; 334 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 335 regulator-allow-set-load; 336 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 337 RPMH_REGULATOR_MODE_HPM>; 338 }; 339 340 vreg_l12b_1p8: ldo12 { 341 regulator-name = "vreg_l12b_1p8"; 342 regulator-min-microvolt = <1200000>; 343 regulator-max-microvolt = <1800000>; 344 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 345 regulator-allow-set-load; 346 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 347 RPMH_REGULATOR_MODE_HPM>; 348 }; 349 350 vreg_l13b_3p0: ldo13 { 351 regulator-name = "vreg_l13b_3p0"; 352 regulator-min-microvolt = <3000000>; 353 regulator-max-microvolt = <3000000>; 354 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 355 regulator-allow-set-load; 356 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 357 RPMH_REGULATOR_MODE_HPM>; 358 }; 359 360 vreg_l14b_3p2: ldo14 { 361 regulator-name = "vreg_l14b_3p2"; 362 regulator-min-microvolt = <3200000>; 363 regulator-max-microvolt = <3200000>; 364 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 365 regulator-allow-set-load; 366 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 367 RPMH_REGULATOR_MODE_HPM>; 368 }; 369 370 vreg_l15b_1p8: ldo15 { 371 regulator-name = "vreg_l15b_1p8"; 372 regulator-min-microvolt = <1800000>; 373 regulator-max-microvolt = <1800000>; 374 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 375 regulator-allow-set-load; 376 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 377 RPMH_REGULATOR_MODE_HPM>; 378 }; 379 380 vreg_l16b_2p8: ldo16 { 381 regulator-name = "vreg_l16b_2p8"; 382 regulator-min-microvolt = <2800000>; 383 regulator-max-microvolt = <2800000>; 384 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 385 regulator-allow-set-load; 386 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 387 RPMH_REGULATOR_MODE_HPM>; 388 }; 389 390 vreg_l17b_2p5: ldo17 { 391 regulator-name = "vreg_l17b_2p5"; 392 regulator-min-microvolt = <2504000>; 393 regulator-max-microvolt = <2504000>; 394 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 395 regulator-allow-set-load; 396 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 397 RPMH_REGULATOR_MODE_HPM>; 398 }; 399 }; 400 401 regulators-1 { 402 compatible = "qcom,pm8550ve-rpmh-regulators"; 403 404 vdd-l1-supply = <&vreg_s7i_1p2>; 405 vdd-l2-supply = <&vreg_s1d_0p97>; 406 vdd-l3-supply = <&vreg_s1d_0p97>; 407 vdd-s1-supply = <&vph_pwr>; 408 vdd-s3-supply = <&vph_pwr>; 409 vdd-s4-supply = <&vph_pwr>; 410 411 qcom,pmic-id = "d"; 412 413 vreg_s1d_0p97: smps1 { 414 regulator-name = "vreg_s1d_0p97"; 415 regulator-min-microvolt = <880000>; 416 regulator-max-microvolt = <1100000>; 417 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 418 }; 419 420 vreg_s3d_1p2: smps3 { 421 regulator-name = "vreg_s3d_1p2"; 422 regulator-min-microvolt = <1200000>; 423 regulator-max-microvolt = <1300000>; 424 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 425 }; 426 427 vreg_s4d_0p85: smps4 { 428 regulator-name = "vreg_s4d_0p85"; 429 regulator-min-microvolt = <500000>; 430 regulator-max-microvolt = <1036000>; 431 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 432 }; 433 434 vreg_l1d_1p2: ldo1 { 435 regulator-name = "vreg_l1d_1p2"; 436 regulator-min-microvolt = <1200000>; 437 regulator-max-microvolt = <1200000>; 438 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 439 regulator-allow-set-load; 440 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 441 RPMH_REGULATOR_MODE_HPM>; 442 }; 443 444 vreg_l2d_0p88: ldo2 { 445 regulator-name = "vreg_l2d_0p88"; 446 regulator-min-microvolt = <880000>; 447 regulator-max-microvolt = <912000>; 448 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 449 regulator-allow-set-load; 450 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 451 RPMH_REGULATOR_MODE_HPM>; 452 }; 453 454 vreg_l3d_0p88: ldo3 { 455 regulator-name = "vreg_l3d_0p88"; 456 regulator-min-microvolt = <880000>; 457 regulator-max-microvolt = <920000>; 458 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 459 regulator-allow-set-load; 460 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 461 RPMH_REGULATOR_MODE_HPM>; 462 }; 463 }; 464 465 regulators-2 { 466 compatible = "qcom,pm8550ve-rpmh-regulators"; 467 468 vdd-l1-supply = <&vreg_s1d_0p97>; 469 vdd-l2-supply = <&vreg_s7i_1p2>; 470 vdd-l3-supply = <&vreg_s3g_1p8>; 471 vdd-s5-supply = <&vph_pwr>; 472 473 qcom,pmic-id = "f"; 474 475 vreg_s5f_0p5: smps5 { 476 regulator-name = "vreg_s5f_0p5"; 477 regulator-min-microvolt = <500000>; 478 regulator-max-microvolt = <1000000>; 479 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 480 }; 481 482 vreg_l1f_0p88: ldo1 { 483 regulator-name = "vreg_l1f_0p88"; 484 regulator-min-microvolt = <880000>; 485 regulator-max-microvolt = <920000>; 486 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 487 regulator-allow-set-load; 488 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 489 RPMH_REGULATOR_MODE_HPM>; 490 }; 491 492 vreg_l2f_1p2: ldo2 { 493 regulator-name = "vreg_l2f_1p2"; 494 regulator-min-microvolt = <1200000>; 495 regulator-max-microvolt = <1200000>; 496 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 497 regulator-allow-set-load; 498 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 499 RPMH_REGULATOR_MODE_HPM>; 500 }; 501 502 vreg_l3f_1p8: ldo3 { 503 regulator-name = "vreg_l3f_1p8"; 504 regulator-min-microvolt = <1800000>; 505 regulator-max-microvolt = <1800000>; 506 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 507 regulator-allow-set-load; 508 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 509 RPMH_REGULATOR_MODE_HPM>; 510 }; 511 512 }; 513 514 regulators-3 { 515 compatible = "qcom,pm8550ve-rpmh-regulators"; 516 517 vdd-l1-supply = <&vreg_s1d_0p97>; 518 vdd-l2-supply = <&vreg_s3g_1p8>; 519 vdd-l3-supply = <&vreg_s7i_1p2>; 520 vdd-s1-supply = <&vph_pwr>; 521 vdd-s3-supply = <&vph_pwr>; 522 523 qcom,pmic-id = "g"; 524 525 vreg_s1g_0p5: smps1 { 526 regulator-name = "vreg_s1g_0p5"; 527 regulator-min-microvolt = <300000>; 528 regulator-max-microvolt = <700000>; 529 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 530 }; 531 532 vreg_s3g_1p8: smps3 { 533 regulator-name = "vreg_s3g_1p8"; 534 regulator-min-microvolt = <1856000>; 535 regulator-max-microvolt = <2000000>; 536 regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>; 537 regulator-allow-set-load; 538 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 539 RPMH_REGULATOR_MODE_HPM>; 540 }; 541 542 vreg_s4g_0p75: smps4 { 543 regulator-name = "vreg_s4g_0p75"; 544 regulator-min-microvolt = <300000>; 545 regulator-max-microvolt = <900000>; 546 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 547 }; 548 549 vreg_l1g_0p91: ldo1 { 550 regulator-name = "vreg_l1g_0p91"; 551 regulator-min-microvolt = <912000>; 552 regulator-max-microvolt = <936000>; 553 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 554 regulator-allow-set-load; 555 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 556 RPMH_REGULATOR_MODE_HPM>; 557 }; 558 559 vreg_l2g_1p8: ldo2 { 560 regulator-name = "vreg_l2g_1p8"; 561 regulator-min-microvolt = <1200000>; 562 regulator-max-microvolt = <1860000>; 563 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 564 regulator-allow-set-load; 565 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 566 RPMH_REGULATOR_MODE_HPM>; 567 }; 568 569 vreg_l3g_1p2: ldo3 { 570 regulator-name = "vreg_l3g_1p2"; 571 regulator-min-microvolt = <1200000>; 572 regulator-max-microvolt = <1256000>; 573 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 574 regulator-allow-set-load; 575 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 576 RPMH_REGULATOR_MODE_HPM>; 577 }; 578 }; 579 580 regulators-4 { 581 compatible = "qcom,pm8550ve-rpmh-regulators"; 582 583 vdd-l1-supply = <&vreg_s7i_1p2>; 584 vdd-l2-supply = <&vreg_s7i_1p2>; 585 vdd-l3-supply = <&vreg_s1d_0p97>; 586 vdd-s7-supply = <&vph_pwr>; 587 vdd-s8-supply = <&vph_pwr>; 588 589 qcom,pmic-id = "i"; 590 591 vreg_s7i_1p2: smps7 { 592 regulator-name = "vreg_s7i_1p2"; 593 regulator-min-microvolt = <1224000>; 594 regulator-max-microvolt = <1340000>; 595 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 596 }; 597 598 vreg_s8i_0p9: smps8 { 599 regulator-name = "vreg_s8i_0p9"; 600 regulator-min-microvolt = <900000>; 601 regulator-max-microvolt = <972000>; 602 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 603 }; 604 605 vreg_l1i_1p2: ldo1 { 606 regulator-name = "vreg_l1i_1p2"; 607 regulator-min-microvolt = <1200000>; 608 regulator-max-microvolt = <1200000>; 609 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 610 regulator-allow-set-load; 611 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 612 RPMH_REGULATOR_MODE_HPM>; 613 }; 614 615 vreg_l2i_1p2: ldo2 { 616 regulator-name = "vreg_l2i_1p2"; 617 regulator-min-microvolt = <1200000>; 618 regulator-max-microvolt = <1200000>; 619 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 620 regulator-allow-set-load; 621 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 622 RPMH_REGULATOR_MODE_HPM>; 623 }; 624 625 vreg_l3i_0p88: ldo3 { 626 regulator-name = "vreg_l3i_0p88"; 627 regulator-min-microvolt = <880000>; 628 regulator-max-microvolt = <912000>; 629 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 630 regulator-allow-set-load; 631 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 632 RPMH_REGULATOR_MODE_HPM>; 633 }; 634 }; 635 636 regulators-5 { 637 compatible = "qcom,pm8550vs-rpmh-regulators"; 638 639 vdd-l1-supply = <&vreg_s1d_0p97>; 640 vdd-l2-supply = <&vreg_s7i_1p2>; 641 vdd-s2-supply = <&vph_pwr>; 642 vdd-s3-supply = <&vph_pwr>; 643 vdd-s4-supply = <&vph_pwr>; 644 645 qcom,pmic-id = "j"; 646 647 vreg_s2j_1p1: smps2 { 648 regulator-name = "vreg_s2j_1p1"; 649 regulator-min-microvolt = <1000000>; 650 regulator-max-microvolt = <1100000>; 651 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 652 }; 653 654 vreg_s3j_1p1: smps3 { 655 regulator-name = "vreg_s3j_1p1"; 656 regulator-min-microvolt = <1000000>; 657 regulator-max-microvolt = <1100000>; 658 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 659 }; 660 661 vreg_l1j_0p91: ldo1 { 662 regulator-name = "vreg_l1j_0p91"; 663 regulator-min-microvolt = <880000>; 664 regulator-max-microvolt = <920000>; 665 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 666 regulator-allow-set-load; 667 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 668 RPMH_REGULATOR_MODE_HPM>; 669 }; 670 671 vreg_l2j_1p2: ldo2 { 672 regulator-name = "vreg_l2j_1p2"; 673 regulator-min-microvolt = <1200000>; 674 regulator-max-microvolt = <1200000>; 675 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 676 regulator-allow-set-load; 677 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 678 RPMH_REGULATOR_MODE_HPM>; 679 }; 680 }; 681 682 regulators-6 { 683 compatible = "qcom,pm8010-rpmh-regulators"; 684 qcom,pmic-id = "m"; 685 686 vdd-l1-l2-supply = <&vreg_s7i_1p2>; 687 vdd-l3-l4-supply = <&vreg_bob2>; 688 vdd-l5-supply = <&vreg_s3g_1p8>; 689 vdd-l6-supply = <&vreg_bob1>; 690 vdd-l7-supply = <&vreg_bob1>; 691 692 vreg_l1m_1p1: ldo1 { 693 regulator-name = "vreg_l1m_1p1"; 694 regulator-min-microvolt = <1104000>; 695 regulator-max-microvolt = <1104000>; 696 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 697 regulator-allow-set-load; 698 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 699 RPMH_REGULATOR_MODE_HPM>; 700 }; 701 702 vreg_l2m_1p056: ldo2 { 703 regulator-name = "vreg_l2m_1p056"; 704 regulator-min-microvolt = <1056000>; 705 regulator-max-microvolt = <1056000>; 706 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 707 regulator-allow-set-load; 708 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 709 RPMH_REGULATOR_MODE_HPM>; 710 }; 711 712 vreg_l3m_2p8: ldo3 { 713 regulator-name = "vreg_l3m_2p8"; 714 regulator-min-microvolt = <2800000>; 715 regulator-max-microvolt = <2800000>; 716 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 717 }; 718 719 vreg_l4m_2p8: ldo4 { 720 regulator-name = "vreg_l4m_2p8"; 721 regulator-min-microvolt = <2800000>; 722 regulator-max-microvolt = <2800000>; 723 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 724 }; 725 726 vreg_l5m_1p8: ldo5 { 727 regulator-name = "vreg_l5m_1p8"; 728 regulator-min-microvolt = <1800000>; 729 regulator-max-microvolt = <1800000>; 730 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 731 }; 732 733 vreg_l6m_2p8: ldo6 { 734 regulator-name = "vreg_l6m_2p8"; 735 regulator-min-microvolt = <2800000>; 736 regulator-max-microvolt = <2800000>; 737 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 738 }; 739 740 vreg_l7m_2p96: ldo7 { 741 regulator-name = "vreg_l7m_2p96"; 742 regulator-min-microvolt = <2960000>; 743 regulator-max-microvolt = <2960000>; 744 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 745 }; 746 }; 747 748 regulators-7 { 749 compatible = "qcom,pm8010-rpmh-regulators"; 750 qcom,pmic-id = "n"; 751 752 vdd-l1-l2-supply = <&vreg_s7i_1p2>; 753 vdd-l3-l4-supply = <&vreg_s3g_1p8>; 754 vdd-l5-supply = <&vreg_bob2>; 755 vdd-l6-supply = <&vreg_bob2>; 756 vdd-l7-supply = <&vreg_bob1>; 757 758 vreg_l1n_1p1: ldo1 { 759 regulator-name = "vreg_l1n_1p1"; 760 regulator-min-microvolt = <1104000>; 761 regulator-max-microvolt = <1104000>; 762 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 763 regulator-allow-set-load; 764 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 765 RPMH_REGULATOR_MODE_HPM>; 766 }; 767 768 vreg_l2n_1p1: ldo2 { 769 regulator-name = "vreg_l2n_1p1"; 770 regulator-min-microvolt = <1104000>; 771 regulator-max-microvolt = <1104000>; 772 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 773 regulator-allow-set-load; 774 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 775 RPMH_REGULATOR_MODE_HPM>; 776 }; 777 778 vreg_l3n_1p8: ldo3 { 779 regulator-name = "vreg_l3n_1p8"; 780 regulator-min-microvolt = <1800000>; 781 regulator-max-microvolt = <1800000>; 782 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 783 }; 784 785 vreg_l4n_1p8: ldo4 { 786 regulator-name = "vreg_l4n_1p8"; 787 regulator-min-microvolt = <1800000>; 788 regulator-max-microvolt = <1800000>; 789 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 790 }; 791 792 vreg_l5n_2p8: ldo5 { 793 regulator-name = "vreg_l5n_2p8"; 794 regulator-min-microvolt = <2800000>; 795 regulator-max-microvolt = <2800000>; 796 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 797 }; 798 799 vreg_l6n_2p8: ldo6 { 800 regulator-name = "vreg_l6n_2p8"; 801 regulator-min-microvolt = <2800000>; 802 regulator-max-microvolt = <2800000>; 803 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 804 }; 805 806 vreg_l7n_3p3: ldo7 { 807 regulator-name = "vreg_l7n_3p3"; 808 regulator-min-microvolt = <3304000>; 809 regulator-max-microvolt = <3304000>; 810 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 811 }; 812 }; 813}; 814 815&lpass_vamacro { 816 pinctrl-0 = <&dmic01_default>, <&dmic23_default>; 817 pinctrl-names = "default"; 818 819 vdd-micb-supply = <&vreg_l1b_1p8>; 820 qcom,dmic-sample-rate = <4800000>; 821}; 822 823&pm8550_flash { 824 status = "okay"; 825 826 led-0 { 827 function = LED_FUNCTION_FLASH; 828 color = <LED_COLOR_ID_YELLOW>; 829 led-sources = <1>, <4>; 830 led-max-microamp = <500000>; 831 flash-max-microamp = <2000000>; 832 flash-max-timeout-us = <1280000>; 833 function-enumerator = <0>; 834 }; 835 836 led-1 { 837 function = LED_FUNCTION_FLASH; 838 color = <LED_COLOR_ID_WHITE>; 839 led-sources = <2>, <3>; 840 led-max-microamp = <500000>; 841 flash-max-microamp = <2000000>; 842 flash-max-timeout-us = <1280000>; 843 function-enumerator = <1>; 844 }; 845}; 846 847&pm8550_gpios { 848 volume_up_n: volume-up-n-state { 849 pins = "gpio6"; 850 function = "normal"; 851 bias-pull-up; 852 input-enable; 853 power-source = <1>; 854 }; 855}; 856 857&pm8550_pwm { 858 status = "okay"; 859 860 multi-led { 861 color = <LED_COLOR_ID_RGB>; 862 function = LED_FUNCTION_STATUS; 863 864 #address-cells = <1>; 865 #size-cells = <0>; 866 867 led@1 { 868 reg = <1>; 869 color = <LED_COLOR_ID_RED>; 870 }; 871 872 led@2 { 873 reg = <2>; 874 color = <LED_COLOR_ID_GREEN>; 875 }; 876 877 led@3 { 878 reg = <3>; 879 color = <LED_COLOR_ID_BLUE>; 880 }; 881 }; 882}; 883 884&pon_pwrkey { 885 status = "okay"; 886}; 887 888&pon_resin { 889 linux,code = <KEY_VOLUMEDOWN>; 890 891 status = "okay"; 892}; 893 894&pmih0108_eusb2_repeater { 895 status = "okay"; 896 897 vdd18-supply = <&vreg_l15b_1p8>; 898 vdd3-supply = <&vreg_l5b_3p1>; 899}; 900 901&qupv3_1 { 902 status = "okay"; 903}; 904 905&remoteproc_adsp { 906 firmware-name = "qcom/sm8750/adsp.mbn", 907 "qcom/sm8750/adsp_dtb.mbn"; 908 909 status = "okay"; 910}; 911 912&remoteproc_cdsp { 913 firmware-name = "qcom/sm8750/cdsp.mbn", 914 "qcom/sm8750/cdsp_dtb.mbn"; 915 916 status = "okay"; 917}; 918 919&remoteproc_mpss { 920 firmware-name = "qcom/sm8750/modem.mbn", 921 "qcom/sm8750/modem_dtb.mbn"; 922 923 /* Modem crashes after some time with "DOG detects stalled initialization" */ 924 status = "fail"; 925}; 926 927&swr0 { 928 status = "okay"; 929 930 /* WSA883x, left/front speaker */ 931 left_spkr: speaker@0,1 { 932 compatible = "sdw10217020200"; 933 reg = <0 1>; 934 pinctrl-0 = <&spkr_0_sd_n_active>; 935 pinctrl-names = "default"; 936 powerdown-gpios = <&lpass_tlmm 17 GPIO_ACTIVE_LOW>; 937 #sound-dai-cells = <0>; 938 sound-name-prefix = "SpkrLeft"; 939 #thermal-sensor-cells = <0>; 940 vdd-supply = <&vreg_l15b_1p8>; 941 }; 942 943 /* WSA883x, right/back speaker */ 944 right_spkr: speaker@0,2 { 945 compatible = "sdw10217020200"; 946 reg = <0 2>; 947 pinctrl-0 = <&spkr_1_sd_n_active>; 948 pinctrl-names = "default"; 949 powerdown-gpios = <&lpass_tlmm 18 GPIO_ACTIVE_LOW>; 950 #sound-dai-cells = <0>; 951 sound-name-prefix = "SpkrRight"; 952 #thermal-sensor-cells = <0>; 953 vdd-supply = <&vreg_l15b_1p8>; 954 }; 955}; 956 957&swr1 { 958 status = "okay"; 959 960 /* WCD9395 RX */ 961 wcd_rx: codec@0,4 { 962 compatible = "sdw20217010e00"; 963 reg = <0 4>; 964 965 /* 966 * WCD9395 RX Port 1 (HPH_L/R) <=> SWR1 Port 1 (HPH_L/R) 967 * WCD9395 RX Port 2 (CLSH) <=> SWR1 Port 2 (CLSH) 968 * WCD9395 RX Port 3 (COMP_L/R) <=> SWR1 Port 3 (COMP_L/R) 969 * WCD9395 RX Port 4 (LO) <=> SWR1 Port 4 (LO) 970 * WCD9395 RX Port 5 (DSD_L/R) <=> SWR1 Port 5 (DSD_L/R) 971 * WCD9395 RX Port 6 (HIFI_PCM_L/R) <=> SWR1 Port 9 (HIFI_PCM_L/R) 972 */ 973 qcom,rx-port-mapping = <1 2 3 4 5 9>; 974 }; 975}; 976 977&swr2 { 978 status = "okay"; 979 980 /* WCD9395 TX */ 981 wcd_tx: codec@0,3 { 982 compatible = "sdw20217010e00"; 983 reg = <0 3>; 984 985 /* 986 * WCD9395 TX Port 1 (ADC1,2,3,4) <=> SWR2 Port 2 (TX SWR_INPUT 0,1,2,3) 987 * WCD9395 TX Port 2 (ADC3,4 & DMIC0,1) <=> SWR2 Port 2 (TX SWR_INPUT 0,1,2,3) 988 * WCD9395 TX Port 3 (DMIC0,1,2,3 & MBHC) <=> SWR2 Port 3 (TX SWR_INPUT 4,5,6,7) 989 * WCD9395 TX Port 4 (DMIC4,5,6,7) <=> SWR2 Port 4 (TX SWR_INPUT 8,9,10,11) 990 */ 991 qcom,tx-port-mapping = <2 2 3 4>; 992 }; 993}; 994 995&tlmm { 996 /* reserved for secure world */ 997 gpio-reserved-ranges = <36 4>, <74 1>; 998}; 999 1000&uart7 { 1001 status = "okay"; 1002}; 1003 1004/* Pinctrl */ 1005&lpass_tlmm { 1006 spkr_0_sd_n_active: spkr-0-sd-n-active-state { 1007 pins = "gpio17"; 1008 function = "gpio"; 1009 drive-strength = <16>; 1010 bias-disable; 1011 output-low; 1012 }; 1013 1014 spkr_1_sd_n_active: spkr-1-sd-n-active-state { 1015 pins = "gpio18"; 1016 function = "gpio"; 1017 drive-strength = <16>; 1018 bias-disable; 1019 output-low; 1020 }; 1021}; 1022 1023&tlmm { 1024 wcd_default: wcd-reset-n-active-state { 1025 pins = "gpio101"; 1026 function = "gpio"; 1027 drive-strength = <16>; 1028 bias-disable; 1029 output-low; 1030 }; 1031}; 1032 1033&ufs_mem_phy { 1034 vdda-phy-supply = <&vreg_l1j_0p91>; 1035 vdda-pll-supply = <&vreg_l3g_1p2>; 1036 1037 status = "okay"; 1038}; 1039 1040&ufs_mem_hc { 1041 reset-gpios = <&tlmm 215 GPIO_ACTIVE_LOW>; 1042 1043 vcc-supply = <&vreg_l17b_2p5>; 1044 vcc-max-microamp = <1300000>; 1045 vccq-supply = <&vreg_l1d_1p2>; 1046 vccq-max-microamp = <1200000>; 1047 1048 status = "okay"; 1049}; 1050