1// SPDX-License-Identifier: BSD-3-Clause 2/* 3 * Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved. 4 */ 5 6#include <dt-bindings/gpio/gpio.h> 7#include <dt-bindings/input/gpio-keys.h> 8#include <dt-bindings/input/input.h> 9#include <dt-bindings/leds/common.h> 10#include <dt-bindings/regulator/qcom,rpmh-regulator.h> 11 12#include "x1e80100.dtsi" 13#include "x1e80100-pmics.dtsi" 14 15/ { 16 aliases { 17 serial0 = &uart2; 18 i2c0 = &i2c0; 19 i2c3 = &i2c3; 20 i2c4 = &i2c4; 21 i2c5 = &i2c5; 22 i2c7 = &i2c7; 23 }; 24 25 backlight: backlight { 26 compatible = "pwm-backlight"; 27 pwms = <&pmk8550_pwm 0 5000000>; 28 enable-gpios = <&pmc8380_3_gpios 4 GPIO_ACTIVE_HIGH>; 29 /* TODO: power-supply? */ 30 31 pinctrl-0 = <&edp_bl_en>, <&edp_bl_pwm>; 32 pinctrl-names = "default"; 33 }; 34 35 gpio-keys { 36 compatible = "gpio-keys"; 37 38 pinctrl-0 = <&hall_int_n_default>; 39 pinctrl-names = "default"; 40 41 switch-lid { 42 gpios = <&tlmm 2 GPIO_ACTIVE_LOW>; 43 linux,input-type = <EV_SW>; 44 linux,code = <SW_LID>; 45 wakeup-source; 46 wakeup-event-action = <EV_ACT_DEASSERTED>; 47 }; 48 }; 49 50 leds { 51 compatible = "gpio-leds"; 52 53 pinctrl-names = "default"; 54 pinctrl-0 = <&cam_indicator_en>; 55 56 led-camera-indicator { 57 label = "white:camera-indicator"; 58 function = LED_FUNCTION_INDICATOR; 59 color = <LED_COLOR_ID_WHITE>; 60 gpios = <&tlmm 225 GPIO_ACTIVE_HIGH>; 61 linux,default-trigger = "none"; 62 default-state = "off"; 63 /* Reuse as a panic indicator until we get a "camera on" trigger */ 64 panic-indicator; 65 }; 66 }; 67 68 pmic-glink { 69 compatible = "qcom,x1e80100-pmic-glink", 70 "qcom,sm8550-pmic-glink", 71 "qcom,pmic-glink"; 72 #address-cells = <1>; 73 #size-cells = <0>; 74 orientation-gpios = <&tlmm 121 GPIO_ACTIVE_HIGH>, 75 <&tlmm 123 GPIO_ACTIVE_HIGH>; 76 77 /* Left-side rear port */ 78 connector@0 { 79 compatible = "usb-c-connector"; 80 reg = <0>; 81 power-role = "dual"; 82 data-role = "dual"; 83 84 ports { 85 #address-cells = <1>; 86 #size-cells = <0>; 87 88 port@0 { 89 reg = <0>; 90 91 pmic_glink_ss0_hs_in: endpoint { 92 remote-endpoint = <&usb_1_ss0_dwc3_hs>; 93 }; 94 }; 95 96 port@1 { 97 reg = <1>; 98 99 pmic_glink_ss0_ss_in: endpoint { 100 remote-endpoint = <&usb_1_ss0_qmpphy_out>; 101 }; 102 }; 103 }; 104 }; 105 106 /* Left-side front port */ 107 connector@1 { 108 compatible = "usb-c-connector"; 109 reg = <1>; 110 power-role = "dual"; 111 data-role = "dual"; 112 113 ports { 114 #address-cells = <1>; 115 #size-cells = <0>; 116 117 port@0 { 118 reg = <0>; 119 120 pmic_glink_ss1_hs_in: endpoint { 121 remote-endpoint = <&usb_1_ss1_dwc3_hs>; 122 }; 123 }; 124 125 port@1 { 126 reg = <1>; 127 128 pmic_glink_ss1_ss_in: endpoint { 129 remote-endpoint = <&usb_1_ss1_qmpphy_out>; 130 }; 131 }; 132 }; 133 }; 134 }; 135 136 reserved-memory { 137 linux,cma { 138 compatible = "shared-dma-pool"; 139 size = <0x0 0x8000000>; 140 reusable; 141 linux,cma-default; 142 }; 143 }; 144 145 vreg_edp_3p3: regulator-edp-3p3 { 146 compatible = "regulator-fixed"; 147 148 regulator-name = "VREG_EDP_3P3"; 149 regulator-min-microvolt = <3300000>; 150 regulator-max-microvolt = <3300000>; 151 152 gpio = <&tlmm 70 GPIO_ACTIVE_HIGH>; 153 enable-active-high; 154 155 pinctrl-0 = <&edp_reg_en>; 156 pinctrl-names = "default"; 157 158 regulator-boot-on; 159 }; 160 161 vreg_nvme: regulator-nvme { 162 compatible = "regulator-fixed"; 163 164 regulator-name = "VREG_NVME_3P3"; 165 regulator-min-microvolt = <3300000>; 166 regulator-max-microvolt = <3300000>; 167 168 gpio = <&tlmm 18 GPIO_ACTIVE_HIGH>; 169 enable-active-high; 170 171 pinctrl-0 = <&nvme_reg_en>; 172 pinctrl-names = "default"; 173 174 regulator-boot-on; 175 }; 176 177 vph_pwr: regulator-vph-pwr { 178 compatible = "regulator-fixed"; 179 180 regulator-name = "vph_pwr"; 181 regulator-min-microvolt = <3700000>; 182 regulator-max-microvolt = <3700000>; 183 184 regulator-always-on; 185 regulator-boot-on; 186 }; 187}; 188 189&apps_rsc { 190 regulators-0 { 191 compatible = "qcom,pm8550-rpmh-regulators"; 192 qcom,pmic-id = "b"; 193 194 vdd-bob1-supply = <&vph_pwr>; 195 vdd-bob2-supply = <&vph_pwr>; 196 vdd-l1-l4-l10-supply = <&vreg_s4c>; 197 vdd-l2-l13-l14-supply = <&vreg_bob1>; 198 vdd-l5-l16-supply = <&vreg_bob1>; 199 vdd-l6-l7-supply = <&vreg_bob2>; 200 vdd-l8-l9-supply = <&vreg_bob1>; 201 vdd-l12-supply = <&vreg_s5j>; 202 vdd-l15-supply = <&vreg_s4c>; 203 vdd-l17-supply = <&vreg_bob2>; 204 205 vreg_bob1: bob1 { 206 regulator-name = "vreg_bob1"; 207 regulator-min-microvolt = <3008000>; 208 regulator-max-microvolt = <3960000>; 209 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 210 }; 211 212 vreg_bob2: bob2 { 213 regulator-name = "vreg_bob2"; 214 regulator-min-microvolt = <2504000>; 215 regulator-max-microvolt = <3008000>; 216 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 217 }; 218 219 vreg_l1b: ldo1 { 220 regulator-name = "vreg_l1b"; 221 regulator-min-microvolt = <1800000>; 222 regulator-max-microvolt = <1800000>; 223 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 224 }; 225 226 vreg_l2b: ldo2 { 227 regulator-name = "vreg_l2b"; 228 regulator-min-microvolt = <3072000>; 229 regulator-max-microvolt = <3072000>; 230 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 231 }; 232 233 vreg_l4b: ldo4 { 234 regulator-name = "vreg_l4b"; 235 regulator-min-microvolt = <1800000>; 236 regulator-max-microvolt = <1800000>; 237 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 238 }; 239 240 vreg_l5b: ldo5 { 241 regulator-name = "vreg_l5b"; 242 regulator-min-microvolt = <3000000>; 243 regulator-max-microvolt = <3000000>; 244 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 245 }; 246 247 vreg_l6b: ldo6 { 248 regulator-name = "vreg_l6b"; 249 regulator-min-microvolt = <1800000>; 250 regulator-max-microvolt = <2960000>; 251 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 252 }; 253 254 vreg_l7b: ldo7 { 255 regulator-name = "vreg_l7b"; 256 regulator-min-microvolt = <2800000>; 257 regulator-max-microvolt = <2800000>; 258 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 259 }; 260 261 vreg_l8b: ldo8 { 262 regulator-name = "vreg_l8b"; 263 regulator-min-microvolt = <3072000>; 264 regulator-max-microvolt = <3072000>; 265 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 266 }; 267 268 vreg_l9b: ldo9 { 269 regulator-name = "vreg_l9b"; 270 regulator-min-microvolt = <2960000>; 271 regulator-max-microvolt = <2960000>; 272 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 273 }; 274 275 vreg_l10b: ldo10 { 276 regulator-name = "vreg_l10b"; 277 regulator-min-microvolt = <1800000>; 278 regulator-max-microvolt = <1800000>; 279 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 280 }; 281 282 vreg_l12b: ldo12 { 283 regulator-name = "vreg_l12b"; 284 regulator-min-microvolt = <1200000>; 285 regulator-max-microvolt = <1200000>; 286 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 287 }; 288 289 vreg_l13b: ldo13 { 290 regulator-name = "vreg_l13b"; 291 regulator-min-microvolt = <3072000>; 292 regulator-max-microvolt = <3072000>; 293 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 294 }; 295 296 vreg_l14b: ldo14 { 297 regulator-name = "vreg_l14b"; 298 regulator-min-microvolt = <3072000>; 299 regulator-max-microvolt = <3072000>; 300 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 301 }; 302 303 vreg_l15b: ldo15 { 304 regulator-name = "vreg_l15b"; 305 regulator-min-microvolt = <1800000>; 306 regulator-max-microvolt = <1800000>; 307 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 308 }; 309 310 vreg_l16b: ldo16 { 311 regulator-name = "vreg_l16b"; 312 regulator-min-microvolt = <2912000>; 313 regulator-max-microvolt = <2912000>; 314 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 315 }; 316 317 vreg_l17b: ldo17 { 318 regulator-name = "vreg_l17b"; 319 regulator-min-microvolt = <2504000>; 320 regulator-max-microvolt = <2504000>; 321 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 322 }; 323 }; 324 325 regulators-1 { 326 compatible = "qcom,pm8550ve-rpmh-regulators"; 327 qcom,pmic-id = "c"; 328 329 vdd-l1-supply = <&vreg_s5j>; 330 vdd-l2-supply = <&vreg_s1f>; 331 vdd-l3-supply = <&vreg_s1f>; 332 vdd-s4-supply = <&vph_pwr>; 333 334 vreg_s4c: smps4 { 335 regulator-name = "vreg_s4c"; 336 regulator-min-microvolt = <1856000>; 337 regulator-max-microvolt = <2000000>; 338 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 339 }; 340 341 vreg_l1c: ldo1 { 342 regulator-name = "vreg_l1c"; 343 regulator-min-microvolt = <1200000>; 344 regulator-max-microvolt = <1200000>; 345 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 346 }; 347 348 vreg_l2c: ldo2 { 349 regulator-name = "vreg_l2c"; 350 regulator-min-microvolt = <880000>; 351 regulator-max-microvolt = <920000>; 352 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 353 }; 354 355 vreg_l3c: ldo3 { 356 regulator-name = "vreg_l3c"; 357 regulator-min-microvolt = <912000>; 358 regulator-max-microvolt = <920000>; 359 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 360 }; 361 }; 362 363 regulators-2 { 364 compatible = "qcom,pmc8380-rpmh-regulators"; 365 qcom,pmic-id = "d"; 366 367 vdd-l1-supply = <&vreg_s1f>; 368 vdd-l2-supply = <&vreg_s1f>; 369 vdd-l3-supply = <&vreg_s4c>; 370 vdd-s1-supply = <&vph_pwr>; 371 372 vreg_l1d: ldo1 { 373 regulator-name = "vreg_l1d"; 374 regulator-min-microvolt = <880000>; 375 regulator-max-microvolt = <920000>; 376 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 377 }; 378 379 vreg_l2d: ldo2 { 380 regulator-name = "vreg_l2d"; 381 regulator-min-microvolt = <912000>; 382 regulator-max-microvolt = <920000>; 383 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 384 }; 385 386 vreg_l3d: ldo3 { 387 regulator-name = "vreg_l3d"; 388 regulator-min-microvolt = <1800000>; 389 regulator-max-microvolt = <1800000>; 390 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 391 }; 392 }; 393 394 regulators-3 { 395 compatible = "qcom,pmc8380-rpmh-regulators"; 396 qcom,pmic-id = "e"; 397 398 vdd-l2-supply = <&vreg_s1f>; 399 vdd-l3-supply = <&vreg_s5j>; 400 401 vreg_l2e: ldo2 { 402 regulator-name = "vreg_l2e"; 403 regulator-min-microvolt = <880000>; 404 regulator-max-microvolt = <920000>; 405 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 406 }; 407 408 vreg_l3e: ldo3 { 409 regulator-name = "vreg_l3e"; 410 regulator-min-microvolt = <1200000>; 411 regulator-max-microvolt = <1200000>; 412 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 413 }; 414 }; 415 416 regulators-4 { 417 compatible = "qcom,pmc8380-rpmh-regulators"; 418 qcom,pmic-id = "f"; 419 420 vdd-l1-supply = <&vreg_s5j>; 421 vdd-l2-supply = <&vreg_s5j>; 422 vdd-l3-supply = <&vreg_s5j>; 423 vdd-s1-supply = <&vph_pwr>; 424 425 vreg_s1f: smps1 { 426 regulator-name = "vreg_s1f"; 427 regulator-min-microvolt = <700000>; 428 regulator-max-microvolt = <1100000>; 429 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 430 }; 431 432 vreg_l1f: ldo1 { 433 regulator-name = "vreg_l1f"; 434 regulator-min-microvolt = <1024000>; 435 regulator-max-microvolt = <1024000>; 436 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 437 }; 438 439 vreg_l2f: ldo2 { 440 regulator-name = "vreg_l2f"; 441 regulator-min-microvolt = <1024000>; 442 regulator-max-microvolt = <1024000>; 443 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 444 }; 445 446 vreg_l3f: ldo3 { 447 regulator-name = "vreg_l3f"; 448 regulator-min-microvolt = <1024000>; 449 regulator-max-microvolt = <1024000>; 450 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 451 }; 452 }; 453 454 regulators-6 { 455 compatible = "qcom,pm8550ve-rpmh-regulators"; 456 qcom,pmic-id = "i"; 457 458 vdd-l1-supply = <&vreg_s4c>; 459 vdd-l2-supply = <&vreg_s5j>; 460 vdd-l3-supply = <&vreg_s1f>; 461 vdd-s1-supply = <&vph_pwr>; 462 vdd-s2-supply = <&vph_pwr>; 463 464 vreg_s1i: smps1 { 465 regulator-name = "vreg_s1i"; 466 regulator-min-microvolt = <900000>; 467 regulator-max-microvolt = <920000>; 468 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 469 }; 470 471 vreg_s2i: smps2 { 472 regulator-name = "vreg_s2i"; 473 regulator-min-microvolt = <1000000>; 474 regulator-max-microvolt = <1100000>; 475 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 476 }; 477 478 vreg_l1i: ldo1 { 479 regulator-name = "vreg_l1i"; 480 regulator-min-microvolt = <1800000>; 481 regulator-max-microvolt = <1800000>; 482 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 483 }; 484 485 vreg_l2i: ldo2 { 486 regulator-name = "vreg_l2i"; 487 regulator-min-microvolt = <1200000>; 488 regulator-max-microvolt = <1200000>; 489 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 490 }; 491 492 vreg_l3i: ldo3 { 493 regulator-name = "vreg_l3i"; 494 regulator-min-microvolt = <880000>; 495 regulator-max-microvolt = <920000>; 496 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 497 }; 498 }; 499 500 regulators-7 { 501 compatible = "qcom,pm8550ve-rpmh-regulators"; 502 qcom,pmic-id = "j"; 503 504 vdd-l1-supply = <&vreg_s1f>; 505 vdd-l2-supply = <&vreg_s5j>; 506 vdd-l3-supply = <&vreg_s1f>; 507 vdd-s5-supply = <&vph_pwr>; 508 509 vreg_s5j: smps5 { 510 regulator-name = "vreg_s5j"; 511 regulator-min-microvolt = <1256000>; 512 regulator-max-microvolt = <1304000>; 513 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 514 }; 515 516 vreg_l1j: ldo1 { 517 regulator-name = "vreg_l1j"; 518 regulator-min-microvolt = <912000>; 519 regulator-max-microvolt = <920000>; 520 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 521 }; 522 523 vreg_l2j: ldo2 { 524 regulator-name = "vreg_l2j"; 525 regulator-min-microvolt = <1256000>; 526 regulator-max-microvolt = <1256000>; 527 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 528 }; 529 530 vreg_l3j: ldo3 { 531 regulator-name = "vreg_l3j"; 532 regulator-min-microvolt = <880000>; 533 regulator-max-microvolt = <920000>; 534 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 535 }; 536 }; 537}; 538 539&gpu { 540 status = "okay"; 541 542 zap-shader { 543 memory-region = <&gpu_microcode_mem>; 544 firmware-name = "qcom/x1e80100/microsoft/qcdxkmsuc8380.mbn"; 545 }; 546}; 547 548&i2c0 { 549 clock-frequency = <100000>; 550 551 status = "okay"; 552 553 /* Something @39, @3e, @44 */ 554}; 555 556&i2c3 { 557 clock-frequency = <400000>; 558 559 status = "okay"; 560 561 /* PS8830 USB retimer @8 */ 562}; 563 564&i2c4 { 565 clock-frequency = <400000>; 566 567 status = "okay"; 568 569 /* Something @18, @2c, @2e */ 570}; 571 572&i2c5 { 573 clock-frequency = <400000>; 574 575 status = "okay"; 576 577 ptn3222: redriver@4f { 578 compatible = "nxp,ptn3222"; 579 reg = <0x4f>; 580 581 reset-gpios = <&tlmm 7 GPIO_ACTIVE_LOW>; 582 583 vdd3v3-supply = <&vreg_l13b>; 584 vdd1v8-supply = <&vreg_l4b>; 585 586 #phy-cells = <0>; 587 }; 588}; 589 590&i2c7 { 591 clock-frequency = <400000>; 592 593 status = "okay"; 594 595 /* PS8830 USB retimer @8 */ 596}; 597 598&mdss { 599 status = "okay"; 600}; 601 602&mdss_dp3 { 603 compatible = "qcom,x1e80100-dp"; 604 /delete-property/ #sound-dai-cells; 605 606 status = "okay"; 607 608 aux-bus { 609 panel { 610 compatible = "edp-panel"; 611 612 backlight = <&backlight>; 613 power-supply = <&vreg_edp_3p3>; 614 615 port { 616 edp_panel_in: endpoint { 617 remote-endpoint = <&mdss_dp3_out>; 618 }; 619 }; 620 }; 621 }; 622 623 ports { 624 port@1 { 625 reg = <1>; 626 627 mdss_dp3_out: endpoint { 628 data-lanes = <0 1 2 3>; 629 link-frequencies = /bits/ 64 <1620000000 2700000000 5400000000 8100000000>; 630 631 remote-endpoint = <&edp_panel_in>; 632 }; 633 }; 634 }; 635}; 636 637&mdss_dp3_phy { 638 vdda-phy-supply = <&vreg_l3j>; 639 vdda-pll-supply = <&vreg_l2j>; 640 641 status = "okay"; 642}; 643 644&pcie4 { 645 status = "okay"; 646}; 647 648&pcie4_phy { 649 vdda-phy-supply = <&vreg_l3i>; 650 vdda-pll-supply = <&vreg_l3e>; 651 652 status = "okay"; 653}; 654 655&pcie6a { 656 perst-gpios = <&tlmm 152 GPIO_ACTIVE_LOW>; 657 wake-gpios = <&tlmm 154 GPIO_ACTIVE_LOW>; 658 659 vddpe-3v3-supply = <&vreg_nvme>; 660 661 pinctrl-0 = <&pcie6a_default>; 662 pinctrl-names = "default"; 663 664 status = "okay"; 665}; 666 667&pcie6a_phy { 668 vdda-phy-supply = <&vreg_l1d>; 669 vdda-pll-supply = <&vreg_l2j>; 670 671 status = "okay"; 672}; 673 674&pmc8380_3_gpios { 675 edp_bl_en: edp-bl-en-state { 676 pins = "gpio4"; 677 function = "normal"; 678 power-source = <1>; /* 1.8V */ 679 input-disable; 680 output-enable; 681 }; 682}; 683 684&pmk8550_pwm { 685 status = "okay"; 686}; 687 688&pmk8550_gpios { 689 edp_bl_pwm: edp-bl-pwm-state { 690 pins = "gpio5"; 691 function = "func3"; 692 }; 693}; 694 695&qupv3_0 { 696 status = "okay"; 697}; 698 699&qupv3_1 { 700 status = "okay"; 701}; 702 703&qupv3_2 { 704 status = "okay"; 705}; 706 707&remoteproc_adsp { 708 firmware-name = "qcom/x1e80100/microsoft/Romulus/qcadsp8380.mbn", 709 "qcom/x1e80100/microsoft/Romulus/adsp_dtb.mbn"; 710 711 status = "okay"; 712}; 713 714&remoteproc_cdsp { 715 firmware-name = "qcom/x1e80100/microsoft/Romulus/qccdsp8380.mbn", 716 "qcom/x1e80100/microsoft/Romulus/cdsp_dtb.mbn"; 717 718 status = "okay"; 719}; 720 721&smb2360_0_eusb2_repeater { 722 vdd18-supply = <&vreg_l3d>; 723 vdd3-supply = <&vreg_l2b>; 724}; 725 726&smb2360_1_eusb2_repeater { 727 vdd18-supply = <&vreg_l3d>; 728 vdd3-supply = <&vreg_l14b>; 729}; 730 731&smb2360_2 { 732 status = "okay"; 733}; 734 735&smb2360_2_eusb2_repeater { 736 vdd18-supply = <&vreg_l3d>; 737 vdd3-supply = <&vreg_l8b>; 738}; 739 740&tlmm { 741 gpio-reserved-ranges = <44 4>, /* SPI (TPM) */ 742 <238 1>; /* UFS Reset */ 743 744 hall_int_n_default: hall-int-n-state { 745 pins = "gpio2"; 746 function = "gpio"; 747 bias-disable; 748 }; 749 750 nvme_reg_en: nvme-reg-en-state { 751 pins = "gpio18"; 752 function = "gpio"; 753 drive-strength = <2>; 754 bias-disable; 755 }; 756 757 edp_reg_en: edp-reg-en-state { 758 pins = "gpio70"; 759 function = "gpio"; 760 drive-strength = <16>; 761 bias-disable; 762 }; 763 764 ssam_state: ssam-state-state { 765 pins = "gpio91"; 766 function = "gpio"; 767 bias-disable; 768 }; 769 770 pcie6a_default: pcie6a-default-state { 771 perst-n-pins { 772 pins = "gpio152"; 773 function = "gpio"; 774 drive-strength = <2>; 775 bias-disable; 776 }; 777 778 clkreq-n-pins { 779 pins = "gpio153"; 780 function = "pcie6a_clk"; 781 drive-strength = <2>; 782 bias-pull-up; 783 }; 784 785 wake-n-pins { 786 pins = "gpio154"; 787 function = "gpio"; 788 drive-strength = <2>; 789 bias-pull-up; 790 }; 791 }; 792 793 cam_indicator_en: cam-indicator-en-state { 794 pins = "gpio225"; 795 function = "gpio"; 796 drive-strength = <2>; 797 bias-disable; 798 }; 799}; 800 801&uart2 { 802 status = "okay"; 803 804 embedded-controller { 805 compatible = "microsoft,surface-sam"; 806 807 interrupts-extended = <&tlmm 91 IRQ_TYPE_EDGE_RISING>; 808 809 current-speed = <4000000>; 810 811 pinctrl-0 = <&ssam_state>; 812 pinctrl-names = "default"; 813 }; 814}; 815 816&usb_1_ss0_hsphy { 817 vdd-supply = <&vreg_l3j>; 818 vdda12-supply = <&vreg_l2j>; 819 820 phys = <&smb2360_0_eusb2_repeater>; 821 822 status = "okay"; 823}; 824 825&usb_1_ss0_qmpphy { 826 vdda-phy-supply = <&vreg_l3e>; 827 vdda-pll-supply = <&vreg_l1j>; 828 829 status = "okay"; 830}; 831 832&usb_1_ss0 { 833 status = "okay"; 834}; 835 836&usb_1_ss0_dwc3 { 837 dr_mode = "host"; 838}; 839 840&usb_1_ss0_dwc3_hs { 841 remote-endpoint = <&pmic_glink_ss0_hs_in>; 842}; 843 844&usb_1_ss0_qmpphy_out { 845 remote-endpoint = <&pmic_glink_ss0_ss_in>; 846}; 847 848&usb_1_ss1_hsphy { 849 vdd-supply = <&vreg_l3j>; 850 vdda12-supply = <&vreg_l2j>; 851 852 phys = <&smb2360_1_eusb2_repeater>; 853 854 status = "okay"; 855}; 856 857&usb_1_ss1_qmpphy { 858 vdda-phy-supply = <&vreg_l3e>; 859 vdda-pll-supply = <&vreg_l2d>; 860 861 status = "okay"; 862}; 863 864&usb_1_ss1 { 865 status = "okay"; 866}; 867 868&usb_1_ss1_dwc3 { 869 dr_mode = "host"; 870}; 871 872&usb_1_ss1_dwc3_hs { 873 remote-endpoint = <&pmic_glink_ss1_hs_in>; 874}; 875 876&usb_1_ss1_qmpphy_out { 877 remote-endpoint = <&pmic_glink_ss1_ss_in>; 878}; 879 880/* MP0 goes to the Surface Connector, MP1 goes to the USB-A port */ 881&usb_mp { 882 status = "okay"; 883}; 884 885&usb_mp_hsphy0 { 886 vdd-supply = <&vreg_l2e>; 887 vdda12-supply = <&vreg_l2j>; 888 889 phys = <&smb2360_2_eusb2_repeater>; 890 891 status = "okay"; 892}; 893 894&usb_mp_hsphy1 { 895 vdd-supply = <&vreg_l2e>; 896 vdda12-supply = <&vreg_l2j>; 897 898 phys = <&ptn3222>; 899 900 status = "okay"; 901}; 902 903&usb_mp_qmpphy0 { 904 vdda-phy-supply = <&vreg_l3e>; 905 vdda-pll-supply = <&vreg_l3c>; 906 907 status = "okay"; 908}; 909 910&usb_mp_qmpphy1 { 911 vdda-phy-supply = <&vreg_l3e>; 912 vdda-pll-supply = <&vreg_l3c>; 913 914 status = "okay"; 915}; 916