1// SPDX-License-Identifier: BSD-3-Clause 2/* 3 * Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved. 4 * Copyright (c) 2024, Xilin Wu <wuxilin123@gmail.com> 5 */ 6 7#include <dt-bindings/gpio/gpio.h> 8#include <dt-bindings/input/gpio-keys.h> 9#include <dt-bindings/regulator/qcom,rpmh-regulator.h> 10#include <dt-bindings/pinctrl/qcom,pmic-gpio.h> 11 12#include "hamoa-pmics.dtsi" 13 14/ { 15 chassis-type = "laptop"; 16 17 aliases { 18 serial1 = &uart14; 19 }; 20 21 gpio-keys { 22 compatible = "gpio-keys"; 23 pinctrl-0 = <&hall_int_n_default>; 24 pinctrl-names = "default"; 25 26 switch-lid { 27 gpios = <&tlmm 92 GPIO_ACTIVE_LOW>; 28 linux,input-type = <EV_SW>; 29 linux,code = <SW_LID>; 30 wakeup-source; 31 wakeup-event-action = <EV_ACT_DEASSERTED>; 32 }; 33 }; 34 35 hdmi-bridge { 36 compatible = "parade,ps185hdm"; 37 38 pinctrl-0 = <&hdmi_hpd_default>; 39 pinctrl-names = "default"; 40 41 ports { 42 #address-cells = <1>; 43 #size-cells = <0>; 44 45 port@0 { 46 reg = <0>; 47 48 hdmi_bridge_dp_in: endpoint { 49 remote-endpoint = <&usb_1_ss2_qmpphy_out_dp>; 50 }; 51 }; 52 53 port@1 { 54 reg = <1>; 55 56 hdmi_bridge_tmds_out: endpoint { 57 remote-endpoint = <&hdmi_con>; 58 }; 59 }; 60 }; 61 }; 62 63 hdmi-connector { 64 compatible = "hdmi-connector"; 65 type = "a"; 66 67 port { 68 hdmi_con: endpoint { 69 remote-endpoint = <&hdmi_bridge_tmds_out>; 70 }; 71 }; 72 }; 73 74 pmic-glink { 75 compatible = "qcom,x1e80100-pmic-glink", 76 "qcom,sm8550-pmic-glink", 77 "qcom,pmic-glink"; 78 orientation-gpios = <&tlmm 121 GPIO_ACTIVE_HIGH>, 79 <&tlmm 123 GPIO_ACTIVE_HIGH>; 80 #address-cells = <1>; 81 #size-cells = <0>; 82 83 /* Left-side port, closer to the screen */ 84 connector@0 { 85 compatible = "usb-c-connector"; 86 reg = <0>; 87 power-role = "dual"; 88 data-role = "dual"; 89 90 ports { 91 #address-cells = <1>; 92 #size-cells = <0>; 93 94 port@0 { 95 reg = <0>; 96 97 pmic_glink_ss0_hs_in: endpoint { 98 remote-endpoint = <&usb_1_ss0_dwc3_hs>; 99 }; 100 }; 101 102 port@1 { 103 reg = <1>; 104 105 pmic_glink_ss0_ss_in: endpoint { 106 remote-endpoint = <&retimer_ss0_ss_out>; 107 }; 108 }; 109 110 port@2 { 111 reg = <2>; 112 113 pmic_glink_ss0_con_sbu_in: endpoint { 114 remote-endpoint = <&retimer_ss0_con_sbu_out>; 115 }; 116 }; 117 }; 118 }; 119 120 /* Left-side port, farther from the screen */ 121 connector@1 { 122 compatible = "usb-c-connector"; 123 reg = <1>; 124 power-role = "dual"; 125 data-role = "dual"; 126 127 ports { 128 #address-cells = <1>; 129 #size-cells = <0>; 130 131 port@0 { 132 reg = <0>; 133 134 pmic_glink_ss1_hs_in: endpoint { 135 remote-endpoint = <&usb_1_ss1_dwc3_hs>; 136 }; 137 }; 138 139 port@1 { 140 reg = <1>; 141 142 pmic_glink_ss1_ss_in: endpoint { 143 remote-endpoint = <&retimer_ss1_ss_out>; 144 }; 145 }; 146 147 port@2 { 148 reg = <2>; 149 150 pmic_glink_ss1_con_sbu_in: endpoint { 151 remote-endpoint = <&retimer_ss1_con_sbu_out>; 152 }; 153 }; 154 }; 155 }; 156 }; 157 158 reserved-memory { 159 linux,cma { 160 compatible = "shared-dma-pool"; 161 size = <0x0 0x8000000>; 162 reusable; 163 linux,cma-default; 164 }; 165 }; 166 167 vreg_edp_3p3: regulator-edp-3p3 { 168 compatible = "regulator-fixed"; 169 170 regulator-name = "VREG_EDP_3P3"; 171 regulator-min-microvolt = <3300000>; 172 regulator-max-microvolt = <3300000>; 173 174 gpio = <&tlmm 70 GPIO_ACTIVE_HIGH>; 175 enable-active-high; 176 177 pinctrl-0 = <&edp_reg_en>; 178 pinctrl-names = "default"; 179 180 regulator-always-on; 181 regulator-boot-on; 182 }; 183 184 vreg_nvme: regulator-nvme { 185 compatible = "regulator-fixed"; 186 187 regulator-name = "VREG_NVME_3P3"; 188 regulator-min-microvolt = <3300000>; 189 regulator-max-microvolt = <3300000>; 190 191 gpio = <&tlmm 18 GPIO_ACTIVE_HIGH>; 192 enable-active-high; 193 194 pinctrl-0 = <&nvme_reg_en>; 195 pinctrl-names = "default"; 196 197 regulator-boot-on; 198 }; 199 200 vreg_rtmr0_1p15: regulator-rtmr0-1p15 { 201 compatible = "regulator-fixed"; 202 203 regulator-name = "VREG_RTMR0_1P15"; 204 regulator-min-microvolt = <1150000>; 205 regulator-max-microvolt = <1150000>; 206 207 gpio = <&pmc8380_5_gpios 8 GPIO_ACTIVE_HIGH>; 208 enable-active-high; 209 210 pinctrl-0 = <&usb0_pwr_1p15_reg_en>; 211 pinctrl-names = "default"; 212 213 regulator-boot-on; 214 }; 215 216 vreg_rtmr0_1p8: regulator-rtmr0-1p8 { 217 compatible = "regulator-fixed"; 218 219 regulator-name = "VREG_RTMR0_1P8"; 220 regulator-min-microvolt = <1800000>; 221 regulator-max-microvolt = <1800000>; 222 223 gpio = <&pm8550ve_9_gpios 8 GPIO_ACTIVE_HIGH>; 224 enable-active-high; 225 226 pinctrl-0 = <&usb0_1p8_reg_en>; 227 pinctrl-names = "default"; 228 229 regulator-boot-on; 230 }; 231 232 vreg_rtmr0_3p3: regulator-rtmr0-3p3 { 233 compatible = "regulator-fixed"; 234 235 regulator-name = "VREG_RTMR0_3P3"; 236 regulator-min-microvolt = <3300000>; 237 regulator-max-microvolt = <3300000>; 238 239 gpio = <&pm8550_gpios 11 GPIO_ACTIVE_HIGH>; 240 enable-active-high; 241 242 pinctrl-0 = <&usb0_3p3_reg_en>; 243 pinctrl-names = "default"; 244 245 regulator-boot-on; 246 }; 247 248 vreg_rtmr1_1p15: regulator-rtmr1-1p15 { 249 compatible = "regulator-fixed"; 250 251 regulator-name = "VREG_RTMR1_1P15"; 252 regulator-min-microvolt = <1150000>; 253 regulator-max-microvolt = <1150000>; 254 255 gpio = <&tlmm 188 GPIO_ACTIVE_HIGH>; 256 enable-active-high; 257 258 pinctrl-0 = <&usb1_pwr_1p15_reg_en>; 259 pinctrl-names = "default"; 260 261 regulator-boot-on; 262 }; 263 264 vreg_rtmr1_1p8: regulator-rtmr1-1p8 { 265 compatible = "regulator-fixed"; 266 267 regulator-name = "VREG_RTMR1_1P8"; 268 regulator-min-microvolt = <1800000>; 269 regulator-max-microvolt = <1800000>; 270 271 gpio = <&tlmm 175 GPIO_ACTIVE_HIGH>; 272 enable-active-high; 273 274 pinctrl-0 = <&usb1_pwr_1p8_reg_en>; 275 pinctrl-names = "default"; 276 277 regulator-boot-on; 278 }; 279 280 vreg_rtmr1_3p3: regulator-rtmr1-3p3 { 281 compatible = "regulator-fixed"; 282 283 regulator-name = "VREG_RTMR1_3P3"; 284 regulator-min-microvolt = <3300000>; 285 regulator-max-microvolt = <3300000>; 286 287 gpio = <&tlmm 186 GPIO_ACTIVE_HIGH>; 288 enable-active-high; 289 290 pinctrl-0 = <&usb1_pwr_3p3_reg_en>; 291 pinctrl-names = "default"; 292 293 regulator-boot-on; 294 }; 295 296 vph_pwr: regulator-vph-pwr { 297 compatible = "regulator-fixed"; 298 299 regulator-name = "vph_pwr"; 300 regulator-min-microvolt = <3700000>; 301 regulator-max-microvolt = <3700000>; 302 303 regulator-always-on; 304 regulator-boot-on; 305 }; 306 307 /* 308 * TODO: These two regulators are actually part of the removable M.2 309 * card and not the CRD mainboard. Need to describe this differently. 310 * Functionally it works correctly, because all we need to do is to 311 * turn on the actual 3.3V supply above. 312 */ 313 vreg_wcn_0p95: regulator-wcn-0p95 { 314 compatible = "regulator-fixed"; 315 316 regulator-name = "VREG_WCN_0P95"; 317 regulator-min-microvolt = <950000>; 318 regulator-max-microvolt = <950000>; 319 320 vin-supply = <&vreg_wcn_3p3>; 321 }; 322 323 vreg_wcn_1p9: regulator-wcn-1p9 { 324 compatible = "regulator-fixed"; 325 326 regulator-name = "VREG_WCN_1P9"; 327 regulator-min-microvolt = <1900000>; 328 regulator-max-microvolt = <1900000>; 329 330 vin-supply = <&vreg_wcn_3p3>; 331 }; 332 333 vreg_wcn_3p3: regulator-wcn-3p3 { 334 compatible = "regulator-fixed"; 335 336 regulator-name = "VREG_WCN_3P3"; 337 regulator-min-microvolt = <3300000>; 338 regulator-max-microvolt = <3300000>; 339 340 gpio = <&tlmm 214 GPIO_ACTIVE_HIGH>; 341 enable-active-high; 342 343 pinctrl-0 = <&wcn_sw_en>; 344 pinctrl-names = "default"; 345 346 regulator-boot-on; 347 }; 348 349 wcn7850-pmu { 350 compatible = "qcom,wcn7850-pmu"; 351 352 vdd-supply = <&vreg_wcn_0p95>; 353 vddio-supply = <&vreg_l15b_1p8>; 354 vddaon-supply = <&vreg_wcn_0p95>; 355 vdddig-supply = <&vreg_wcn_0p95>; 356 vddrfa1p2-supply = <&vreg_wcn_1p9>; 357 vddrfa1p8-supply = <&vreg_wcn_1p9>; 358 359 wlan-enable-gpios = <&tlmm 117 GPIO_ACTIVE_HIGH>; 360 bt-enable-gpios = <&tlmm 116 GPIO_ACTIVE_HIGH>; 361 362 pinctrl-0 = <&wcn_wlan_en>, <&wcn_bt_en>; 363 pinctrl-names = "default"; 364 365 regulators { 366 vreg_pmu_rfa_cmn: ldo0 { 367 regulator-name = "vreg_pmu_rfa_cmn"; 368 }; 369 370 vreg_pmu_aon_0p59: ldo1 { 371 regulator-name = "vreg_pmu_aon_0p59"; 372 }; 373 374 vreg_pmu_wlcx_0p8: ldo2 { 375 regulator-name = "vreg_pmu_wlcx_0p8"; 376 }; 377 378 vreg_pmu_wlmx_0p85: ldo3 { 379 regulator-name = "vreg_pmu_wlmx_0p85"; 380 }; 381 382 vreg_pmu_btcmx_0p85: ldo4 { 383 regulator-name = "vreg_pmu_btcmx_0p85"; 384 }; 385 386 vreg_pmu_rfa_0p8: ldo5 { 387 regulator-name = "vreg_pmu_rfa_0p8"; 388 }; 389 390 vreg_pmu_rfa_1p2: ldo6 { 391 regulator-name = "vreg_pmu_rfa_1p2"; 392 }; 393 394 vreg_pmu_rfa_1p8: ldo7 { 395 regulator-name = "vreg_pmu_rfa_1p8"; 396 }; 397 398 vreg_pmu_pcie_0p9: ldo8 { 399 regulator-name = "vreg_pmu_pcie_0p9"; 400 }; 401 402 vreg_pmu_pcie_1p8: ldo9 { 403 regulator-name = "vreg_pmu_pcie_1p8"; 404 }; 405 }; 406 }; 407}; 408 409&apps_rsc { 410 regulators-0 { 411 compatible = "qcom,pm8550-rpmh-regulators"; 412 qcom,pmic-id = "b"; 413 414 vdd-bob1-supply = <&vph_pwr>; 415 vdd-bob2-supply = <&vph_pwr>; 416 vdd-l1-l4-l10-supply = <&vreg_s4c_1p8>; 417 vdd-l2-l13-l14-supply = <&vreg_bob1>; 418 vdd-l5-l16-supply = <&vreg_bob1>; 419 vdd-l6-l7-supply = <&vreg_bob2>; 420 vdd-l8-l9-supply = <&vreg_bob1>; 421 vdd-l12-supply = <&vreg_s5j_1p2>; 422 vdd-l15-supply = <&vreg_s4c_1p8>; 423 vdd-l17-supply = <&vreg_bob2>; 424 425 vreg_bob1: bob1 { 426 regulator-name = "vreg_bob1"; 427 regulator-min-microvolt = <3008000>; 428 regulator-max-microvolt = <3960000>; 429 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 430 }; 431 432 vreg_bob2: bob2 { 433 regulator-name = "vreg_bob2"; 434 regulator-min-microvolt = <2504000>; 435 regulator-max-microvolt = <3008000>; 436 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 437 }; 438 439 vreg_l2b_3p0: ldo2 { 440 regulator-name = "vreg_l2b_3p0"; 441 regulator-min-microvolt = <3072000>; 442 regulator-max-microvolt = <3100000>; 443 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 444 }; 445 446 vreg_l4b_1p8: ldo4 { 447 regulator-name = "vreg_l4b_1p8"; 448 regulator-min-microvolt = <1800000>; 449 regulator-max-microvolt = <1800000>; 450 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 451 }; 452 453 vreg_l13b_3p0: ldo13 { 454 regulator-name = "vreg_l13b_3p0"; 455 regulator-min-microvolt = <3072000>; 456 regulator-max-microvolt = <3072000>; 457 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 458 }; 459 460 vreg_l14b_3p0: ldo14 { 461 regulator-name = "vreg_l14b_3p0"; 462 regulator-min-microvolt = <3072000>; 463 regulator-max-microvolt = <3072000>; 464 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 465 }; 466 467 vreg_l15b_1p8: ldo15 { 468 regulator-name = "vreg_l15b_1p8"; 469 regulator-min-microvolt = <1800000>; 470 regulator-max-microvolt = <1800000>; 471 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 472 }; 473 }; 474 475 regulators-1 { 476 compatible = "qcom,pm8550ve-rpmh-regulators"; 477 qcom,pmic-id = "c"; 478 479 vdd-l1-supply = <&vreg_s5j_1p2>; 480 vdd-l2-supply = <&vreg_s1f_0p7>; 481 vdd-l3-supply = <&vreg_s1f_0p7>; 482 vdd-s4-supply = <&vph_pwr>; 483 484 vreg_l3c_0p8: ldo3 { 485 regulator-name = "vreg_l3c_0p8"; 486 regulator-min-microvolt = <912000>; 487 regulator-max-microvolt = <912000>; 488 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 489 }; 490 491 vreg_s4c_1p8: smps4 { 492 regulator-name = "vreg_s4c_1p8"; 493 regulator-min-microvolt = <1856000>; 494 regulator-max-microvolt = <2000000>; 495 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 496 }; 497 }; 498 499 regulators-2 { 500 compatible = "qcom,pmc8380-rpmh-regulators"; 501 qcom,pmic-id = "d"; 502 503 vdd-l1-supply = <&vreg_s1f_0p7>; 504 vdd-l2-supply = <&vreg_s1f_0p7>; 505 vdd-l3-supply = <&vreg_s4c_1p8>; 506 vdd-s1-supply = <&vph_pwr>; 507 508 vreg_l1d_0p8: ldo1 { 509 regulator-name = "vreg_l1d_0p8"; 510 regulator-min-microvolt = <880000>; 511 regulator-max-microvolt = <920000>; 512 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 513 }; 514 515 vreg_l2d_0p9: ldo2 { 516 regulator-name = "vreg_l2d_0p9"; 517 regulator-min-microvolt = <912000>; 518 regulator-max-microvolt = <920000>; 519 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 520 }; 521 522 vreg_l3d_1p8: ldo3 { 523 regulator-name = "vreg_l3d_1p8"; 524 regulator-min-microvolt = <1800000>; 525 regulator-max-microvolt = <1800000>; 526 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 527 }; 528 }; 529 530 regulators-3 { 531 compatible = "qcom,pmc8380-rpmh-regulators"; 532 qcom,pmic-id = "e"; 533 534 vdd-l2-supply = <&vreg_s1f_0p7>; 535 vdd-l3-supply = <&vreg_s5j_1p2>; 536 537 vreg_l2e_0p8: ldo2 { 538 regulator-name = "vreg_l2e_0p8"; 539 regulator-min-microvolt = <880000>; 540 regulator-max-microvolt = <920000>; 541 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 542 }; 543 544 vreg_l3e_1p2: ldo3 { 545 regulator-name = "vreg_l3e_1p2"; 546 regulator-min-microvolt = <1200000>; 547 regulator-max-microvolt = <1200000>; 548 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 549 }; 550 }; 551 552 regulators-4 { 553 compatible = "qcom,pmc8380-rpmh-regulators"; 554 qcom,pmic-id = "f"; 555 556 vdd-l1-supply = <&vreg_s5j_1p2>; 557 vdd-l2-supply = <&vreg_s5j_1p2>; 558 vdd-l3-supply = <&vreg_s5j_1p2>; 559 vdd-s1-supply = <&vph_pwr>; 560 561 vreg_s1f_0p7: smps1 { 562 regulator-name = "vreg_s1f_0p7"; 563 regulator-min-microvolt = <700000>; 564 regulator-max-microvolt = <1100000>; 565 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 566 }; 567 }; 568 569 regulators-6 { 570 compatible = "qcom,pm8550ve-rpmh-regulators"; 571 qcom,pmic-id = "i"; 572 573 vdd-l1-supply = <&vreg_s4c_1p8>; 574 vdd-l2-supply = <&vreg_s5j_1p2>; 575 vdd-l3-supply = <&vreg_s1f_0p7>; 576 vdd-s1-supply = <&vph_pwr>; 577 vdd-s2-supply = <&vph_pwr>; 578 579 vreg_l3i_0p8: ldo3 { 580 regulator-name = "vreg_l3i_0p8"; 581 regulator-min-microvolt = <880000>; 582 regulator-max-microvolt = <920000>; 583 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 584 }; 585 }; 586 587 regulators-7 { 588 compatible = "qcom,pm8550ve-rpmh-regulators"; 589 qcom,pmic-id = "j"; 590 591 vdd-l1-supply = <&vreg_s1f_0p7>; 592 vdd-l2-supply = <&vreg_s5j_1p2>; 593 vdd-l3-supply = <&vreg_s1f_0p7>; 594 vdd-s5-supply = <&vph_pwr>; 595 596 vreg_s5j_1p2: smps5 { 597 regulator-name = "vreg_s5j_1p2"; 598 regulator-min-microvolt = <1256000>; 599 regulator-max-microvolt = <1304000>; 600 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 601 }; 602 603 vreg_l1j_0p8: ldo1 { 604 regulator-name = "vreg_l1j_0p8"; 605 regulator-min-microvolt = <880000>; 606 regulator-max-microvolt = <920000>; 607 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 608 }; 609 610 vreg_l2j_1p2: ldo2 { 611 regulator-name = "vreg_l2j_1p2"; 612 regulator-min-microvolt = <1256000>; 613 regulator-max-microvolt = <1256000>; 614 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 615 }; 616 617 vreg_l3j_0p8: ldo3 { 618 regulator-name = "vreg_l3j_0p8"; 619 regulator-min-microvolt = <880000>; 620 regulator-max-microvolt = <920000>; 621 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 622 }; 623 }; 624}; 625 626&gpu { 627 status = "okay"; 628}; 629 630&i2c0 { 631 clock-frequency = <400000>; 632 633 status = "okay"; 634 635 touchpad@15 { 636 compatible = "hid-over-i2c"; 637 reg = <0x15>; 638 639 hid-descr-addr = <0x1>; 640 interrupts-extended = <&tlmm 3 IRQ_TYPE_LEVEL_LOW>; 641 642 pinctrl-0 = <&tpad_default>; 643 pinctrl-names = "default"; 644 645 wakeup-source; 646 }; 647}; 648 649&i2c1 { 650 clock-frequency = <400000>; 651 652 status = "okay"; 653}; 654 655&i2c3 { 656 clock-frequency = <400000>; 657 658 status = "okay"; 659 660 typec-mux@8 { 661 compatible = "parade,ps8830"; 662 reg = <0x08>; 663 664 clocks = <&rpmhcc RPMH_RF_CLK3>; 665 666 vdd-supply = <&vreg_rtmr0_1p15>; 667 vdd33-supply = <&vreg_rtmr0_3p3>; 668 vdd33-cap-supply = <&vreg_rtmr0_3p3>; 669 vddar-supply = <&vreg_rtmr0_1p15>; 670 vddat-supply = <&vreg_rtmr0_1p15>; 671 vddio-supply = <&vreg_rtmr0_1p8>; 672 673 reset-gpios = <&pm8550_gpios 10 GPIO_ACTIVE_LOW>; 674 675 pinctrl-0 = <&rtmr0_default>; 676 pinctrl-names = "default"; 677 678 orientation-switch; 679 retimer-switch; 680 681 ports { 682 #address-cells = <1>; 683 #size-cells = <0>; 684 685 port@0 { 686 reg = <0>; 687 688 retimer_ss0_ss_out: endpoint { 689 remote-endpoint = <&pmic_glink_ss0_ss_in>; 690 }; 691 }; 692 693 port@1 { 694 reg = <1>; 695 696 retimer_ss0_ss_in: endpoint { 697 remote-endpoint = <&usb_1_ss0_qmpphy_out>; 698 }; 699 }; 700 701 port@2 { 702 reg = <2>; 703 704 retimer_ss0_con_sbu_out: endpoint { 705 remote-endpoint = <&pmic_glink_ss0_con_sbu_in>; 706 }; 707 }; 708 }; 709 }; 710}; 711 712&i2c5 { 713 clock-frequency = <400000>; 714 715 status = "okay"; 716 717 keyboard@3a { 718 compatible = "hid-over-i2c"; 719 reg = <0x3a>; 720 721 hid-descr-addr = <0x1>; 722 interrupts-extended = <&tlmm 67 IRQ_TYPE_LEVEL_LOW>; 723 724 pinctrl-0 = <&kybd_default>; 725 pinctrl-names = "default"; 726 727 wakeup-source; 728 }; 729 730 eusb5_repeater: redriver@43 { 731 compatible = "nxp,ptn3222"; 732 reg = <0x43>; 733 #phy-cells = <0>; 734 735 vdd3v3-supply = <&vreg_l13b_3p0>; 736 vdd1v8-supply = <&vreg_l4b_1p8>; 737 738 reset-gpios = <&tlmm 7 GPIO_ACTIVE_LOW>; 739 740 pinctrl-0 = <&eusb5_reset_n>; 741 pinctrl-names = "default"; 742 }; 743 744 eusb3_repeater: redriver@47 { 745 compatible = "nxp,ptn3222"; 746 reg = <0x47>; 747 #phy-cells = <0>; 748 749 vdd3v3-supply = <&vreg_l13b_3p0>; 750 vdd1v8-supply = <&vreg_l4b_1p8>; 751 752 reset-gpios = <&tlmm 6 GPIO_ACTIVE_LOW>; 753 754 pinctrl-0 = <&eusb3_reset_n>; 755 pinctrl-names = "default"; 756 }; 757 758 eusb6_repeater: redriver@4f { 759 compatible = "nxp,ptn3222"; 760 reg = <0x4f>; 761 #phy-cells = <0>; 762 763 vdd3v3-supply = <&vreg_l13b_3p0>; 764 vdd1v8-supply = <&vreg_l4b_1p8>; 765 766 reset-gpios = <&tlmm 184 GPIO_ACTIVE_LOW>; 767 768 pinctrl-0 = <&eusb6_reset_n>; 769 pinctrl-names = "default"; 770 }; 771 772 /* EC @ 0x76 */ 773}; 774 775&i2c7 { 776 clock-frequency = <400000>; 777 778 status = "okay"; 779 780 typec-mux@8 { 781 compatible = "parade,ps8830"; 782 reg = <0x8>; 783 784 clocks = <&rpmhcc RPMH_RF_CLK4>; 785 786 vdd-supply = <&vreg_rtmr1_1p15>; 787 vdd33-supply = <&vreg_rtmr1_3p3>; 788 vdd33-cap-supply = <&vreg_rtmr1_3p3>; 789 vddar-supply = <&vreg_rtmr1_1p15>; 790 vddat-supply = <&vreg_rtmr1_1p15>; 791 vddio-supply = <&vreg_rtmr1_1p8>; 792 793 reset-gpios = <&tlmm 176 GPIO_ACTIVE_LOW>; 794 795 pinctrl-0 = <&rtmr1_default>; 796 pinctrl-names = "default"; 797 798 retimer-switch; 799 orientation-switch; 800 801 ports { 802 #address-cells = <1>; 803 #size-cells = <0>; 804 805 port@0 { 806 reg = <0>; 807 808 retimer_ss1_ss_out: endpoint { 809 remote-endpoint = <&pmic_glink_ss1_ss_in>; 810 }; 811 }; 812 813 port@1 { 814 reg = <1>; 815 816 retimer_ss1_ss_in: endpoint { 817 remote-endpoint = <&usb_1_ss1_qmpphy_out>; 818 }; 819 }; 820 821 port@2 { 822 reg = <2>; 823 824 retimer_ss1_con_sbu_out: endpoint { 825 remote-endpoint = <&pmic_glink_ss1_con_sbu_in>; 826 }; 827 }; 828 }; 829 }; 830}; 831 832&mdss { 833 status = "okay"; 834}; 835 836&mdss_dp0 { 837 status = "okay"; 838}; 839 840&mdss_dp0_out { 841 link-frequencies = /bits/ 64 <1620000000 2700000000 5400000000 8100000000>; 842}; 843 844&mdss_dp1 { 845 status = "okay"; 846}; 847 848&mdss_dp1_out { 849 link-frequencies = /bits/ 64 <1620000000 2700000000 5400000000 8100000000>; 850}; 851 852&mdss_dp2 { 853 status = "okay"; 854}; 855 856&mdss_dp2_out { 857 link-frequencies = /bits/ 64 <1620000000 2700000000 5400000000 8100000000>; 858}; 859 860&mdss_dp3 { 861 /delete-property/ #sound-dai-cells; 862 863 pinctrl-0 = <&edp0_hpd_default>; 864 pinctrl-names = "default"; 865 866 status = "okay"; 867 868 aux-bus { 869 panel { 870 compatible = "samsung,atna56ac03", "samsung,atna33xc20"; 871 enable-gpios = <&pmc8380_3_gpios 4 GPIO_ACTIVE_HIGH>; 872 power-supply = <&vreg_edp_3p3>; 873 874 pinctrl-0 = <&edp_bl_en>; 875 pinctrl-names = "default"; 876 877 port { 878 edp_panel_in: endpoint { 879 remote-endpoint = <&mdss_dp3_out>; 880 }; 881 }; 882 }; 883 }; 884}; 885 886&mdss_dp3_out { 887 data-lanes = <0 1 2 3>; 888 link-frequencies = /bits/ 64 <1620000000 2700000000 5400000000 8100000000>; 889 890 remote-endpoint = <&edp_panel_in>; 891}; 892 893&mdss_dp3_phy { 894 vdda-phy-supply = <&vreg_l3j_0p8>; 895 vdda-pll-supply = <&vreg_l2j_1p2>; 896 897 status = "okay"; 898}; 899 900&pcie4 { 901 pinctrl-0 = <&pcie4_default>; 902 pinctrl-names = "default"; 903 904 status = "okay"; 905}; 906 907&pcie4_phy { 908 vdda-phy-supply = <&vreg_l3i_0p8>; 909 vdda-pll-supply = <&vreg_l3e_1p2>; 910 911 status = "okay"; 912}; 913 914&pcie4_port0 { 915 reset-gpios = <&tlmm 146 GPIO_ACTIVE_LOW>; 916 wake-gpios = <&tlmm 148 GPIO_ACTIVE_LOW>; 917 918 wifi@0 { 919 compatible = "pci17cb,1107"; 920 reg = <0x10000 0x0 0x0 0x0 0x0>; 921 922 vddaon-supply = <&vreg_pmu_aon_0p59>; 923 vddwlcx-supply = <&vreg_pmu_wlcx_0p8>; 924 vddwlmx-supply = <&vreg_pmu_wlmx_0p85>; 925 vddrfacmn-supply = <&vreg_pmu_rfa_cmn>; 926 vddrfa0p8-supply = <&vreg_pmu_rfa_0p8>; 927 vddrfa1p2-supply = <&vreg_pmu_rfa_1p2>; 928 vddrfa1p8-supply = <&vreg_pmu_rfa_1p8>; 929 vddpcie0p9-supply = <&vreg_pmu_pcie_0p9>; 930 vddpcie1p8-supply = <&vreg_pmu_pcie_1p8>; 931 }; 932}; 933 934&pcie6a { 935 vddpe-3v3-supply = <&vreg_nvme>; 936 937 pinctrl-0 = <&pcie6a_default>; 938 pinctrl-names = "default"; 939 940 status = "okay"; 941}; 942 943&pcie6a_phy { 944 vdda-phy-supply = <&vreg_l1d_0p8>; 945 vdda-pll-supply = <&vreg_l2j_1p2>; 946 947 status = "okay"; 948}; 949 950&pcie6a_port0 { 951 reset-gpios = <&tlmm 152 GPIO_ACTIVE_LOW>; 952 wake-gpios = <&tlmm 154 GPIO_ACTIVE_LOW>; 953}; 954 955&pm8550_gpios { 956 rtmr0_default: rtmr0-reset-n-active-state { 957 pins = "gpio10"; 958 function = "normal"; 959 power-source = <1>; /* 1.8V */ 960 bias-disable; 961 input-disable; 962 output-enable; 963 }; 964 965 usb0_3p3_reg_en: usb0-3p3-reg-en-state { 966 pins = "gpio11"; 967 function = "normal"; 968 power-source = <1>; /* 1.8V */ 969 bias-disable; 970 input-disable; 971 output-enable; 972 }; 973}; 974 975&pm8550ve_9_gpios { 976 usb0_1p8_reg_en: usb0-1p8-reg-en-state { 977 pins = "gpio8"; 978 function = "normal"; 979 power-source = <1>; /* 1.8V */ 980 bias-disable; 981 input-disable; 982 output-enable; 983 }; 984}; 985 986&pmc8380_3_gpios { 987 edp_bl_en: edp-bl-en-state { 988 pins = "gpio4"; 989 function = "normal"; 990 power-source = <1>; /* 1.8 V */ 991 qcom,drive-strength = <PMIC_GPIO_STRENGTH_MED>; 992 bias-pull-down; 993 input-disable; 994 output-enable; 995 }; 996}; 997 998&pmc8380_5_gpios { 999 usb0_pwr_1p15_reg_en: usb0-pwr-1p15-reg-en-state { 1000 pins = "gpio8"; 1001 function = "normal"; 1002 power-source = <1>; /* 1.8V */ 1003 bias-disable; 1004 input-disable; 1005 output-enable; 1006 }; 1007}; 1008 1009&qupv3_0 { 1010 status = "okay"; 1011}; 1012 1013&qupv3_1 { 1014 status = "okay"; 1015}; 1016 1017&qupv3_2 { 1018 status = "okay"; 1019}; 1020 1021&smb2360_0 { 1022 status = "okay"; 1023}; 1024 1025&smb2360_0_eusb2_repeater { 1026 vdd18-supply = <&vreg_l3d_1p8>; 1027 vdd3-supply = <&vreg_l2b_3p0>; 1028}; 1029 1030&smb2360_1 { 1031 status = "okay"; 1032}; 1033 1034&smb2360_1_eusb2_repeater { 1035 vdd18-supply = <&vreg_l3d_1p8>; 1036 vdd3-supply = <&vreg_l14b_3p0>; 1037}; 1038 1039&tlmm { 1040 gpio-reserved-ranges = <34 2>, /* Unused */ 1041 <44 4>, /* SPI (TPM) */ 1042 <238 1>; /* UFS Reset */ 1043 1044 edp_reg_en: edp-reg-en-state { 1045 pins = "gpio70"; 1046 function = "gpio"; 1047 drive-strength = <16>; 1048 bias-disable; 1049 }; 1050 1051 eusb3_reset_n: eusb3-reset-n-state { 1052 pins = "gpio6"; 1053 function = "gpio"; 1054 drive-strength = <2>; 1055 bias-pull-up; 1056 output-low; 1057 }; 1058 1059 eusb5_reset_n: eusb5-reset-n-state { 1060 pins = "gpio7"; 1061 function = "gpio"; 1062 drive-strength = <2>; 1063 bias-pull-up; 1064 output-low; 1065 }; 1066 1067 eusb6_reset_n: eusb6-reset-n-state { 1068 pins = "gpio184"; 1069 function = "gpio"; 1070 drive-strength = <2>; 1071 bias-pull-up; 1072 output-low; 1073 }; 1074 1075 hall_int_n_default: hall-int-n-state { 1076 pins = "gpio92"; 1077 function = "gpio"; 1078 bias-disable; 1079 }; 1080 1081 hdmi_hpd_default: hdmi-hpd-default-state { 1082 pins = "gpio126"; 1083 function = "usb2_dp"; 1084 bias-disable; 1085 }; 1086 1087 kybd_default: kybd-default-state { 1088 pins = "gpio67"; 1089 function = "gpio"; 1090 bias-disable; 1091 }; 1092 1093 nvme_reg_en: nvme-reg-en-state { 1094 pins = "gpio18"; 1095 function = "gpio"; 1096 drive-strength = <2>; 1097 bias-disable; 1098 }; 1099 1100 pcie4_default: pcie4-default-state { 1101 clkreq-n-pins { 1102 pins = "gpio147"; 1103 function = "pcie4_clk"; 1104 drive-strength = <2>; 1105 bias-pull-up; 1106 }; 1107 1108 perst-n-pins { 1109 pins = "gpio146"; 1110 function = "gpio"; 1111 drive-strength = <2>; 1112 bias-disable; 1113 }; 1114 1115 wake-n-pins { 1116 pins = "gpio148"; 1117 function = "gpio"; 1118 drive-strength = <2>; 1119 bias-pull-up; 1120 }; 1121 }; 1122 1123 pcie6a_default: pcie6a-default-state { 1124 clkreq-n-pins { 1125 pins = "gpio153"; 1126 function = "pcie6a_clk"; 1127 drive-strength = <2>; 1128 bias-pull-up; 1129 }; 1130 1131 perst-n-pins { 1132 pins = "gpio152"; 1133 function = "gpio"; 1134 drive-strength = <2>; 1135 bias-disable; 1136 }; 1137 1138 wake-n-pins { 1139 pins = "gpio154"; 1140 function = "gpio"; 1141 drive-strength = <2>; 1142 bias-pull-up; 1143 }; 1144 }; 1145 1146 rtmr1_default: rtmr1-reset-n-active-state { 1147 pins = "gpio176"; 1148 function = "gpio"; 1149 drive-strength = <2>; 1150 bias-pull-up; 1151 }; 1152 1153 tpad_default: tpad-default-state { 1154 pins = "gpio3"; 1155 function = "gpio"; 1156 bias-disable; 1157 }; 1158 1159 usb1_pwr_1p15_reg_en: usb1-pwr-1p15-reg-en-state { 1160 pins = "gpio188"; 1161 function = "gpio"; 1162 drive-strength = <2>; 1163 bias-pull-up; 1164 }; 1165 1166 usb1_pwr_1p8_reg_en: usb1-pwr-1p8-reg-en-state { 1167 pins = "gpio175"; 1168 function = "gpio"; 1169 drive-strength = <2>; 1170 bias-pull-up; 1171 }; 1172 1173 usb1_pwr_3p3_reg_en: usb1-pwr-3p3-reg-en-state { 1174 pins = "gpio186"; 1175 function = "gpio"; 1176 drive-strength = <2>; 1177 bias-pull-up; 1178 }; 1179 1180 wcn_bt_en: wcn-bt-en-state { 1181 pins = "gpio116"; 1182 function = "gpio"; 1183 drive-strength = <16>; 1184 bias-pull-down; 1185 }; 1186 1187 wcn_sw_en: wcn-sw-en-state { 1188 pins = "gpio214"; 1189 function = "gpio"; 1190 drive-strength = <16>; 1191 bias-disable; 1192 }; 1193 1194 wcn_wlan_en: wcn-wlan-en-state { 1195 pins = "gpio117"; 1196 function = "gpio"; 1197 drive-strength = <16>; 1198 bias-disable; 1199 }; 1200}; 1201 1202&uart14 { 1203 status = "okay"; 1204 1205 bluetooth { 1206 compatible = "qcom,wcn7850-bt"; 1207 max-speed = <3200000>; 1208 1209 vddaon-supply = <&vreg_pmu_aon_0p59>; 1210 vddwlcx-supply = <&vreg_pmu_wlcx_0p8>; 1211 vddwlmx-supply = <&vreg_pmu_wlmx_0p85>; 1212 vddrfacmn-supply = <&vreg_pmu_rfa_cmn>; 1213 vddrfa0p8-supply = <&vreg_pmu_rfa_0p8>; 1214 vddrfa1p2-supply = <&vreg_pmu_rfa_1p2>; 1215 vddrfa1p8-supply = <&vreg_pmu_rfa_1p8>; 1216 }; 1217}; 1218 1219&usb_1_ss0_hsphy { 1220 vdd-supply = <&vreg_l3j_0p8>; 1221 vdda12-supply = <&vreg_l2j_1p2>; 1222 1223 phys = <&smb2360_0_eusb2_repeater>; 1224 1225 status = "okay"; 1226}; 1227 1228&usb_1_ss0_qmpphy { 1229 vdda-phy-supply = <&vreg_l2j_1p2>; 1230 vdda-pll-supply = <&vreg_l1j_0p8>; 1231 1232 status = "okay"; 1233}; 1234 1235&usb_1_ss0 { 1236 dr_mode = "host"; 1237 1238 status = "okay"; 1239}; 1240 1241&usb_1_ss0_dwc3_hs { 1242 remote-endpoint = <&pmic_glink_ss0_hs_in>; 1243}; 1244 1245&usb_1_ss0_qmpphy_out { 1246 remote-endpoint = <&retimer_ss0_ss_in>; 1247}; 1248 1249&usb_1_ss1_hsphy { 1250 vdd-supply = <&vreg_l3j_0p8>; 1251 vdda12-supply = <&vreg_l2j_1p2>; 1252 1253 phys = <&smb2360_1_eusb2_repeater>; 1254 1255 status = "okay"; 1256}; 1257 1258&usb_1_ss1_qmpphy { 1259 vdda-phy-supply = <&vreg_l2j_1p2>; 1260 vdda-pll-supply = <&vreg_l2d_0p9>; 1261 1262 status = "okay"; 1263}; 1264 1265&usb_1_ss1 { 1266 dr_mode = "host"; 1267 1268 status = "okay"; 1269}; 1270 1271&usb_1_ss1_dwc3_hs { 1272 remote-endpoint = <&pmic_glink_ss1_hs_in>; 1273}; 1274 1275&usb_1_ss1_qmpphy_out { 1276 remote-endpoint = <&retimer_ss1_ss_in>; 1277}; 1278 1279&usb_1_ss2_qmpphy { 1280 vdda-phy-supply = <&vreg_l2j_1p2>; 1281 vdda-pll-supply = <&vreg_l2d_0p9>; 1282 1283 /delete-property/ mode-switch; 1284 /delete-property/ orientation-switch; 1285 1286 status = "okay"; 1287 1288 ports { 1289 port@0 { 1290 #address-cells = <1>; 1291 #size-cells = <0>; 1292 1293 /delete-node/ endpoint; 1294 1295 usb_1_ss2_qmpphy_out_dp: endpoint@0 { 1296 reg = <0>; 1297 1298 data-lanes = <3 2 1 0>; 1299 remote-endpoint = <&hdmi_bridge_dp_in>; 1300 }; 1301 1302 /* No USB3 lanes connected */ 1303 }; 1304 }; 1305}; 1306 1307&usb_2 { 1308 dr_mode = "host"; 1309 1310 status = "okay"; 1311}; 1312 1313&usb_2_hsphy { 1314 vdd-supply = <&vreg_l2e_0p8>; 1315 vdda12-supply = <&vreg_l3e_1p2>; 1316 1317 phys = <&eusb5_repeater>; 1318 1319 status = "okay"; 1320}; 1321 1322&usb_mp { 1323 status = "okay"; 1324}; 1325 1326&usb_mp_hsphy0 { 1327 vdd-supply = <&vreg_l2e_0p8>; 1328 vdda12-supply = <&vreg_l3e_1p2>; 1329 1330 phys = <&eusb3_repeater>; 1331 1332 status = "okay"; 1333}; 1334 1335&usb_mp_hsphy1 { 1336 vdd-supply = <&vreg_l2e_0p8>; 1337 vdda12-supply = <&vreg_l3e_1p2>; 1338 1339 phys = <&eusb6_repeater>; 1340 1341 status = "okay"; 1342}; 1343 1344&usb_mp_qmpphy0 { 1345 vdda-phy-supply = <&vreg_l3e_1p2>; 1346 vdda-pll-supply = <&vreg_l3c_0p8>; 1347 1348 status = "okay"; 1349}; 1350 1351&usb_mp_qmpphy1 { 1352 vdda-phy-supply = <&vreg_l3e_1p2>; 1353 vdda-pll-supply = <&vreg_l3c_0p8>; 1354 1355 status = "okay"; 1356}; 1357