1// SPDX-License-Identifier: BSD-3-Clause 2/* 3 * Copyright (c) 2022, Linaro Limited 4 */ 5 6/dts-v1/; 7 8#include <dt-bindings/regulator/qcom,rpmh-regulator.h> 9#include "sm8550.dtsi" 10#include "pm8010.dtsi" 11#include "pm8550.dtsi" 12#include "pm8550b.dtsi" 13#include "pm8550ve.dtsi" 14#include "pm8550vs.dtsi" 15#include "pmk8550.dtsi" 16#include "pmr735d.dtsi" 17 18/ { 19 model = "Qualcomm Technologies, Inc. SM8550 MTP"; 20 compatible = "qcom,sm8550-mtp", "qcom,sm8550"; 21 22 aliases { 23 serial0 = &uart7; 24 }; 25 26 chosen { 27 stdout-path = "serial0:115200n8"; 28 }; 29 30 pmic-glink { 31 compatible = "qcom,sm8550-pmic-glink", "qcom,pmic-glink"; 32 #address-cells = <1>; 33 #size-cells = <0>; 34 35 connector@0 { 36 compatible = "usb-c-connector"; 37 reg = <0>; 38 power-role = "dual"; 39 data-role = "dual"; 40 41 ports { 42 #address-cells = <1>; 43 #size-cells = <0>; 44 45 port@0 { 46 reg = <0>; 47 48 pmic_glink_hs_in: endpoint { 49 remote-endpoint = <&usb_1_dwc3_hs>; 50 }; 51 }; 52 53 port@1 { 54 reg = <1>; 55 56 pmic_glink_ss_in: endpoint { 57 remote-endpoint = <&usb_1_dwc3_ss>; 58 }; 59 }; 60 }; 61 }; 62 }; 63 64 vph_pwr: vph-pwr-regulator { 65 compatible = "regulator-fixed"; 66 regulator-name = "vph_pwr"; 67 regulator-min-microvolt = <3700000>; 68 regulator-max-microvolt = <3700000>; 69 70 regulator-always-on; 71 regulator-boot-on; 72 }; 73}; 74 75&apps_rsc { 76 regulators-0 { 77 compatible = "qcom,pm8550-rpmh-regulators"; 78 qcom,pmic-id = "b"; 79 80 vdd-bob1-supply = <&vph_pwr>; 81 vdd-bob2-supply = <&vph_pwr>; 82 vdd-l2-l13-l14-supply = <&vreg_bob1>; 83 vdd-l3-supply = <&vreg_s4g_1p3>; 84 vdd-l5-l16-supply = <&vreg_bob1>; 85 vdd-l6-l7-supply = <&vreg_bob1>; 86 vdd-l8-l9-supply = <&vreg_bob1>; 87 vdd-l11-supply = <&vreg_s4g_1p3>; 88 vdd-l12-supply = <&vreg_s6g_1p8>; 89 vdd-l15-supply = <&vreg_s6g_1p8>; 90 vdd-l17-supply = <&vreg_bob2>; 91 92 vreg_bob1: bob1 { 93 regulator-name = "vreg_bob1"; 94 regulator-min-microvolt = <3296000>; 95 regulator-max-microvolt = <3960000>; 96 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 97 }; 98 99 vreg_bob2: bob2 { 100 regulator-name = "vreg_bob2"; 101 regulator-min-microvolt = <2720000>; 102 regulator-max-microvolt = <3960000>; 103 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 104 }; 105 106 vreg_l1b_1p8: ldo1 { 107 regulator-name = "vreg_l1b_1p8"; 108 regulator-min-microvolt = <1800000>; 109 regulator-max-microvolt = <1800000>; 110 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 111 }; 112 113 vreg_l2b_3p0: ldo2 { 114 regulator-name = "vreg_l2b_3p0"; 115 regulator-min-microvolt = <3008000>; 116 regulator-max-microvolt = <3008000>; 117 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 118 }; 119 120 vreg_l5b_3p1: ldo5 { 121 regulator-name = "vreg_l5b_3p1"; 122 regulator-min-microvolt = <3104000>; 123 regulator-max-microvolt = <3104000>; 124 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 125 }; 126 127 vreg_l6b_1p8: ldo6 { 128 regulator-name = "vreg_l6b_1p8"; 129 regulator-min-microvolt = <1800000>; 130 regulator-max-microvolt = <3008000>; 131 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 132 }; 133 134 vreg_l7b_1p8: ldo7 { 135 regulator-name = "vreg_l7b_1p8"; 136 regulator-min-microvolt = <1800000>; 137 regulator-max-microvolt = <3008000>; 138 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 139 }; 140 141 vreg_l8b_1p8: ldo8 { 142 regulator-name = "vreg_l8b_1p8"; 143 regulator-min-microvolt = <1800000>; 144 regulator-max-microvolt = <3008000>; 145 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 146 }; 147 148 vreg_l9b_2p9: ldo9 { 149 regulator-name = "vreg_l9b_2p9"; 150 regulator-min-microvolt = <2960000>; 151 regulator-max-microvolt = <3008000>; 152 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 153 }; 154 155 vreg_l11b_1p2: ldo11 { 156 regulator-name = "vreg_l11b_1p2"; 157 regulator-min-microvolt = <1200000>; 158 regulator-max-microvolt = <1504000>; 159 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 160 }; 161 162 vreg_l12b_1p8: ldo12 { 163 regulator-name = "vreg_l12b_1p8"; 164 regulator-min-microvolt = <1800000>; 165 regulator-max-microvolt = <1800000>; 166 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 167 }; 168 169 vreg_l13b_3p0: ldo13 { 170 regulator-name = "vreg_l13b_3p0"; 171 regulator-min-microvolt = <3000000>; 172 regulator-max-microvolt = <3000000>; 173 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 174 }; 175 176 vreg_l14b_3p2: ldo14 { 177 regulator-name = "vreg_l14b_3p2"; 178 regulator-min-microvolt = <3200000>; 179 regulator-max-microvolt = <3200000>; 180 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 181 }; 182 183 vreg_l15b_1p8: ldo15 { 184 regulator-name = "vreg_l15b_1p8"; 185 regulator-min-microvolt = <1800000>; 186 regulator-max-microvolt = <1800000>; 187 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 188 }; 189 190 vreg_l16b_2p8: ldo16 { 191 regulator-name = "vreg_l16b_2p8"; 192 regulator-min-microvolt = <2800000>; 193 regulator-max-microvolt = <2800000>; 194 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 195 }; 196 197 vreg_l17b_2p5: ldo17 { 198 regulator-name = "vreg_l17b_2p5"; 199 regulator-min-microvolt = <2504000>; 200 regulator-max-microvolt = <2504000>; 201 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 202 }; 203 }; 204 205 regulators-1 { 206 compatible = "qcom,pm8550vs-rpmh-regulators"; 207 qcom,pmic-id = "c"; 208 209 vdd-l3-supply = <&vreg_s4e_0p9>; 210 211 vreg_l3c_0p91: ldo3 { 212 regulator-name = "vreg_l3c_0p9"; 213 regulator-min-microvolt = <880000>; 214 regulator-max-microvolt = <912000>; 215 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 216 }; 217 }; 218 219 regulators-2 { 220 compatible = "qcom,pm8550vs-rpmh-regulators"; 221 qcom,pmic-id = "d"; 222 223 vdd-l1-supply = <&vreg_s4e_0p9>; 224 225 vreg_l1d_0p88: ldo1 { 226 regulator-name = "vreg_l1d_0p88"; 227 regulator-min-microvolt = <880000>; 228 regulator-max-microvolt = <920000>; 229 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 230 }; 231 }; 232 233 regulators-3 { 234 compatible = "qcom,pm8550vs-rpmh-regulators"; 235 qcom,pmic-id = "e"; 236 237 vdd-l1-supply = <&vreg_s4e_0p9>; 238 vdd-l2-supply = <&vreg_s4e_0p9>; 239 vdd-l3-supply = <&vreg_s4g_1p3>; 240 vdd-s4-supply = <&vph_pwr>; 241 vdd-s5-supply = <&vph_pwr>; 242 243 vreg_s4e_0p9: smps4 { 244 regulator-name = "vreg_s4e_0p9"; 245 regulator-min-microvolt = <904000>; 246 regulator-max-microvolt = <984000>; 247 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 248 }; 249 250 vreg_s5e_1p1: smps5 { 251 regulator-name = "vreg_s5e_1p1"; 252 regulator-min-microvolt = <1080000>; 253 regulator-max-microvolt = <1120000>; 254 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 255 }; 256 257 vreg_l1e_0p88: ldo1 { 258 regulator-name = "vreg_l1e_0p88"; 259 regulator-min-microvolt = <880000>; 260 regulator-max-microvolt = <880000>; 261 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 262 }; 263 264 vreg_l2e_0p9: ldo2 { 265 regulator-name = "vreg_l2e_0p9"; 266 regulator-min-microvolt = <904000>; 267 regulator-max-microvolt = <970000>; 268 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 269 }; 270 271 vreg_l3e_1p2: ldo3 { 272 regulator-name = "vreg_l3e_1p2"; 273 regulator-min-microvolt = <1200000>; 274 regulator-max-microvolt = <1200000>; 275 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 276 }; 277 }; 278 279 regulators-4 { 280 compatible = "qcom,pm8550ve-rpmh-regulators"; 281 qcom,pmic-id = "f"; 282 283 vdd-l1-supply = <&vreg_s4e_0p9>; 284 vdd-l2-supply = <&vreg_s4e_0p9>; 285 vdd-l3-supply = <&vreg_s4e_0p9>; 286 vdd-s4-supply = <&vph_pwr>; 287 288 vreg_s4f_0p5: smps4 { 289 regulator-name = "vreg_s4f_0p5"; 290 regulator-min-microvolt = <500000>; 291 regulator-max-microvolt = <700000>; 292 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 293 }; 294 295 vreg_l1f_0p9: ldo1 { 296 regulator-name = "vreg_l1f_0p9"; 297 regulator-min-microvolt = <912000>; 298 regulator-max-microvolt = <912000>; 299 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 300 }; 301 302 vreg_l2f_0p88: ldo2 { 303 regulator-name = "vreg_l2f_0p88"; 304 regulator-min-microvolt = <880000>; 305 regulator-max-microvolt = <912000>; 306 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 307 }; 308 309 vreg_l3f_0p91: ldo3 { 310 regulator-name = "vreg_l3f_0p91"; 311 regulator-min-microvolt = <880000>; 312 regulator-max-microvolt = <912000>; 313 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 314 }; 315 }; 316 317 regulators-5 { 318 compatible = "qcom,pm8550vs-rpmh-regulators"; 319 qcom,pmic-id = "g"; 320 321 vdd-l1-supply = <&vreg_s4g_1p3>; 322 vdd-l2-supply = <&vreg_s4g_1p3>; 323 vdd-l3-supply = <&vreg_s4g_1p3>; 324 vdd-s1-supply = <&vph_pwr>; 325 vdd-s2-supply = <&vph_pwr>; 326 vdd-s3-supply = <&vph_pwr>; 327 vdd-s4-supply = <&vph_pwr>; 328 vdd-s5-supply = <&vph_pwr>; 329 vdd-s6-supply = <&vph_pwr>; 330 331 vreg_s1g_1p2: smps1 { 332 regulator-name = "vreg_s1g_1p2"; 333 regulator-min-microvolt = <1200000>; 334 regulator-max-microvolt = <1300000>; 335 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 336 }; 337 338 vreg_s2g_0p8: smps2 { 339 regulator-name = "vreg_s2g_0p8"; 340 regulator-min-microvolt = <800000>; 341 regulator-max-microvolt = <1000000>; 342 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 343 }; 344 345 vreg_s3g_0p7: smps3 { 346 regulator-name = "vreg_s3g_0p7"; 347 regulator-min-microvolt = <300000>; 348 regulator-max-microvolt = <1004000>; 349 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 350 }; 351 352 vreg_s4g_1p3: smps4 { 353 regulator-name = "vreg_s4g_1p3"; 354 regulator-min-microvolt = <1200000>; 355 regulator-max-microvolt = <1352000>; 356 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 357 }; 358 359 vreg_s5g_0p8: smps5 { 360 regulator-name = "vreg_s5g_0p8"; 361 regulator-min-microvolt = <500000>; 362 regulator-max-microvolt = <1004000>; 363 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 364 }; 365 366 vreg_s6g_1p8: smps6 { 367 regulator-name = "vreg_s6g_1p8"; 368 regulator-min-microvolt = <1800000>; 369 regulator-max-microvolt = <2000000>; 370 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 371 }; 372 373 vreg_l1g_1p2: ldo1 { 374 regulator-name = "vreg_l1g_1p2"; 375 regulator-min-microvolt = <1200000>; 376 regulator-max-microvolt = <1200000>; 377 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 378 }; 379 380 vreg_l2g_1p2: ldo2 { 381 regulator-name = "vreg_l2g_1p2"; 382 regulator-min-microvolt = <1200000>; 383 regulator-max-microvolt = <1200000>; 384 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 385 }; 386 387 vreg_l3g_1p2: ldo3 { 388 regulator-name = "vreg_l3g_1p2"; 389 regulator-min-microvolt = <1200000>; 390 regulator-max-microvolt = <1200000>; 391 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 392 }; 393 }; 394}; 395 396&dispcc { 397 status = "okay"; 398}; 399 400&mdss { 401 status = "okay"; 402}; 403 404&mdss_dsi0 { 405 vdda-supply = <&vreg_l3e_1p2>; 406 status = "okay"; 407 408 panel@0 { 409 compatible = "visionox,vtdr6130"; 410 reg = <0>; 411 412 pinctrl-names = "default", "sleep"; 413 pinctrl-0 = <&sde_dsi_active>, <&sde_te_active>; 414 pinctrl-1 = <&sde_dsi_suspend>, <&sde_te_suspend>; 415 416 vddio-supply = <&vreg_l12b_1p8>; 417 vci-supply = <&vreg_l13b_3p0>; 418 vdd-supply = <&vreg_l11b_1p2>; 419 420 reset-gpios = <&tlmm 133 GPIO_ACTIVE_LOW>; 421 422 port { 423 panel0_in: endpoint { 424 remote-endpoint = <&mdss_dsi0_out>; 425 }; 426 }; 427 }; 428}; 429 430&mdss_dsi0_out { 431 remote-endpoint = <&panel0_in>; 432 data-lanes = <0 1 2 3>; 433}; 434 435&mdss_dsi0_phy { 436 vdds-supply = <&vreg_l1e_0p88>; 437 status = "okay"; 438}; 439 440&mdss_mdp { 441 status = "okay"; 442}; 443 444&pcie_1_phy_aux_clk { 445 clock-frequency = <1000>; 446}; 447 448&pcie0 { 449 wake-gpios = <&tlmm 96 GPIO_ACTIVE_HIGH>; 450 perst-gpios = <&tlmm 94 GPIO_ACTIVE_LOW>; 451 452 pinctrl-names = "default"; 453 pinctrl-0 = <&pcie0_default_state>; 454 455 status = "okay"; 456}; 457 458&pcie0_phy { 459 vdda-phy-supply = <&vreg_l1e_0p88>; 460 vdda-pll-supply = <&vreg_l3e_1p2>; 461 462 status = "okay"; 463}; 464 465&pcie1 { 466 wake-gpios = <&tlmm 99 GPIO_ACTIVE_HIGH>; 467 perst-gpios = <&tlmm 97 GPIO_ACTIVE_LOW>; 468 469 pinctrl-names = "default"; 470 pinctrl-0 = <&pcie1_default_state>; 471 472 status = "okay"; 473}; 474 475&pcie1_phy { 476 vdda-phy-supply = <&vreg_l3c_0p91>; 477 vdda-pll-supply = <&vreg_l3e_1p2>; 478 vdda-qref-supply = <&vreg_l1e_0p88>; 479 480 status = "okay"; 481}; 482 483&pm8550_gpios { 484 sdc2_card_det_n: sdc2-card-det-state { 485 pins = "gpio12"; 486 function = "normal"; 487 input-enable; 488 output-disable; 489 bias-pull-up; 490 power-source = <1>; /* 1.8 V */ 491 }; 492}; 493 494&pm8550b_eusb2_repeater { 495 vdd18-supply = <&vreg_l15b_1p8>; 496 vdd3-supply = <&vreg_l5b_3p1>; 497}; 498 499&qupv3_id_0 { 500 status = "okay"; 501}; 502 503&remoteproc_adsp { 504 firmware-name = "qcom/sm8550/adsp.mbn", 505 "qcom/sm8550/adsp_dtb.mbn"; 506 status = "okay"; 507}; 508 509&remoteproc_cdsp { 510 firmware-name = "qcom/sm8550/cdsp.mbn", 511 "qcom/sm8550/cdsp_dtb.mbn"; 512 status = "okay"; 513}; 514 515&remoteproc_mpss { 516 firmware-name = "qcom/sm8550/modem.mbn", 517 "qcom/sm8550/modem_dtb.mbn"; 518 status = "okay"; 519}; 520 521&sdhc_2 { 522 cd-gpios = <&pm8550_gpios 12 GPIO_ACTIVE_LOW>; 523 pinctrl-names = "default", "sleep"; 524 pinctrl-0 = <&sdc2_default &sdc2_card_det_n>; 525 pinctrl-1 = <&sdc2_sleep &sdc2_card_det_n>; 526 vmmc-supply = <&vreg_l9b_2p9>; 527 vqmmc-supply = <&vreg_l8b_1p8>; 528 bus-width = <4>; 529 no-sdio; 530 no-mmc; 531 status = "okay"; 532}; 533 534&sleep_clk { 535 clock-frequency = <32000>; 536}; 537 538&tlmm { 539 gpio-reserved-ranges = <32 8>; 540 541 sde_dsi_active: sde-dsi-active-state { 542 pins = "gpio133"; 543 function = "gpio"; 544 drive-strength = <8>; 545 bias-disable; 546 }; 547 548 sde_dsi_suspend: sde-dsi-suspend-state { 549 pins = "gpio133"; 550 function = "gpio"; 551 drive-strength = <2>; 552 bias-pull-down; 553 }; 554 555 sde_te_active: sde-te-active-state { 556 pins = "gpio86"; 557 function = "mdp_vsync"; 558 drive-strength = <2>; 559 bias-pull-down; 560 }; 561 562 sde_te_suspend: sde-te-suspend-state { 563 pins = "gpio86"; 564 function = "mdp_vsync"; 565 drive-strength = <2>; 566 bias-pull-down; 567 }; 568}; 569 570&uart7 { 571 status = "okay"; 572}; 573 574&ufs_mem_hc { 575 reset-gpios = <&tlmm 210 GPIO_ACTIVE_LOW>; 576 vcc-supply = <&vreg_l17b_2p5>; 577 vcc-max-microamp = <1300000>; 578 vccq-supply = <&vreg_l1g_1p2>; 579 vccq-max-microamp = <1200000>; 580 vccq2-supply = <&vreg_l3g_1p2>; 581 vccq2-max-microamp = <100>; 582 583 status = "okay"; 584}; 585 586&ufs_mem_phy { 587 vdda-phy-supply = <&vreg_l1d_0p88>; 588 vdda-pll-supply = <&vreg_l3e_1p2>; 589 590 status = "okay"; 591}; 592 593&usb_1 { 594 status = "okay"; 595}; 596 597&usb_1_dwc3 { 598 dr_mode = "otg"; 599 usb-role-switch; 600}; 601 602&usb_1_dwc3_hs { 603 remote-endpoint = <&pmic_glink_hs_in>; 604}; 605 606&usb_1_dwc3_ss { 607 remote-endpoint = <&pmic_glink_ss_in>; 608}; 609 610&usb_1_hsphy { 611 vdd-supply = <&vreg_l1e_0p88>; 612 vdda12-supply = <&vreg_l3e_1p2>; 613 614 phys = <&pm8550b_eusb2_repeater>; 615 616 status = "okay"; 617}; 618 619&usb_dp_qmpphy { 620 vdda-phy-supply = <&vreg_l3e_1p2>; 621 vdda-pll-supply = <&vreg_l3f_0p91>; 622 623 status = "okay"; 624}; 625 626&xo_board { 627 clock-frequency = <76800000>; 628}; 629