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