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