1// SPDX-License-Identifier: BSD-3-Clause 2/* 3 * Copyright (c) 2020, Linaro Ltd. 4 */ 5 6/dts-v1/; 7 8#include <dt-bindings/gpio/gpio.h> 9#include <dt-bindings/regulator/qcom,rpmh-regulator.h> 10#include <dt-bindings/sound/qcom,q6afe.h> 11#include <dt-bindings/sound/qcom,q6asm.h> 12#include "sm8250.dtsi" 13#include "pm8150.dtsi" 14#include "pm8150b.dtsi" 15#include "pm8150l.dtsi" 16 17/ { 18 model = "Qualcomm Technologies, Inc. Robotics RB5"; 19 compatible = "qcom,qrb5165-rb5", "qcom,sm8250"; 20 21 aliases { 22 serial0 = &uart12; 23 sdhc2 = &sdhc_2; 24 }; 25 26 chosen { 27 stdout-path = "serial0:115200n8"; 28 }; 29 30 /* Fixed crystal oscillator dedicated to MCP2518FD */ 31 clk40M: can_clock { 32 compatible = "fixed-clock"; 33 #clock-cells = <0>; 34 clock-frequency = <40000000>; 35 }; 36 37 dc12v: dc12v-regulator { 38 compatible = "regulator-fixed"; 39 regulator-name = "DC12V"; 40 regulator-min-microvolt = <12000000>; 41 regulator-max-microvolt = <12000000>; 42 regulator-always-on; 43 }; 44 45 hdmi-out { 46 compatible = "hdmi-connector"; 47 type = "a"; 48 49 port { 50 hdmi_con: endpoint { 51 remote-endpoint = <<9611_out>; 52 }; 53 }; 54 }; 55 56 leds { 57 compatible = "gpio-leds"; 58 59 user4 { 60 label = "green:user4"; 61 gpios = <&pm8150_gpios 10 GPIO_ACTIVE_HIGH>; 62 linux,default-trigger = "panic-indicator"; 63 default-state = "off"; 64 }; 65 66 wlan { 67 label = "yellow:wlan"; 68 gpios = <&pm8150_gpios 9 GPIO_ACTIVE_HIGH>; 69 linux,default-trigger = "phy0tx"; 70 default-state = "off"; 71 }; 72 73 bt { 74 label = "blue:bt"; 75 gpios = <&pm8150_gpios 7 GPIO_ACTIVE_HIGH>; 76 linux,default-trigger = "bluetooth-power"; 77 default-state = "off"; 78 }; 79 80 }; 81 82 lt9611_1v2: lt9611-vdd12-regulator { 83 compatible = "regulator-fixed"; 84 regulator-name = "LT9611_1V2"; 85 86 vin-supply = <&vdc_3v3>; 87 regulator-min-microvolt = <1200000>; 88 regulator-max-microvolt = <1200000>; 89 }; 90 91 lt9611_3v3: lt9611-3v3 { 92 compatible = "regulator-fixed"; 93 regulator-name = "LT9611_3V3"; 94 95 vin-supply = <&vdc_3v3>; 96 regulator-min-microvolt = <3300000>; 97 regulator-max-microvolt = <3300000>; 98 regulator-boot-on; 99 regulator-always-on; 100 }; 101 102 thermal-zones { 103 conn-thermal { 104 polling-delay-passive = <0>; 105 polling-delay = <0>; 106 thermal-sensors = <&pm8150b_adc_tm 0>; 107 108 trips { 109 active-config0 { 110 temperature = <125000>; 111 hysteresis = <1000>; 112 type = "critical"; 113 }; 114 }; 115 }; 116 117 pm8150l-thermal { 118 polling-delay-passive = <0>; 119 polling-delay = <0>; 120 thermal-sensors = <&pm8150l_adc_tm 1>; 121 122 trips { 123 active-config0 { 124 temperature = <50000>; 125 hysteresis = <4000>; 126 type = "passive"; 127 }; 128 }; 129 }; 130 131 skin-msm-thermal { 132 polling-delay-passive = <0>; 133 polling-delay = <0>; 134 thermal-sensors = <&pm8150l_adc_tm 0>; 135 136 trips { 137 active-config0 { 138 temperature = <50000>; 139 hysteresis = <4000>; 140 type = "passive"; 141 }; 142 }; 143 }; 144 145 wifi-thermal { 146 polling-delay-passive = <0>; 147 polling-delay = <0>; 148 thermal-sensors = <&pm8150_adc_tm 1>; 149 150 trips { 151 active-config0 { 152 temperature = <52000>; 153 hysteresis = <4000>; 154 type = "passive"; 155 }; 156 }; 157 }; 158 159 xo-thermal { 160 polling-delay-passive = <0>; 161 polling-delay = <0>; 162 thermal-sensors = <&pm8150_adc_tm 0>; 163 164 trips { 165 active-config0 { 166 temperature = <50000>; 167 hysteresis = <4000>; 168 type = "passive"; 169 }; 170 }; 171 }; 172 }; 173 174 vbat: vbat-regulator { 175 compatible = "regulator-fixed"; 176 regulator-name = "VBAT"; 177 vin-supply = <&vreg_l11c_3p3>; 178 regulator-min-microvolt = <4200000>; 179 regulator-max-microvolt = <4200000>; 180 regulator-always-on; 181 }; 182 183 vbat_som: vbat-som-regulator { 184 compatible = "regulator-fixed"; 185 regulator-name = "VBAT_SOM"; 186 vin-supply = <&dc12v>; 187 regulator-min-microvolt = <4200000>; 188 regulator-max-microvolt = <4200000>; 189 regulator-always-on; 190 }; 191 192 vdc_3v3: vdc-3v3-regulator { 193 compatible = "regulator-fixed"; 194 regulator-name = "VDC_3V3"; 195 vin-supply = <&vreg_l11c_3p3>; 196 regulator-min-microvolt = <3300000>; 197 regulator-max-microvolt = <3300000>; 198 regulator-always-on; 199 }; 200 201 vdc_5v: vdc-5v-regulator { 202 compatible = "regulator-fixed"; 203 regulator-name = "VDC_5V"; 204 205 regulator-min-microvolt = <5000000>; 206 regulator-max-microvolt = <5000000>; 207 regulator-always-on; 208 vin-supply = <&vreg_l11c_3p3>; 209 }; 210 211 vph_pwr: vph-pwr-regulator { 212 compatible = "regulator-fixed"; 213 regulator-name = "vph_pwr"; 214 regulator-min-microvolt = <3700000>; 215 regulator-max-microvolt = <3700000>; 216 regulator-always-on; 217 }; 218 219 vreg_s4a_1p8: vreg-s4a-1p8 { 220 compatible = "regulator-fixed"; 221 regulator-name = "vreg_s4a_1p8"; 222 regulator-min-microvolt = <1800000>; 223 regulator-max-microvolt = <1800000>; 224 regulator-always-on; 225 }; 226}; 227 228&adsp { 229 status = "okay"; 230 firmware-name = "qcom/sm8250/adsp.mbn"; 231}; 232 233&apps_rsc { 234 pm8009-rpmh-regulators { 235 compatible = "qcom,pm8009-1-rpmh-regulators"; 236 qcom,pmic-id = "f"; 237 238 vdd-s1-supply = <&vph_pwr>; 239 vdd-s2-supply = <&vph_pwr>; 240 vdd-l2-supply = <&vreg_s8c_1p3>; 241 vdd-l5-l6-supply = <&vreg_bob>; 242 vdd-l7-supply = <&vreg_s4a_1p8>; 243 244 vreg_s2f_0p95: smps2 { 245 regulator-name = "vreg_s2f_0p95"; 246 regulator-min-microvolt = <900000>; 247 regulator-max-microvolt = <952000>; 248 regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>; 249 }; 250 251 vreg_l1f_1p1: ldo1 { 252 regulator-name = "vreg_l1f_1p1"; 253 regulator-min-microvolt = <1104000>; 254 regulator-max-microvolt = <1104000>; 255 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 256 }; 257 258 vreg_l2f_1p2: ldo2 { 259 regulator-name = "vreg_l2f_1p2"; 260 regulator-min-microvolt = <1200000>; 261 regulator-max-microvolt = <1200000>; 262 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 263 }; 264 265 vreg_l6f_2p8: ldo6 { 266 regulator-name = "vreg_l6f_2p8"; 267 regulator-min-microvolt = <2800000>; 268 regulator-max-microvolt = <2800000>; 269 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 270 }; 271 272 vreg_l7f_1p8: ldo7 { 273 regulator-name = "vreg_l7f_1p8"; 274 regulator-min-microvolt = <1800000>; 275 regulator-max-microvolt = <1800000>; 276 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 277 }; 278 }; 279 280 pm8150-rpmh-regulators { 281 compatible = "qcom,pm8150-rpmh-regulators"; 282 qcom,pmic-id = "a"; 283 284 vdd-s1-supply = <&vph_pwr>; 285 vdd-s2-supply = <&vph_pwr>; 286 vdd-s3-supply = <&vph_pwr>; 287 vdd-s4-supply = <&vph_pwr>; 288 vdd-s5-supply = <&vph_pwr>; 289 vdd-s6-supply = <&vph_pwr>; 290 vdd-s7-supply = <&vph_pwr>; 291 vdd-s8-supply = <&vph_pwr>; 292 vdd-s9-supply = <&vph_pwr>; 293 vdd-s10-supply = <&vph_pwr>; 294 vdd-l2-l10-supply = <&vreg_bob>; 295 vdd-l3-l4-l5-l18-supply = <&vreg_s6a_0p95>; 296 vdd-l6-l9-supply = <&vreg_s8c_1p3>; 297 vdd-l7-l12-l14-l15-supply = <&vreg_s5a_1p9>; 298 vdd-l13-l16-l17-supply = <&vreg_bob>; 299 300 vreg_l2a_3p1: ldo2 { 301 regulator-name = "vreg_l2a_3p1"; 302 regulator-min-microvolt = <3072000>; 303 regulator-max-microvolt = <3072000>; 304 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 305 }; 306 307 vreg_l3a_0p9: ldo3 { 308 regulator-name = "vreg_l3a_0p9"; 309 regulator-min-microvolt = <928000>; 310 regulator-max-microvolt = <932000>; 311 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 312 }; 313 314 vreg_l5a_0p88: ldo5 { 315 regulator-name = "vreg_l5a_0p88"; 316 regulator-min-microvolt = <880000>; 317 regulator-max-microvolt = <880000>; 318 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 319 }; 320 321 vreg_l6a_1p2: ldo6 { 322 regulator-name = "vreg_l6a_1p2"; 323 regulator-min-microvolt = <1200000>; 324 regulator-max-microvolt = <1200000>; 325 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 326 }; 327 328 vreg_l7a_1p7: ldo7 { 329 regulator-name = "vreg_l7a_1p7"; 330 regulator-min-microvolt = <1704000>; 331 regulator-max-microvolt = <1800000>; 332 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 333 }; 334 335 vreg_l9a_1p2: ldo9 { 336 regulator-name = "vreg_l9a_1p2"; 337 regulator-min-microvolt = <1200000>; 338 regulator-max-microvolt = <1200000>; 339 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 340 }; 341 342 vreg_l10a_1p8: ldo10 { 343 regulator-name = "vreg_l10a_1p8"; 344 regulator-min-microvolt = <1800000>; 345 regulator-max-microvolt = <1800000>; 346 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 347 }; 348 349 vreg_l12a_1p8: ldo12 { 350 regulator-name = "vreg_l12a_1p8"; 351 regulator-min-microvolt = <1800000>; 352 regulator-max-microvolt = <1800000>; 353 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 354 }; 355 356 vreg_l13a_ts_3p0: ldo13 { 357 regulator-name = "vreg_l13a_ts_3p0"; 358 regulator-min-microvolt = <3008000>; 359 regulator-max-microvolt = <3008000>; 360 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 361 }; 362 363 vreg_l14a_1p8: ldo14 { 364 regulator-name = "vreg_l14a_1p8"; 365 regulator-min-microvolt = <1800000>; 366 regulator-max-microvolt = <1880000>; 367 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 368 }; 369 370 vreg_l15a_1p8: ldo15 { 371 regulator-name = "vreg_l15a_1p8"; 372 regulator-min-microvolt = <1800000>; 373 regulator-max-microvolt = <1800000>; 374 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 375 }; 376 377 vreg_l16a_2p7: ldo16 { 378 regulator-name = "vreg_l16a_2p7"; 379 regulator-min-microvolt = <2704000>; 380 regulator-max-microvolt = <2960000>; 381 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 382 }; 383 384 vreg_l17a_3p0: ldo17 { 385 regulator-name = "vreg_l17a_3p0"; 386 regulator-min-microvolt = <2856000>; 387 regulator-max-microvolt = <3008000>; 388 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 389 }; 390 391 vreg_l18a_0p92: ldo18 { 392 regulator-name = "vreg_l18a_0p92"; 393 regulator-min-microvolt = <800000>; 394 regulator-max-microvolt = <912000>; 395 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 396 }; 397 398 vreg_s5a_1p9: smps5 { 399 regulator-name = "vreg_s5a_1p9"; 400 regulator-min-microvolt = <1904000>; 401 regulator-max-microvolt = <2000000>; 402 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 403 }; 404 405 vreg_s6a_0p95: smps6 { 406 regulator-name = "vreg_s6a_0p95"; 407 regulator-min-microvolt = <920000>; 408 regulator-max-microvolt = <1128000>; 409 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 410 }; 411 }; 412 413 pm8150l-rpmh-regulators { 414 compatible = "qcom,pm8150l-rpmh-regulators"; 415 qcom,pmic-id = "c"; 416 417 vdd-s1-supply = <&vph_pwr>; 418 vdd-s2-supply = <&vph_pwr>; 419 vdd-s3-supply = <&vph_pwr>; 420 vdd-s4-supply = <&vph_pwr>; 421 vdd-s5-supply = <&vph_pwr>; 422 vdd-s6-supply = <&vph_pwr>; 423 vdd-s7-supply = <&vph_pwr>; 424 vdd-s8-supply = <&vph_pwr>; 425 vdd-l1-l8-supply = <&vreg_s4a_1p8>; 426 vdd-l2-l3-supply = <&vreg_s8c_1p3>; 427 vdd-l4-l5-l6-supply = <&vreg_bob>; 428 vdd-l7-l11-supply = <&vreg_bob>; 429 vdd-l9-l10-supply = <&vreg_bob>; 430 vdd-bob-supply = <&vph_pwr>; 431 432 vreg_bob: bob { 433 regulator-name = "vreg_bob"; 434 regulator-min-microvolt = <3008000>; 435 regulator-max-microvolt = <4000000>; 436 regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>; 437 }; 438 439 vreg_l1c_1p8: ldo1 { 440 regulator-name = "vreg_l1c_1p8"; 441 regulator-min-microvolt = <1800000>; 442 regulator-max-microvolt = <1800000>; 443 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 444 }; 445 446 vreg_l2c_1p2: ldo2 { 447 regulator-name = "vreg_l2c_1p2"; 448 regulator-min-microvolt = <1200000>; 449 regulator-max-microvolt = <1200000>; 450 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 451 }; 452 453 vreg_l3c_0p8: ldo3 { 454 regulator-name = "vreg_l3c_0p8"; 455 regulator-min-microvolt = <800000>; 456 regulator-max-microvolt = <800000>; 457 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 458 }; 459 460 vreg_l4c_1p7: ldo4 { 461 regulator-name = "vreg_l4c_1p7"; 462 regulator-min-microvolt = <1704000>; 463 regulator-max-microvolt = <2928000>; 464 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 465 }; 466 467 vreg_l5c_1p8: ldo5 { 468 regulator-name = "vreg_l5c_1p8"; 469 regulator-min-microvolt = <1800000>; 470 regulator-max-microvolt = <2928000>; 471 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 472 }; 473 474 vreg_l6c_2p96: ldo6 { 475 regulator-name = "vreg_l6c_2p96"; 476 regulator-min-microvolt = <1800000>; 477 regulator-max-microvolt = <2960000>; 478 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 479 }; 480 481 vreg_l7c_cam_vcm0_2p85: ldo7 { 482 regulator-name = "vreg_l7c_cam_vcm0_2p85"; 483 regulator-min-microvolt = <2856000>; 484 regulator-max-microvolt = <3104000>; 485 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 486 }; 487 488 vreg_l8c_1p8: ldo8 { 489 regulator-name = "vreg_l8c_1p8"; 490 regulator-min-microvolt = <1800000>; 491 regulator-max-microvolt = <1800000>; 492 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 493 }; 494 495 vreg_l9c_2p96: ldo9 { 496 regulator-name = "vreg_l9c_2p96"; 497 regulator-min-microvolt = <2704000>; 498 regulator-max-microvolt = <2960000>; 499 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 500 }; 501 502 vreg_l10c_3p0: ldo10 { 503 regulator-name = "vreg_l10c_3p0"; 504 regulator-min-microvolt = <3000000>; 505 regulator-max-microvolt = <3000000>; 506 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 507 }; 508 509 vreg_l11c_3p3: ldo11 { 510 regulator-name = "vreg_l11c_3p3"; 511 regulator-min-microvolt = <3296000>; 512 regulator-max-microvolt = <3296000>; 513 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 514 regulator-always-on; 515 }; 516 517 vreg_s8c_1p3: smps8 { 518 regulator-name = "vreg_s8c_1p3"; 519 regulator-min-microvolt = <1352000>; 520 regulator-max-microvolt = <1352000>; 521 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 522 }; 523 }; 524}; 525 526&cdsp { 527 status = "okay"; 528 firmware-name = "qcom/sm8250/cdsp.mbn"; 529}; 530 531&dsi0 { 532 status = "okay"; 533 vdda-supply = <&vreg_l9a_1p2>; 534 535#if 0 536 qcom,dual-dsi-mode; 537 qcom,master-dsi; 538#endif 539 540 ports { 541 port@1 { 542 endpoint { 543 remote-endpoint = <<9611_a>; 544 data-lanes = <0 1 2 3>; 545 }; 546 }; 547 }; 548}; 549 550&dsi0_phy { 551 status = "okay"; 552 vdds-supply = <&vreg_l5a_0p88>; 553}; 554 555&gpu { 556 zap-shader { 557 memory-region = <&gpu_mem>; 558 firmware-name = "qcom/sm8250/a650_zap.mbn"; 559 }; 560}; 561 562/* LS-I2C0 */ 563&i2c4 { 564 status = "okay"; 565}; 566 567&i2c5 { 568 status = "okay"; 569 clock-frequency = <400000>; 570 571 lt9611_codec: hdmi-bridge@2b { 572 compatible = "lontium,lt9611uxc"; 573 reg = <0x2b>; 574 #sound-dai-cells = <1>; 575 576 interrupts-extended = <&tlmm 63 IRQ_TYPE_EDGE_FALLING>; 577 578 reset-gpios = <&pm8150l_gpios 5 GPIO_ACTIVE_HIGH>; 579 580 vdd-supply = <<9611_1v2>; 581 vcc-supply = <<9611_3v3>; 582 583 pinctrl-names = "default"; 584 pinctrl-0 = <<9611_irq_pin <9611_rst_pin>; 585 586 ports { 587 #address-cells = <1>; 588 #size-cells = <0>; 589 590 port@0 { 591 reg = <0>; 592 593 lt9611_a: endpoint { 594 remote-endpoint = <&dsi0_out>; 595 }; 596 }; 597 598#if 0 599 port@1 { 600 reg = <1>; 601 602 lt9611_b: endpoint { 603 remote-endpoint = <&dsi1_out>; 604 }; 605 }; 606#endif 607 608 port@2 { 609 reg = <2>; 610 611 lt9611_out: endpoint { 612 remote-endpoint = <&hdmi_con>; 613 }; 614 }; 615 616 }; 617 }; 618}; 619 620/* LS-I2C1 */ 621&i2c15 { 622 status = "okay"; 623}; 624 625&mdss { 626 status = "okay"; 627}; 628 629&mdss_mdp { 630 status = "okay"; 631}; 632 633&pm8150_adc { 634 xo-therm@4c { 635 reg = <ADC5_XO_THERM_100K_PU>; 636 qcom,ratiometric; 637 qcom,hw-settle-time = <200>; 638 }; 639 640 wifi-therm@4e { 641 reg = <ADC5_AMUX_THM2_100K_PU>; 642 qcom,ratiometric; 643 qcom,hw-settle-time = <200>; 644 }; 645}; 646 647&pm8150_adc_tm { 648 status = "okay"; 649 650 xo-therm@0 { 651 reg = <0>; 652 io-channels = <&pm8150_adc ADC5_XO_THERM_100K_PU>; 653 qcom,ratiometric; 654 qcom,hw-settle-time-us = <200>; 655 }; 656 657 wifi-therm@1 { 658 reg = <1>; 659 io-channels = <&pm8150_adc ADC5_AMUX_THM2_100K_PU>; 660 qcom,ratiometric; 661 qcom,hw-settle-time-us = <200>; 662 }; 663}; 664 665&pcie0 { 666 status = "okay"; 667 perst-gpio = <&tlmm 79 GPIO_ACTIVE_LOW>; 668 wake-gpio = <&tlmm 81 GPIO_ACTIVE_HIGH>; 669 pinctrl-names = "default"; 670 pinctrl-0 = <&pcie0_default_state>; 671}; 672 673&pcie0_phy { 674 status = "okay"; 675 vdda-phy-supply = <&vreg_l5a_0p88>; 676 vdda-pll-supply = <&vreg_l9a_1p2>; 677}; 678 679&pcie1 { 680 status = "okay"; 681 perst-gpio = <&tlmm 82 GPIO_ACTIVE_LOW>; 682 wake-gpio = <&tlmm 84 GPIO_ACTIVE_HIGH>; 683 pinctrl-names = "default"; 684 pinctrl-0 = <&pcie1_default_state>; 685}; 686 687&pcie1_phy { 688 status = "okay"; 689 vdda-phy-supply = <&vreg_l5a_0p88>; 690 vdda-pll-supply = <&vreg_l9a_1p2>; 691}; 692 693&pcie2 { 694 status = "okay"; 695 perst-gpio = <&tlmm 85 GPIO_ACTIVE_LOW>; 696 wake-gpio = <&tlmm 87 GPIO_ACTIVE_HIGH>; 697 pinctrl-names = "default"; 698 pinctrl-0 = <&pcie2_default_state>; 699}; 700 701&pcie2_phy { 702 status = "okay"; 703 vdda-phy-supply = <&vreg_l5a_0p88>; 704 vdda-pll-supply = <&vreg_l9a_1p2>; 705}; 706 707&pm8150_gpios { 708 gpio-reserved-ranges = <1 1>, <3 2>, <7 1>; 709 gpio-line-names = 710 "NC", 711 "OPTION2", 712 "PM_GPIO-F", 713 "PM_SLP_CLK_IN", 714 "OPTION1", 715 "VOL_UP_N", 716 "PM8250_GPIO7", /* Blue LED */ 717 "SP_ARI_PWR_ALARM", 718 "GPIO_9_P", /* Yellow LED */ 719 "GPIO_10_P"; /* Green LED */ 720}; 721 722&pm8150b_adc { 723 conn-therm@4f { 724 reg = <ADC5_AMUX_THM3_100K_PU>; 725 qcom,ratiometric; 726 qcom,hw-settle-time = <200>; 727 }; 728}; 729 730&pm8150b_adc_tm { 731 status = "okay"; 732 733 conn-therm@0 { 734 reg = <0>; 735 io-channels = <&pm8150b_adc ADC5_AMUX_THM3_100K_PU>; 736 qcom,ratiometric; 737 qcom,hw-settle-time-us = <200>; 738 }; 739}; 740 741&pm8150b_gpios { 742 gpio-line-names = 743 "NC", 744 "NC", 745 "NC", 746 "NC", 747 "HAP_BOOST_EN", /* SOM */ 748 "SMB_STAT", /* SOM */ 749 "NC", 750 "NC", 751 "SDM_FORCE_USB_BOOT", 752 "NC", 753 "NC", 754 "NC"; 755}; 756 757&pm8150l_adc { 758 skin-msm-therm@4e { 759 reg = <ADC5_AMUX_THM2_100K_PU>; 760 qcom,ratiometric; 761 qcom,hw-settle-time = <200>; 762 }; 763 764 pm8150l-therm@4f { 765 reg = <ADC5_AMUX_THM3_100K_PU>; 766 qcom,ratiometric; 767 qcom,hw-settle-time = <200>; 768 }; 769}; 770 771&pm8150l_adc_tm { 772 status = "okay"; 773 774 skin-msm-therm@0 { 775 reg = <0>; 776 io-channels = <&pm8150l_adc ADC5_AMUX_THM2_100K_PU>; 777 qcom,ratiometric; 778 qcom,hw-settle-time-us = <200>; 779 }; 780 781 pm8150l-therm@1 { 782 reg = <1>; 783 io-channels = <&pm8150l_adc ADC5_AMUX_THM3_100K_PU>; 784 qcom,ratiometric; 785 qcom,hw-settle-time-us = <200>; 786 }; 787}; 788 789&pm8150l_gpios { 790 gpio-line-names = 791 "NC", 792 "PM3003A_EN", 793 "NC", 794 "NC", 795 "PM_GPIO5", /* HDMI RST_N */ 796 "PM_GPIO-A", /* PWM */ 797 "PM_GPIO7", 798 "NC", 799 "NC", 800 "PM_GPIO-B", 801 "NC", 802 "PM3003A_MODE"; 803 804 lt9611_rst_pin: lt9611-rst-pin { 805 pins = "gpio5"; 806 function = "normal"; 807 808 output-high; 809 input-disable; 810 power-source = <0>; 811 }; 812}; 813 814&qupv3_id_0 { 815 status = "okay"; 816}; 817 818&qupv3_id_1 { 819 status = "okay"; 820}; 821 822&qupv3_id_2 { 823 status = "okay"; 824}; 825 826&q6afedai { 827 qi2s@16 { 828 reg = <16>; 829 qcom,sd-lines = <0 1 2 3>; 830 }; 831}; 832 833/* TERT I2S Uses 1 I2S SD Lines for audio on LT9611 HDMI Bridge */ 834&q6afedai { 835 qi2s@20 { 836 reg = <20>; 837 qcom,sd-lines = <0>; 838 }; 839}; 840 841&q6asmdai { 842 dai@0 { 843 reg = <0>; 844 }; 845 846 dai@1 { 847 reg = <1>; 848 }; 849 850 dai@2 { 851 reg = <2>; 852 }; 853}; 854 855&sdhc_2 { 856 status = "okay"; 857 pinctrl-names = "default"; 858 pinctrl-0 = <&sdc2_default_state &sdc2_card_det_n>; 859 vmmc-supply = <&vreg_l9c_2p96>; 860 vqmmc-supply = <&vreg_l6c_2p96>; 861 cd-gpios = <&tlmm 77 GPIO_ACTIVE_LOW>; 862 bus-width = <4>; 863 no-sdio; 864 no-emmc; 865}; 866 867&sound { 868 compatible = "qcom,qrb5165-rb5-sndcard"; 869 pinctrl-0 = <&tert_mi2s_active>; 870 pinctrl-names = "default"; 871 model = "Qualcomm-RB5-WSA8815-Speakers-DMIC0"; 872 audio-routing = 873 "SpkrLeft IN", "WSA_SPK1 OUT", 874 "SpkrRight IN", "WSA_SPK2 OUT", 875 "VA DMIC0", "vdd-micb", 876 "VA DMIC1", "vdd-micb", 877 "MM_DL1", "MultiMedia1 Playback", 878 "MM_DL2", "MultiMedia2 Playback", 879 "MultiMedia3 Capture", "MM_UL3"; 880 881 mm1-dai-link { 882 link-name = "MultiMedia1"; 883 cpu { 884 sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA1>; 885 }; 886 }; 887 888 mm2-dai-link { 889 link-name = "MultiMedia2"; 890 cpu { 891 sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA2>; 892 }; 893 }; 894 895 mm3-dai-link { 896 link-name = "MultiMedia3"; 897 cpu { 898 sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA3>; 899 }; 900 }; 901 902 hdmi-dai-link { 903 link-name = "HDMI Playback"; 904 cpu { 905 sound-dai = <&q6afedai TERTIARY_MI2S_RX>; 906 }; 907 908 platform { 909 sound-dai = <&q6routing>; 910 }; 911 912 codec { 913 sound-dai = <<9611_codec 0>; 914 }; 915 }; 916 917 dma-dai-link { 918 link-name = "WSA Playback"; 919 cpu { 920 sound-dai = <&q6afedai WSA_CODEC_DMA_RX_0>; 921 }; 922 923 platform { 924 sound-dai = <&q6routing>; 925 }; 926 927 codec { 928 sound-dai = <&left_spkr>, <&right_spkr>, <&swr0 0>, <&wsamacro 0>; 929 }; 930 }; 931 932 va-dai-link { 933 link-name = "VA Capture"; 934 cpu { 935 sound-dai = <&q6afedai VA_CODEC_DMA_TX_0>; 936 }; 937 938 platform { 939 sound-dai = <&q6routing>; 940 }; 941 942 codec { 943 sound-dai = <&vamacro 0>; 944 }; 945 }; 946}; 947 948/* CAN */ 949&spi0 { 950 status = "okay"; 951 pinctrl-names = "default"; 952 pinctrl-0 = <&qup_spi0_data_clk>, <&qup_spi0_cs_gpio>; 953 cs-gpios = <&tlmm 31 GPIO_ACTIVE_LOW>; 954 955 can@0 { 956 compatible = "microchip,mcp2518fd"; 957 reg = <0>; 958 clocks = <&clk40M>; 959 interrupts-extended = <&tlmm 15 IRQ_TYPE_LEVEL_LOW>; 960 spi-max-frequency = <10000000>; 961 vdd-supply = <&vdc_5v>; 962 xceiver-supply = <&vdc_5v>; 963 }; 964}; 965 966&swr0 { 967 left_spkr: wsa8810-left{ 968 compatible = "sdw10217211000"; 969 reg = <0 3>; 970 powerdown-gpios = <&tlmm 130 GPIO_ACTIVE_HIGH>; 971 #thermal-sensor-cells = <0>; 972 sound-name-prefix = "SpkrLeft"; 973 #sound-dai-cells = <0>; 974 }; 975 976 right_spkr: wsa8810-right{ 977 compatible = "sdw10217211000"; 978 reg = <0 4>; 979 powerdown-gpios = <&tlmm 130 GPIO_ACTIVE_HIGH>; 980 #thermal-sensor-cells = <0>; 981 sound-name-prefix = "SpkrRight"; 982 #sound-dai-cells = <0>; 983 }; 984}; 985 986&tlmm { 987 gpio-reserved-ranges = <40 4>; 988 gpio-line-names = 989 "GPIO-MM", 990 "GPIO-NN", 991 "GPIO-OO", 992 "GPIO-PP", 993 "GPIO-A", 994 "GPIO-C", 995 "GPIO-E", 996 "GPIO-D", 997 "I2C0-SDA", 998 "I2C0-SCL", 999 "GPIO-TT", /* GPIO_10 */ 1000 "NC", 1001 "GPIO_12_I2C_SDA", 1002 "GPIO_13_I2C_SCL", 1003 "GPIO-X", 1004 "GPIO_15_RGMII_INT", 1005 "HST_BT_UART_CTS", 1006 "HST_BT_UART_RFR", 1007 "HST_BT_UART_TX", 1008 "HST_BT_UART_RX", 1009 "HST_WLAN_EN", /* GPIO_20 */ 1010 "HST_BT_EN", 1011 "GPIO-AAA", 1012 "GPIO-BBB", 1013 "GPIO-CCC", 1014 "GPIO-Z", 1015 "GPIO-DDD", 1016 "GPIO-BB", 1017 "GPIO_28_CAN_SPI_MISO", 1018 "GPIO_29_CAN_SPI_MOSI", 1019 "GPIO_30_CAN_SPI_CLK", /* GPIO_30 */ 1020 "GPIO_31_CAN_SPI_CS", 1021 "GPIO-UU", 1022 "NC", 1023 "UART1_TXD_SOM", 1024 "UART1_RXD_SOM", 1025 "UART0_CTS", 1026 "UART0_RTS", 1027 "UART0_TXD", 1028 "UART0_RXD", 1029 "SPI1_MISO", /* GPIO_40 */ 1030 "SPI1_MOSI", 1031 "SPI1_CLK", 1032 "SPI1_CS", 1033 "I2C1_SDA", 1034 "I2C1_SCL", 1035 "GPIO-F", 1036 "GPIO-JJ", 1037 "Board_ID1", 1038 "Board_ID2", 1039 "NC", /* GPIO_50 */ 1040 "NC", 1041 "SPI0_MISO", 1042 "SPI0_MOSI", 1043 "SPI0_SCLK", 1044 "SPI0_CS", 1045 "GPIO-QQ", 1046 "GPIO-RR", 1047 "USB2LAN_RESET", 1048 "USB2LAN_EXTWAKE", 1049 "NC", /* GPIO_60 */ 1050 "NC", 1051 "NC", 1052 "LT9611_INT", 1053 "GPIO-AA", 1054 "USB_CC_DIR", 1055 "GPIO-G", 1056 "GPIO-LL", 1057 "USB_DP_HPD_1P8", 1058 "NC", 1059 "NC", /* GPIO_70 */ 1060 "SD_CMD", 1061 "SD_DAT3", 1062 "SD_SCLK", 1063 "SD_DAT2", 1064 "SD_DAT1", 1065 "SD_DAT0", /* BOOT_CFG3 */ 1066 "SD_UFS_CARD_DET_N", 1067 "GPIO-II", 1068 "PCIE0_RST_N", 1069 "PCIE0_CLK_REQ_N", /* GPIO_80 */ 1070 "PCIE0_WAKE_N", 1071 "GPIO-CC", 1072 "GPIO-DD", 1073 "GPIO-EE", 1074 "GPIO-FF", 1075 "GPIO-GG", 1076 "GPIO-HH", 1077 "GPIO-VV", 1078 "GPIO-WW", 1079 "NC", /* GPIO_90 */ 1080 "NC", 1081 "GPIO-K", 1082 "GPIO-I", 1083 "CSI0_MCLK", 1084 "CSI1_MCLK", 1085 "CSI2_MCLK", 1086 "CSI3_MCLK", 1087 "GPIO-AA", /* CSI4_MCLK */ 1088 "GPIO-BB", /* CSI5_MCLK */ 1089 "GPIO-KK", /* GPIO_100 */ 1090 "CCI_I2C_SDA0", 1091 "CCI_I2C_SCL0", 1092 "CCI_I2C_SDA1", 1093 "CCI_I2C_SCL1", 1094 "CCI_I2C_SDA2", 1095 "CCI_I2C_SCL2", 1096 "CCI_I2C_SDA3", 1097 "CCI_I2C_SCL3", 1098 "GPIO-L", 1099 "NC", /* GPIO_110 */ 1100 "NC", 1101 "ACCEL_INT", 1102 "GYRO_INT", 1103 "GPIO-J", 1104 "GPIO-YY", 1105 "GPIO-H", 1106 "GPIO-ZZ", 1107 "NC", 1108 "NC", 1109 "NC", /* GPIO_120 */ 1110 "NC", 1111 "MAG_INT", 1112 "MAG_DRDY_INT", 1113 "HST_SW_CTRL", 1114 "GPIO-M", 1115 "GPIO-N", 1116 "GPIO-O", 1117 "GPIO-P", 1118 "PS_INT", 1119 "WSA1_EN", /* GPIO_130 */ 1120 "USB_HUB_RESET", 1121 "SDM_FORCE_USB_BOOT", 1122 "I2S1_CLK_HDMI", 1123 "I2S1_DATA0_HDMI", 1124 "I2S1_WS_HDMI", 1125 "GPIO-B", 1126 "GPIO_137", /* To LT9611_I2S_MCLK_3V3 */ 1127 "PCM_CLK", 1128 "PCM_DI", 1129 "PCM_DO", /* GPIO_140 */ 1130 "PCM_FS", 1131 "HST_SLIM_CLK", 1132 "HST_SLIM_DATA", 1133 "GPIO-U", 1134 "GPIO-Y", 1135 "GPIO-R", 1136 "GPIO-Q", 1137 "GPIO-S", 1138 "GPIO-T", 1139 "GPIO-V", /* GPIO_150 */ 1140 "GPIO-W", 1141 "DMIC_CLK1", 1142 "DMIC_DATA1", 1143 "DMIC_CLK2", 1144 "DMIC_DATA2", 1145 "WSA_SWR_CLK", 1146 "WSA_SWR_DATA", 1147 "DMIC_CLK3", 1148 "DMIC_DATA3", 1149 "I2C4_SDA", /* GPIO_160 */ 1150 "I2C4_SCL", 1151 "SPI3_CS1", 1152 "SPI3_CS2", 1153 "SPI2_MISO_LS3", 1154 "SPI2_MOSI_LS3", 1155 "SPI2_CLK_LS3", 1156 "SPI2_ACCEL_CS_LS3", 1157 "SPI2_CS1", 1158 "NC", 1159 "GPIO-SS", /* GPIO_170 */ 1160 "GPIO-XX", 1161 "SPI3_MISO", 1162 "SPI3_MOSI", 1163 "SPI3_CLK", 1164 "SPI3_CS", 1165 "HST_BLE_SNS_UART_TX", 1166 "HST_BLE_SNS_UART_RX", 1167 "HST_WLAN_UART_TX", 1168 "HST_WLAN_UART_RX"; 1169 1170 lt9611_irq_pin: lt9611-irq { 1171 pins = "gpio63"; 1172 function = "gpio"; 1173 bias-disable; 1174 }; 1175 1176 pcie0_default_state: pcie0-default { 1177 clkreq { 1178 pins = "gpio80"; 1179 function = "pci_e0"; 1180 bias-pull-up; 1181 }; 1182 1183 reset-n { 1184 pins = "gpio79"; 1185 function = "gpio"; 1186 1187 drive-strength = <2>; 1188 output-low; 1189 bias-pull-down; 1190 }; 1191 1192 wake-n { 1193 pins = "gpio81"; 1194 function = "gpio"; 1195 1196 drive-strength = <2>; 1197 bias-pull-up; 1198 }; 1199 }; 1200 1201 pcie1_default_state: pcie1-default { 1202 clkreq { 1203 pins = "gpio83"; 1204 function = "pci_e1"; 1205 bias-pull-up; 1206 }; 1207 1208 reset-n { 1209 pins = "gpio82"; 1210 function = "gpio"; 1211 1212 drive-strength = <2>; 1213 output-low; 1214 bias-pull-down; 1215 }; 1216 1217 wake-n { 1218 pins = "gpio84"; 1219 function = "gpio"; 1220 1221 drive-strength = <2>; 1222 bias-pull-up; 1223 }; 1224 }; 1225 1226 pcie2_default_state: pcie2-default { 1227 clkreq { 1228 pins = "gpio86"; 1229 function = "pci_e2"; 1230 bias-pull-up; 1231 }; 1232 1233 reset-n { 1234 pins = "gpio85"; 1235 function = "gpio"; 1236 1237 drive-strength = <2>; 1238 output-low; 1239 bias-pull-down; 1240 }; 1241 1242 wake-n { 1243 pins = "gpio87"; 1244 function = "gpio"; 1245 1246 drive-strength = <2>; 1247 bias-pull-up; 1248 }; 1249 }; 1250 1251 sdc2_default_state: sdc2-default { 1252 clk { 1253 pins = "sdc2_clk"; 1254 bias-disable; 1255 drive-strength = <16>; 1256 }; 1257 1258 cmd { 1259 pins = "sdc2_cmd"; 1260 bias-pull-up; 1261 drive-strength = <10>; 1262 }; 1263 1264 data { 1265 pins = "sdc2_data"; 1266 bias-pull-up; 1267 drive-strength = <10>; 1268 }; 1269 }; 1270 1271 sdc2_card_det_n: sd-card-det-n { 1272 pins = "gpio77"; 1273 function = "gpio"; 1274 bias-pull-up; 1275 }; 1276}; 1277 1278&uart12 { 1279 status = "okay"; 1280}; 1281 1282&ufs_mem_hc { 1283 status = "okay"; 1284 1285 vcc-supply = <&vreg_l17a_3p0>; 1286 vcc-max-microamp = <800000>; 1287 vccq-supply = <&vreg_l6a_1p2>; 1288 vccq-max-microamp = <800000>; 1289 vccq2-supply = <&vreg_s4a_1p8>; 1290 vccq2-max-microamp = <800000>; 1291}; 1292 1293&ufs_mem_phy { 1294 status = "okay"; 1295 1296 vdda-phy-supply = <&vreg_l5a_0p88>; 1297 vdda-max-microamp = <89900>; 1298 vdda-pll-supply = <&vreg_l9a_1p2>; 1299 vdda-pll-max-microamp = <18800>; 1300}; 1301 1302&usb_1 { 1303 status = "okay"; 1304}; 1305 1306&usb_1_dwc3 { 1307 dr_mode = "peripheral"; 1308}; 1309 1310&usb_1_hsphy { 1311 status = "okay"; 1312 1313 vdda-pll-supply = <&vreg_l5a_0p88>; 1314 vdda33-supply = <&vreg_l2a_3p1>; 1315 vdda18-supply = <&vreg_l12a_1p8>; 1316}; 1317 1318&usb_1_qmpphy { 1319 status = "okay"; 1320 1321 vdda-phy-supply = <&vreg_l9a_1p2>; 1322 vdda-pll-supply = <&vreg_l18a_0p92>; 1323}; 1324 1325&usb_2 { 1326 status = "okay"; 1327}; 1328 1329&usb_2_dwc3 { 1330 dr_mode = "host"; 1331}; 1332 1333&usb_2_hsphy { 1334 status = "okay"; 1335 1336 vdda-pll-supply = <&vreg_l5a_0p88>; 1337 vdda33-supply = <&vreg_l2a_3p1>; 1338 vdda18-supply = <&vreg_l12a_1p8>; 1339}; 1340 1341&usb_2_qmpphy { 1342 status = "okay"; 1343 1344 vdda-phy-supply = <&vreg_l9a_1p2>; 1345 vdda-pll-supply = <&vreg_l18a_0p92>; 1346}; 1347 1348&vamacro { 1349 pinctrl-0 = <&dmic01_active>; 1350 pinctrl-names = "default"; 1351 vdd-micb-supply = <&vreg_s4a_1p8>; 1352 qcom,dmic-sample-rate = <600000>; 1353}; 1354 1355/* PINCTRL - additions to nodes defined in sm8250.dtsi */ 1356&qup_spi0_cs_gpio { 1357 drive-strength = <6>; 1358 bias-disable; 1359}; 1360 1361&qup_spi0_data_clk { 1362 drive-strength = <6>; 1363 bias-disable; 1364}; 1365