1// SPDX-License-Identifier: BSD-3-Clause 2/* 3 * Copyright (c) 2021, Martin Botka <martin.botka@somainline.org> 4 */ 5 6#include <dt-bindings/clock/qcom,dispcc-sm6125.h> 7#include <dt-bindings/clock/qcom,dsi-phy-28nm.h> 8#include <dt-bindings/clock/qcom,gcc-sm6125.h> 9#include <dt-bindings/clock/qcom,rpmcc.h> 10#include <dt-bindings/dma/qcom-gpi.h> 11#include <dt-bindings/gpio/gpio.h> 12#include <dt-bindings/interrupt-controller/arm-gic.h> 13#include <dt-bindings/power/qcom-rpmpd.h> 14 15/ { 16 interrupt-parent = <&intc>; 17 #address-cells = <2>; 18 #size-cells = <2>; 19 20 chosen { }; 21 22 clocks { 23 xo_board: xo-board { 24 compatible = "fixed-clock"; 25 #clock-cells = <0>; 26 clock-frequency = <19200000>; 27 }; 28 29 sleep_clk: sleep-clk { 30 compatible = "fixed-clock"; 31 #clock-cells = <0>; 32 clock-frequency = <32764>; 33 clock-output-names = "sleep_clk"; 34 }; 35 }; 36 37 cpus { 38 #address-cells = <2>; 39 #size-cells = <0>; 40 41 cpu0: cpu@0 { 42 device_type = "cpu"; 43 compatible = "qcom,kryo260"; 44 reg = <0x0 0x0>; 45 enable-method = "psci"; 46 capacity-dmips-mhz = <1024>; 47 next-level-cache = <&l2_0>; 48 l2_0: l2-cache { 49 compatible = "cache"; 50 cache-level = <2>; 51 cache-unified; 52 }; 53 }; 54 55 cpu1: cpu@1 { 56 device_type = "cpu"; 57 compatible = "qcom,kryo260"; 58 reg = <0x0 0x1>; 59 enable-method = "psci"; 60 capacity-dmips-mhz = <1024>; 61 next-level-cache = <&l2_0>; 62 }; 63 64 cpu2: cpu@2 { 65 device_type = "cpu"; 66 compatible = "qcom,kryo260"; 67 reg = <0x0 0x2>; 68 enable-method = "psci"; 69 capacity-dmips-mhz = <1024>; 70 next-level-cache = <&l2_0>; 71 }; 72 73 cpu3: cpu@3 { 74 device_type = "cpu"; 75 compatible = "qcom,kryo260"; 76 reg = <0x0 0x3>; 77 enable-method = "psci"; 78 capacity-dmips-mhz = <1024>; 79 next-level-cache = <&l2_0>; 80 }; 81 82 cpu4: cpu@100 { 83 device_type = "cpu"; 84 compatible = "qcom,kryo260"; 85 reg = <0x0 0x100>; 86 enable-method = "psci"; 87 capacity-dmips-mhz = <1638>; 88 next-level-cache = <&l2_1>; 89 l2_1: l2-cache { 90 compatible = "cache"; 91 cache-level = <2>; 92 cache-unified; 93 }; 94 }; 95 96 cpu5: cpu@101 { 97 device_type = "cpu"; 98 compatible = "qcom,kryo260"; 99 reg = <0x0 0x101>; 100 enable-method = "psci"; 101 capacity-dmips-mhz = <1638>; 102 next-level-cache = <&l2_1>; 103 }; 104 105 cpu6: cpu@102 { 106 device_type = "cpu"; 107 compatible = "qcom,kryo260"; 108 reg = <0x0 0x102>; 109 enable-method = "psci"; 110 capacity-dmips-mhz = <1638>; 111 next-level-cache = <&l2_1>; 112 }; 113 114 cpu7: cpu@103 { 115 device_type = "cpu"; 116 compatible = "qcom,kryo260"; 117 reg = <0x0 0x103>; 118 enable-method = "psci"; 119 capacity-dmips-mhz = <1638>; 120 next-level-cache = <&l2_1>; 121 }; 122 123 cpu-map { 124 cluster0 { 125 core0 { 126 cpu = <&cpu0>; 127 }; 128 129 core1 { 130 cpu = <&cpu1>; 131 }; 132 133 core2 { 134 cpu = <&cpu2>; 135 }; 136 137 core3 { 138 cpu = <&cpu3>; 139 }; 140 }; 141 142 cluster1 { 143 core0 { 144 cpu = <&cpu4>; 145 }; 146 147 core1 { 148 cpu = <&cpu5>; 149 }; 150 151 core2 { 152 cpu = <&cpu6>; 153 }; 154 155 core3 { 156 cpu = <&cpu7>; 157 }; 158 }; 159 }; 160 }; 161 162 firmware { 163 scm: scm { 164 compatible = "qcom,scm-sm6125", "qcom,scm"; 165 #reset-cells = <1>; 166 }; 167 }; 168 169 memory@40000000 { 170 /* We expect the bootloader to fill in the size */ 171 reg = <0x0 0x40000000 0x0 0x0>; 172 device_type = "memory"; 173 }; 174 175 pmu { 176 compatible = "arm,armv8-pmuv3"; 177 interrupts = <GIC_PPI 6 IRQ_TYPE_LEVEL_HIGH>; 178 }; 179 180 psci { 181 compatible = "arm,psci-1.0"; 182 method = "smc"; 183 }; 184 185 rpm: remoteproc { 186 compatible = "qcom,sm6125-rpm-proc", "qcom,rpm-proc"; 187 188 glink-edge { 189 compatible = "qcom,glink-rpm"; 190 191 interrupts = <GIC_SPI 194 IRQ_TYPE_EDGE_RISING>; 192 qcom,rpm-msg-ram = <&rpm_msg_ram>; 193 mboxes = <&apcs_glb 0>; 194 195 rpm_requests: rpm-requests { 196 compatible = "qcom,rpm-sm6125", "qcom,glink-smd-rpm"; 197 qcom,glink-channels = "rpm_requests"; 198 199 rpmcc: clock-controller { 200 compatible = "qcom,rpmcc-sm6125", "qcom,rpmcc"; 201 #clock-cells = <1>; 202 clocks = <&xo_board>; 203 clock-names = "xo"; 204 }; 205 206 rpmpd: power-controller { 207 compatible = "qcom,sm6125-rpmpd"; 208 #power-domain-cells = <1>; 209 operating-points-v2 = <&rpmpd_opp_table>; 210 211 rpmpd_opp_table: opp-table { 212 compatible = "operating-points-v2"; 213 214 rpmpd_opp_ret: opp1 { 215 opp-level = <RPM_SMD_LEVEL_RETENTION>; 216 }; 217 218 rpmpd_opp_ret_plus: opp2 { 219 opp-level = <RPM_SMD_LEVEL_RETENTION_PLUS>; 220 }; 221 222 rpmpd_opp_min_svs: opp3 { 223 opp-level = <RPM_SMD_LEVEL_MIN_SVS>; 224 }; 225 226 rpmpd_opp_low_svs: opp4 { 227 opp-level = <RPM_SMD_LEVEL_LOW_SVS>; 228 }; 229 230 rpmpd_opp_svs: opp5 { 231 opp-level = <RPM_SMD_LEVEL_SVS>; 232 }; 233 234 rpmpd_opp_svs_plus: opp6 { 235 opp-level = <RPM_SMD_LEVEL_SVS_PLUS>; 236 }; 237 238 rpmpd_opp_nom: opp7 { 239 opp-level = <RPM_SMD_LEVEL_NOM>; 240 }; 241 242 rpmpd_opp_nom_plus: opp8 { 243 opp-level = <RPM_SMD_LEVEL_NOM_PLUS>; 244 }; 245 246 rpmpd_opp_turbo: opp9 { 247 opp-level = <RPM_SMD_LEVEL_TURBO>; 248 }; 249 250 rpmpd_opp_turbo_no_cpr: opp10 { 251 opp-level = <RPM_SMD_LEVEL_TURBO_NO_CPR>; 252 }; 253 }; 254 }; 255 }; 256 }; 257 }; 258 259 reserved_memory: reserved-memory { 260 #address-cells = <2>; 261 #size-cells = <2>; 262 ranges; 263 264 hyp_mem: memory@45700000 { 265 reg = <0x0 0x45700000 0x0 0x600000>; 266 no-map; 267 }; 268 269 xbl_aop_mem: memory@45e00000 { 270 reg = <0x0 0x45e00000 0x0 0x140000>; 271 no-map; 272 }; 273 274 sec_apps_mem: memory@45fff000 { 275 reg = <0x0 0x45fff000 0x0 0x1000>; 276 no-map; 277 }; 278 279 smem_mem: memory@46000000 { 280 reg = <0x0 0x46000000 0x0 0x200000>; 281 no-map; 282 }; 283 284 reserved_mem1: memory@46200000 { 285 reg = <0x0 0x46200000 0x0 0x2d00000>; 286 no-map; 287 }; 288 289 camera_mem: memory@4ab00000 { 290 reg = <0x0 0x4ab00000 0x0 0x500000>; 291 no-map; 292 }; 293 294 modem_mem: memory@4b000000 { 295 reg = <0x0 0x4b000000 0x0 0x7e00000>; 296 no-map; 297 }; 298 299 venus_mem: memory@52e00000 { 300 reg = <0x0 0x52e00000 0x0 0x500000>; 301 no-map; 302 }; 303 304 wlan_msa_mem: memory@53300000 { 305 reg = <0x0 0x53300000 0x0 0x200000>; 306 no-map; 307 }; 308 309 cdsp_mem: memory@53500000 { 310 reg = <0x0 0x53500000 0x0 0x1e00000>; 311 no-map; 312 }; 313 314 adsp_pil_mem: memory@55300000 { 315 reg = <0x0 0x55300000 0x0 0x1e00000>; 316 no-map; 317 }; 318 319 ipa_fw_mem: memory@57100000 { 320 reg = <0x0 0x57100000 0x0 0x10000>; 321 no-map; 322 }; 323 324 ipa_gsi_mem: memory@57110000 { 325 reg = <0x0 0x57110000 0x0 0x5000>; 326 no-map; 327 }; 328 329 gpu_mem: memory@57115000 { 330 reg = <0x0 0x57115000 0x0 0x2000>; 331 no-map; 332 }; 333 334 cont_splash_mem: memory@5c000000 { 335 reg = <0x0 0x5c000000 0x0 0x00f00000>; 336 no-map; 337 }; 338 339 dfps_data_mem: memory@5cf00000 { 340 reg = <0x0 0x5cf00000 0x0 0x0100000>; 341 no-map; 342 }; 343 344 cdsp_sec_mem: memory@5f800000 { 345 reg = <0x0 0x5f800000 0x0 0x1e00000>; 346 no-map; 347 }; 348 349 qseecom_mem: memory@5e400000 { 350 reg = <0x0 0x5e400000 0x0 0x1400000>; 351 no-map; 352 }; 353 354 sdsp_mem: memory@f3000000 { 355 reg = <0x0 0xf3000000 0x0 0x400000>; 356 no-map; 357 }; 358 359 adsp_mem: memory@f3400000 { 360 reg = <0x0 0xf3400000 0x0 0x800000>; 361 no-map; 362 }; 363 364 qseecom_ta_mem: memory@13fc00000 { 365 reg = <0x1 0x3fc00000 0x0 0x400000>; 366 no-map; 367 }; 368 }; 369 370 smem: smem { 371 compatible = "qcom,smem"; 372 memory-region = <&smem_mem>; 373 hwlocks = <&tcsr_mutex 3>; 374 }; 375 376 soc@0 { 377 #address-cells = <1>; 378 #size-cells = <1>; 379 ranges = <0x00 0x00 0x00 0xffffffff>; 380 compatible = "simple-bus"; 381 382 tcsr_mutex: hwlock@340000 { 383 compatible = "qcom,tcsr-mutex"; 384 reg = <0x00340000 0x20000>; 385 #hwlock-cells = <1>; 386 }; 387 388 tlmm: pinctrl@500000 { 389 compatible = "qcom,sm6125-tlmm"; 390 reg = <0x00500000 0x400000>, 391 <0x00900000 0x400000>, 392 <0x00d00000 0x400000>; 393 reg-names = "west", "south", "east"; 394 interrupts = <GIC_SPI 227 IRQ_TYPE_LEVEL_HIGH>; 395 gpio-controller; 396 gpio-ranges = <&tlmm 0 0 134>; 397 #gpio-cells = <2>; 398 interrupt-controller; 399 #interrupt-cells = <2>; 400 401 sdc2_off_state: sdc2-off-state { 402 clk-pins { 403 pins = "sdc2_clk"; 404 drive-strength = <2>; 405 bias-disable; 406 }; 407 408 cmd-pins { 409 pins = "sdc2_cmd"; 410 drive-strength = <2>; 411 bias-pull-up; 412 }; 413 414 data-pins { 415 pins = "sdc2_data"; 416 drive-strength = <2>; 417 bias-pull-up; 418 }; 419 }; 420 421 sdc2_on_state: sdc2-on-state { 422 clk-pins { 423 pins = "sdc2_clk"; 424 drive-strength = <16>; 425 bias-disable; 426 }; 427 428 cmd-pins { 429 pins = "sdc2_cmd"; 430 drive-strength = <10>; 431 bias-pull-up; 432 }; 433 434 data-pins { 435 pins = "sdc2_data"; 436 drive-strength = <10>; 437 bias-pull-up; 438 }; 439 }; 440 441 qup_i2c0_default: qup-i2c0-default-state { 442 pins = "gpio0", "gpio1"; 443 function = "qup00"; 444 drive-strength = <2>; 445 bias-disable; 446 }; 447 448 qup_i2c0_sleep: qup-i2c0-sleep-state { 449 pins = "gpio0", "gpio1"; 450 function = "gpio"; 451 drive-strength = <2>; 452 bias-pull-up; 453 }; 454 455 qup_i2c1_default: qup-i2c1-default-state { 456 pins = "gpio4", "gpio5"; 457 function = "qup01"; 458 drive-strength = <2>; 459 bias-disable; 460 }; 461 462 qup_i2c1_sleep: qup-i2c1-sleep-state { 463 pins = "gpio4", "gpio5"; 464 function = "gpio"; 465 drive-strength = <2>; 466 bias-pull-up; 467 }; 468 469 qup_i2c2_default: qup-i2c2-default-state { 470 pins = "gpio6", "gpio7"; 471 function = "qup02"; 472 drive-strength = <2>; 473 bias-disable; 474 }; 475 476 qup_i2c2_sleep: qup-i2c2-sleep-state { 477 pins = "gpio6", "gpio7"; 478 function = "gpio"; 479 drive-strength = <2>; 480 bias-pull-up; 481 }; 482 483 qup_i2c3_default: qup-i2c3-default-state { 484 pins = "gpio14", "gpio15"; 485 function = "qup03"; 486 drive-strength = <2>; 487 bias-disable; 488 }; 489 490 qup_i2c3_sleep: qup-i2c3-sleep-state { 491 pins = "gpio14", "gpio15"; 492 function = "gpio"; 493 drive-strength = <2>; 494 bias-pull-up; 495 }; 496 497 qup_i2c4_default: qup-i2c4-default-state { 498 pins = "gpio16", "gpio17"; 499 function = "qup04"; 500 drive-strength = <2>; 501 bias-disable; 502 }; 503 504 qup_i2c4_sleep: qup-i2c4-sleep-state { 505 pins = "gpio16", "gpio17"; 506 function = "gpio"; 507 drive-strength = <2>; 508 bias-pull-up; 509 }; 510 511 qup_i2c5_default: qup-i2c5-default-state { 512 pins = "gpio22", "gpio23"; 513 function = "qup10"; 514 drive-strength = <2>; 515 bias-disable; 516 }; 517 518 qup_i2c5_sleep: qup-i2c5-sleep-state { 519 pins = "gpio22", "gpio23"; 520 function = "gpio"; 521 drive-strength = <2>; 522 bias-pull-up; 523 }; 524 525 qup_i2c6_default: qup-i2c6-default-state { 526 pins = "gpio30", "gpio31"; 527 function = "qup11"; 528 drive-strength = <2>; 529 bias-disable; 530 }; 531 532 qup_i2c6_sleep: qup-i2c6-sleep-state { 533 pins = "gpio30", "gpio31"; 534 function = "gpio"; 535 drive-strength = <2>; 536 bias-pull-up; 537 }; 538 539 qup_i2c7_default: qup-i2c7-default-state { 540 pins = "gpio28", "gpio29"; 541 function = "qup12"; 542 drive-strength = <2>; 543 bias-disable; 544 }; 545 546 qup_i2c7_sleep: qup-i2c7-sleep-state { 547 pins = "gpio28", "gpio29"; 548 function = "gpio"; 549 drive-strength = <2>; 550 bias-pull-up; 551 }; 552 553 qup_i2c8_default: qup-i2c8-default-state { 554 pins = "gpio18", "gpio19"; 555 function = "qup13"; 556 drive-strength = <2>; 557 bias-disable; 558 }; 559 560 qup_i2c8_sleep: qup-i2c8-sleep-state { 561 pins = "gpio18", "gpio19"; 562 function = "gpio"; 563 drive-strength = <2>; 564 bias-pull-up; 565 }; 566 567 qup_i2c9_default: qup-i2c9-default-state { 568 pins = "gpio10", "gpio11"; 569 function = "qup14"; 570 drive-strength = <2>; 571 bias-disable; 572 }; 573 574 qup_i2c9_sleep: qup-i2c9-sleep-state { 575 pins = "gpio10", "gpio11"; 576 function = "gpio"; 577 drive-strength = <2>; 578 bias-pull-up; 579 }; 580 581 qup_spi0_default: qup-spi0-default-state { 582 pins = "gpio0", "gpio1", "gpio2", "gpio3"; 583 function = "qup00"; 584 drive-strength = <6>; 585 bias-disable; 586 }; 587 588 qup_spi0_sleep: qup-spi0-sleep-state { 589 pins = "gpio0", "gpio1", "gpio2", "gpio3"; 590 function = "gpio"; 591 drive-strength = <6>; 592 bias-disable; 593 }; 594 595 qup_spi2_default: qup-spi2-default-state { 596 pins = "gpio6", "gpio7", "gpio8", "gpio9"; 597 function = "qup02"; 598 drive-strength = <6>; 599 bias-disable; 600 }; 601 602 qup_spi2_sleep: qup-spi2-sleep-state { 603 pins = "gpio6", "gpio7", "gpio8", "gpio9"; 604 function = "gpio"; 605 drive-strength = <6>; 606 bias-disable; 607 }; 608 609 qup_spi5_default: qup-spi5-default-state { 610 pins = "gpio22", "gpio23", "gpio24", "gpio25"; 611 function = "qup10"; 612 drive-strength = <6>; 613 bias-disable; 614 }; 615 616 qup_spi5_sleep: qup-spi5-sleep-state { 617 pins = "gpio22", "gpio23", "gpio24", "gpio25"; 618 function = "gpio"; 619 drive-strength = <6>; 620 bias-disable; 621 }; 622 623 qup_spi6_default: qup-spi6-default-state { 624 pins = "gpio30", "gpio31", "gpio32", "gpio33"; 625 function = "qup11"; 626 drive-strength = <6>; 627 bias-disable; 628 }; 629 630 qup_spi6_sleep: qup-spi6-sleep-state { 631 pins = "gpio30", "gpio31", "gpio32", "gpio33"; 632 function = "gpio"; 633 drive-strength = <6>; 634 bias-disable; 635 }; 636 637 qup_spi8_default: qup-spi8-default-state { 638 pins = "gpio18", "gpio19", "gpio20", "gpio21"; 639 function = "qup13"; 640 drive-strength = <6>; 641 bias-disable; 642 }; 643 644 qup_spi8_sleep: qup-spi8-sleep-state { 645 pins = "gpio18", "gpio19", "gpio20", "gpio21"; 646 function = "gpio"; 647 drive-strength = <6>; 648 bias-disable; 649 }; 650 651 qup_spi9_default: qup-spi9-default-state { 652 pins = "gpio10", "gpio11", "gpio12", "gpio13"; 653 function = "qup14"; 654 drive-strength = <6>; 655 bias-disable; 656 }; 657 658 qup_spi9_sleep: qup-spi9-sleep-state { 659 pins = "gpio10", "gpio11", "gpio12", "gpio13"; 660 function = "gpio"; 661 drive-strength = <6>; 662 bias-disable; 663 }; 664 }; 665 666 gcc: clock-controller@1400000 { 667 compatible = "qcom,gcc-sm6125"; 668 reg = <0x01400000 0x1f0000>; 669 #clock-cells = <1>; 670 #reset-cells = <1>; 671 #power-domain-cells = <1>; 672 clock-names = "bi_tcxo", "sleep_clk"; 673 clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>, <&sleep_clk>; 674 }; 675 676 hsusb_phy1: phy@1613000 { 677 compatible = "qcom,msm8996-qusb2-phy"; 678 reg = <0x01613000 0x180>; 679 #phy-cells = <0>; 680 681 clocks = <&gcc GCC_AHB2PHY_USB_CLK>, 682 <&rpmcc RPM_SMD_XO_CLK_SRC>; 683 clock-names = "cfg_ahb", "ref"; 684 685 resets = <&gcc GCC_QUSB2PHY_PRIM_BCR>; 686 status = "disabled"; 687 }; 688 689 spmi_bus: spmi@1c40000 { 690 compatible = "qcom,spmi-pmic-arb"; 691 reg = <0x01c40000 0x1100>, 692 <0x01e00000 0x2000000>, 693 <0x03e00000 0x100000>, 694 <0x03f00000 0xa0000>, 695 <0x01c0a000 0x26000>; 696 reg-names = "core", "chnls", "obsrvr", "intr", "cnfg"; 697 interrupt-names = "periph_irq"; 698 interrupts = <GIC_SPI 183 IRQ_TYPE_LEVEL_HIGH>; 699 qcom,ee = <0>; 700 qcom,channel = <0>; 701 #address-cells = <2>; 702 #size-cells = <0>; 703 interrupt-controller; 704 #interrupt-cells = <4>; 705 }; 706 707 rpm_msg_ram: sram@45f0000 { 708 compatible = "qcom,rpm-msg-ram"; 709 reg = <0x045f0000 0x7000>; 710 }; 711 712 sdhc_1: mmc@4744000 { 713 compatible = "qcom,sm6125-sdhci", "qcom,sdhci-msm-v5"; 714 reg = <0x04744000 0x1000>, <0x04745000 0x1000>; 715 reg-names = "hc", "cqhci"; 716 717 interrupts = <GIC_SPI 348 IRQ_TYPE_LEVEL_HIGH>, 718 <GIC_SPI 352 IRQ_TYPE_LEVEL_HIGH>; 719 interrupt-names = "hc_irq", "pwr_irq"; 720 721 clocks = <&gcc GCC_SDCC1_AHB_CLK>, 722 <&gcc GCC_SDCC1_APPS_CLK>, 723 <&rpmcc RPM_SMD_XO_CLK_SRC>; 724 clock-names = "iface", "core", "xo"; 725 iommus = <&apps_smmu 0x160 0x0>; 726 727 power-domains = <&rpmpd SM6125_VDDCX>; 728 729 qcom,dll-config = <0x000f642c>; 730 qcom,ddr-config = <0x80040873>; 731 732 bus-width = <8>; 733 non-removable; 734 supports-cqe; 735 736 status = "disabled"; 737 }; 738 739 sdhc_2: mmc@4784000 { 740 compatible = "qcom,sm6125-sdhci", "qcom,sdhci-msm-v5"; 741 reg = <0x04784000 0x1000>; 742 reg-names = "hc"; 743 744 interrupts = <GIC_SPI 350 IRQ_TYPE_LEVEL_HIGH>, 745 <GIC_SPI 353 IRQ_TYPE_LEVEL_HIGH>; 746 interrupt-names = "hc_irq", "pwr_irq"; 747 748 clocks = <&gcc GCC_SDCC2_AHB_CLK>, 749 <&gcc GCC_SDCC2_APPS_CLK>, 750 <&rpmcc RPM_SMD_XO_CLK_SRC>; 751 clock-names = "iface", "core", "xo"; 752 iommus = <&apps_smmu 0x180 0x0>; 753 754 pinctrl-0 = <&sdc2_on_state>; 755 pinctrl-1 = <&sdc2_off_state>; 756 pinctrl-names = "default", "sleep"; 757 758 power-domains = <&rpmpd SM6125_VDDCX>; 759 760 qcom,dll-config = <0x0007642c>; 761 qcom,ddr-config = <0x80040873>; 762 763 bus-width = <4>; 764 status = "disabled"; 765 }; 766 767 ufs_mem_hc: ufshc@4804000 { 768 compatible = "qcom,sm6125-ufshc", "qcom,ufshc", "jedec,ufs-2.0"; 769 reg = <0x04804000 0x3000>, <0x04810000 0x8000>; 770 reg-names = "std", "ice"; 771 interrupts = <GIC_SPI 356 IRQ_TYPE_LEVEL_HIGH>; 772 773 clocks = <&gcc GCC_UFS_PHY_AXI_CLK>, 774 <&gcc GCC_SYS_NOC_UFS_PHY_AXI_CLK>, 775 <&gcc GCC_UFS_PHY_AHB_CLK>, 776 <&gcc GCC_UFS_PHY_UNIPRO_CORE_CLK>, 777 <&rpmcc RPM_SMD_XO_CLK_SRC>, 778 <&gcc GCC_UFS_PHY_TX_SYMBOL_0_CLK>, 779 <&gcc GCC_UFS_PHY_RX_SYMBOL_0_CLK>, 780 <&gcc GCC_UFS_PHY_ICE_CORE_CLK>; 781 clock-names = "core_clk", 782 "bus_aggr_clk", 783 "iface_clk", 784 "core_clk_unipro", 785 "ref_clk", 786 "tx_lane0_sync_clk", 787 "rx_lane0_sync_clk", 788 "ice_core_clk"; 789 freq-table-hz = <50000000 240000000>, 790 <0 0>, 791 <0 0>, 792 <37500000 150000000>, 793 <0 0>, 794 <0 0>, 795 <0 0>, 796 <75000000 300000000>; 797 798 resets = <&gcc GCC_UFS_PHY_BCR>; 799 reset-names = "rst"; 800 #reset-cells = <1>; 801 802 phys = <&ufs_mem_phy>; 803 phy-names = "ufsphy"; 804 805 lanes-per-direction = <1>; 806 807 iommus = <&apps_smmu 0x200 0x0>; 808 809 status = "disabled"; 810 }; 811 812 ufs_mem_phy: phy@4807000 { 813 compatible = "qcom,sm6125-qmp-ufs-phy"; 814 reg = <0x04807000 0xdb8>; 815 816 clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>, 817 <&gcc GCC_UFS_PHY_PHY_AUX_CLK>, 818 <&gcc GCC_UFS_MEM_CLKREF_CLK>; 819 clock-names = "ref", 820 "ref_aux", 821 "qref"; 822 823 resets = <&ufs_mem_hc 0>; 824 reset-names = "ufsphy"; 825 826 power-domains = <&gcc UFS_PHY_GDSC>; 827 828 #phy-cells = <0>; 829 830 status = "disabled"; 831 }; 832 833 gpi_dma0: dma-controller@4a00000 { 834 compatible = "qcom,sm6125-gpi-dma", "qcom,sdm845-gpi-dma"; 835 reg = <0x04a00000 0x60000>; 836 interrupts = <GIC_SPI 335 IRQ_TYPE_LEVEL_HIGH>, 837 <GIC_SPI 336 IRQ_TYPE_LEVEL_HIGH>, 838 <GIC_SPI 337 IRQ_TYPE_LEVEL_HIGH>, 839 <GIC_SPI 338 IRQ_TYPE_LEVEL_HIGH>, 840 <GIC_SPI 339 IRQ_TYPE_LEVEL_HIGH>, 841 <GIC_SPI 340 IRQ_TYPE_LEVEL_HIGH>, 842 <GIC_SPI 341 IRQ_TYPE_LEVEL_HIGH>, 843 <GIC_SPI 342 IRQ_TYPE_LEVEL_HIGH>; 844 dma-channels = <8>; 845 dma-channel-mask = <0x1f>; 846 iommus = <&apps_smmu 0x136 0x0>; 847 #dma-cells = <3>; 848 status = "disabled"; 849 }; 850 851 qupv3_id_0: geniqup@4ac0000 { 852 compatible = "qcom,geni-se-qup"; 853 reg = <0x04ac0000 0x2000>; 854 clocks = <&gcc GCC_QUPV3_WRAP_0_M_AHB_CLK>, 855 <&gcc GCC_QUPV3_WRAP_0_S_AHB_CLK>; 856 clock-names = "m-ahb", "s-ahb"; 857 iommus = <&apps_smmu 0x123 0x0>; 858 #address-cells = <1>; 859 #size-cells = <1>; 860 ranges; 861 status = "disabled"; 862 863 i2c0: i2c@4a80000 { 864 compatible = "qcom,geni-i2c"; 865 reg = <0x04a80000 0x4000>; 866 clocks = <&gcc GCC_QUPV3_WRAP0_S0_CLK>; 867 clock-names = "se"; 868 interrupts = <GIC_SPI 327 IRQ_TYPE_LEVEL_HIGH>; 869 pinctrl-0 = <&qup_i2c0_default>; 870 pinctrl-1 = <&qup_i2c0_sleep>; 871 pinctrl-names = "default", "sleep"; 872 dmas = <&gpi_dma0 0 0 QCOM_GPI_I2C>, 873 <&gpi_dma0 1 0 QCOM_GPI_I2C>; 874 dma-names = "tx", "rx"; 875 #address-cells = <1>; 876 #size-cells = <0>; 877 status = "disabled"; 878 }; 879 880 spi0: spi@4a80000 { 881 compatible = "qcom,geni-spi"; 882 reg = <0x04a80000 0x4000>; 883 clocks = <&gcc GCC_QUPV3_WRAP0_S0_CLK>; 884 clock-names = "se"; 885 interrupts = <GIC_SPI 327 IRQ_TYPE_LEVEL_HIGH>; 886 pinctrl-0 = <&qup_spi0_default>; 887 pinctrl-1 = <&qup_spi0_sleep>; 888 pinctrl-names = "default", "sleep"; 889 dmas = <&gpi_dma0 0 0 QCOM_GPI_SPI>, 890 <&gpi_dma0 1 0 QCOM_GPI_SPI>; 891 dma-names = "tx", "rx"; 892 #address-cells = <1>; 893 #size-cells = <0>; 894 status = "disabled"; 895 }; 896 897 i2c1: i2c@4a84000 { 898 compatible = "qcom,geni-i2c"; 899 reg = <0x04a84000 0x4000>; 900 clocks = <&gcc GCC_QUPV3_WRAP0_S1_CLK>; 901 clock-names = "se"; 902 interrupts = <GIC_SPI 328 IRQ_TYPE_LEVEL_HIGH>; 903 pinctrl-0 = <&qup_i2c1_default>; 904 pinctrl-1 = <&qup_i2c1_sleep>; 905 pinctrl-names = "default", "sleep"; 906 dmas = <&gpi_dma0 0 1 QCOM_GPI_I2C>, 907 <&gpi_dma0 1 1 QCOM_GPI_I2C>; 908 dma-names = "tx", "rx"; 909 #address-cells = <1>; 910 #size-cells = <0>; 911 status = "disabled"; 912 }; 913 914 i2c2: i2c@4a88000 { 915 compatible = "qcom,geni-i2c"; 916 reg = <0x04a88000 0x4000>; 917 clocks = <&gcc GCC_QUPV3_WRAP0_S2_CLK>; 918 clock-names = "se"; 919 interrupts = <GIC_SPI 329 IRQ_TYPE_LEVEL_HIGH>; 920 pinctrl-0 = <&qup_i2c2_default>; 921 pinctrl-1 = <&qup_i2c2_sleep>; 922 pinctrl-names = "default", "sleep"; 923 dmas = <&gpi_dma0 0 2 QCOM_GPI_I2C>, 924 <&gpi_dma0 1 2 QCOM_GPI_I2C>; 925 dma-names = "tx", "rx"; 926 #address-cells = <1>; 927 #size-cells = <0>; 928 status = "disabled"; 929 }; 930 931 spi2: spi@4a88000 { 932 compatible = "qcom,geni-spi"; 933 reg = <0x04a88000 0x4000>; 934 clocks = <&gcc GCC_QUPV3_WRAP0_S2_CLK>; 935 clock-names = "se"; 936 interrupts = <GIC_SPI 329 IRQ_TYPE_LEVEL_HIGH>; 937 pinctrl-0 = <&qup_spi2_default>; 938 pinctrl-1 = <&qup_spi2_sleep>; 939 pinctrl-names = "default", "sleep"; 940 dmas = <&gpi_dma0 0 2 QCOM_GPI_SPI>, 941 <&gpi_dma0 1 2 QCOM_GPI_SPI>; 942 dma-names = "tx", "rx"; 943 #address-cells = <1>; 944 #size-cells = <0>; 945 status = "disabled"; 946 }; 947 948 i2c3: i2c@4a8c000 { 949 compatible = "qcom,geni-i2c"; 950 reg = <0x04a8c000 0x4000>; 951 clocks = <&gcc GCC_QUPV3_WRAP0_S3_CLK>; 952 clock-names = "se"; 953 interrupts = <GIC_SPI 330 IRQ_TYPE_LEVEL_HIGH>; 954 pinctrl-0 = <&qup_i2c3_default>; 955 pinctrl-1 = <&qup_i2c3_sleep>; 956 pinctrl-names = "default", "sleep"; 957 dmas = <&gpi_dma0 0 3 QCOM_GPI_I2C>, 958 <&gpi_dma0 1 3 QCOM_GPI_I2C>; 959 dma-names = "tx", "rx"; 960 #address-cells = <1>; 961 #size-cells = <0>; 962 status = "disabled"; 963 }; 964 965 i2c4: i2c@4a90000 { 966 compatible = "qcom,geni-i2c"; 967 reg = <0x04a90000 0x4000>; 968 clocks = <&gcc GCC_QUPV3_WRAP0_S4_CLK>; 969 clock-names = "se"; 970 interrupts = <GIC_SPI 331 IRQ_TYPE_LEVEL_HIGH>; 971 pinctrl-0 = <&qup_i2c4_default>; 972 pinctrl-1 = <&qup_i2c4_sleep>; 973 pinctrl-names = "default", "sleep"; 974 dmas = <&gpi_dma0 0 4 QCOM_GPI_I2C>, 975 <&gpi_dma0 1 4 QCOM_GPI_I2C>; 976 dma-names = "tx", "rx"; 977 #address-cells = <1>; 978 #size-cells = <0>; 979 status = "disabled"; 980 }; 981 }; 982 983 gpi_dma1: dma-controller@4c00000 { 984 compatible = "qcom,sm6125-gpi-dma", "qcom,sdm845-gpi-dma"; 985 reg = <0x04c00000 0x60000>; 986 interrupts = <GIC_SPI 314 IRQ_TYPE_LEVEL_HIGH>, 987 <GIC_SPI 315 IRQ_TYPE_LEVEL_HIGH>, 988 <GIC_SPI 316 IRQ_TYPE_LEVEL_HIGH>, 989 <GIC_SPI 317 IRQ_TYPE_LEVEL_HIGH>, 990 <GIC_SPI 318 IRQ_TYPE_LEVEL_HIGH>, 991 <GIC_SPI 319 IRQ_TYPE_LEVEL_HIGH>, 992 <GIC_SPI 320 IRQ_TYPE_LEVEL_HIGH>, 993 <GIC_SPI 321 IRQ_TYPE_LEVEL_HIGH>; 994 dma-channels = <8>; 995 dma-channel-mask = <0x0f>; 996 iommus = <&apps_smmu 0x156 0x0>; 997 #dma-cells = <3>; 998 status = "disabled"; 999 }; 1000 1001 qupv3_id_1: geniqup@4cc0000 { 1002 compatible = "qcom,geni-se-qup"; 1003 reg = <0x04cc0000 0x2000>; 1004 clocks = <&gcc GCC_QUPV3_WRAP_1_M_AHB_CLK>, 1005 <&gcc GCC_QUPV3_WRAP_1_S_AHB_CLK>; 1006 clock-names = "m-ahb", "s-ahb"; 1007 iommus = <&apps_smmu 0x143 0x0>; 1008 #address-cells = <1>; 1009 #size-cells = <1>; 1010 ranges; 1011 status = "disabled"; 1012 1013 i2c5: i2c@4c80000 { 1014 compatible = "qcom,geni-i2c"; 1015 reg = <0x04c80000 0x4000>; 1016 clocks = <&gcc GCC_QUPV3_WRAP1_S0_CLK>; 1017 clock-names = "se"; 1018 interrupts = <GIC_SPI 308 IRQ_TYPE_LEVEL_HIGH>; 1019 pinctrl-0 = <&qup_i2c5_default>; 1020 pinctrl-1 = <&qup_i2c5_sleep>; 1021 pinctrl-names = "default", "sleep"; 1022 dmas = <&gpi_dma1 0 0 QCOM_GPI_I2C>, 1023 <&gpi_dma1 1 0 QCOM_GPI_I2C>; 1024 dma-names = "tx", "rx"; 1025 #address-cells = <1>; 1026 #size-cells = <0>; 1027 status = "disabled"; 1028 }; 1029 1030 spi5: spi@4c80000 { 1031 compatible = "qcom,geni-spi"; 1032 reg = <0x04c80000 0x4000>; 1033 clocks = <&gcc GCC_QUPV3_WRAP1_S0_CLK>; 1034 clock-names = "se"; 1035 interrupts = <GIC_SPI 308 IRQ_TYPE_LEVEL_HIGH>; 1036 pinctrl-0 = <&qup_spi5_default>; 1037 pinctrl-1 = <&qup_spi5_sleep>; 1038 pinctrl-names = "default", "sleep"; 1039 dmas = <&gpi_dma1 0 0 QCOM_GPI_SPI>, 1040 <&gpi_dma1 1 0 QCOM_GPI_SPI>; 1041 dma-names = "tx", "rx"; 1042 #address-cells = <1>; 1043 #size-cells = <0>; 1044 status = "disabled"; 1045 }; 1046 1047 i2c6: i2c@4c84000 { 1048 compatible = "qcom,geni-i2c"; 1049 reg = <0x04c84000 0x4000>; 1050 clocks = <&gcc GCC_QUPV3_WRAP1_S1_CLK>; 1051 clock-names = "se"; 1052 interrupts = <GIC_SPI 309 IRQ_TYPE_LEVEL_HIGH>; 1053 pinctrl-0 = <&qup_i2c6_default>; 1054 pinctrl-1 = <&qup_i2c6_sleep>; 1055 pinctrl-names = "default", "sleep"; 1056 dmas = <&gpi_dma1 0 1 QCOM_GPI_I2C>, 1057 <&gpi_dma1 1 1 QCOM_GPI_I2C>; 1058 dma-names = "tx", "rx"; 1059 #address-cells = <1>; 1060 #size-cells = <0>; 1061 status = "disabled"; 1062 }; 1063 1064 spi6: spi@4c84000 { 1065 compatible = "qcom,geni-spi"; 1066 reg = <0x04c84000 0x4000>; 1067 clocks = <&gcc GCC_QUPV3_WRAP1_S1_CLK>; 1068 clock-names = "se"; 1069 interrupts = <GIC_SPI 309 IRQ_TYPE_LEVEL_HIGH>; 1070 pinctrl-0 = <&qup_spi6_default>; 1071 pinctrl-1 = <&qup_spi6_sleep>; 1072 pinctrl-names = "default", "sleep"; 1073 dmas = <&gpi_dma1 0 1 QCOM_GPI_SPI>, 1074 <&gpi_dma1 1 1 QCOM_GPI_SPI>; 1075 dma-names = "tx", "rx"; 1076 #address-cells = <1>; 1077 #size-cells = <0>; 1078 status = "disabled"; 1079 }; 1080 1081 i2c7: i2c@4c88000 { 1082 compatible = "qcom,geni-i2c"; 1083 reg = <0x04c88000 0x4000>; 1084 clocks = <&gcc GCC_QUPV3_WRAP1_S2_CLK>; 1085 clock-names = "se"; 1086 interrupts = <GIC_SPI 310 IRQ_TYPE_LEVEL_HIGH>; 1087 pinctrl-0 = <&qup_i2c7_default>; 1088 pinctrl-1 = <&qup_i2c7_sleep>; 1089 pinctrl-names = "default", "sleep"; 1090 dmas = <&gpi_dma1 0 2 QCOM_GPI_I2C>, 1091 <&gpi_dma1 1 2 QCOM_GPI_I2C>; 1092 dma-names = "tx", "rx"; 1093 #address-cells = <1>; 1094 #size-cells = <0>; 1095 status = "disabled"; 1096 }; 1097 1098 i2c8: i2c@4c8c000 { 1099 compatible = "qcom,geni-i2c"; 1100 reg = <0x04c8c000 0x4000>; 1101 clocks = <&gcc GCC_QUPV3_WRAP1_S3_CLK>; 1102 clock-names = "se"; 1103 interrupts = <GIC_SPI 311 IRQ_TYPE_LEVEL_HIGH>; 1104 pinctrl-0 = <&qup_i2c8_default>; 1105 pinctrl-1 = <&qup_i2c8_sleep>; 1106 pinctrl-names = "default", "sleep"; 1107 dmas = <&gpi_dma1 0 3 QCOM_GPI_I2C>, 1108 <&gpi_dma1 1 3 QCOM_GPI_I2C>; 1109 dma-names = "tx", "rx"; 1110 #address-cells = <1>; 1111 #size-cells = <0>; 1112 status = "disabled"; 1113 }; 1114 1115 spi8: spi@4c8c000 { 1116 compatible = "qcom,geni-spi"; 1117 reg = <0x04c8c000 0x4000>; 1118 clocks = <&gcc GCC_QUPV3_WRAP1_S3_CLK>; 1119 clock-names = "se"; 1120 interrupts = <GIC_SPI 311 IRQ_TYPE_LEVEL_HIGH>; 1121 pinctrl-0 = <&qup_spi8_default>; 1122 pinctrl-1 = <&qup_spi8_sleep>; 1123 pinctrl-names = "default", "sleep"; 1124 dmas = <&gpi_dma1 0 3 QCOM_GPI_SPI>, 1125 <&gpi_dma1 1 3 QCOM_GPI_SPI>; 1126 dma-names = "tx", "rx"; 1127 #address-cells = <1>; 1128 #size-cells = <0>; 1129 status = "disabled"; 1130 }; 1131 1132 i2c9: i2c@4c90000 { 1133 compatible = "qcom,geni-i2c"; 1134 reg = <0x04c90000 0x4000>; 1135 clocks = <&gcc GCC_QUPV3_WRAP1_S4_CLK>; 1136 clock-names = "se"; 1137 interrupts = <GIC_SPI 312 IRQ_TYPE_LEVEL_HIGH>; 1138 pinctrl-0 = <&qup_i2c9_default>; 1139 pinctrl-1 = <&qup_i2c9_sleep>; 1140 pinctrl-names = "default", "sleep"; 1141 dmas = <&gpi_dma1 0 4 QCOM_GPI_I2C>, 1142 <&gpi_dma1 1 4 QCOM_GPI_I2C>; 1143 dma-names = "tx", "rx"; 1144 #address-cells = <1>; 1145 #size-cells = <0>; 1146 status = "disabled"; 1147 }; 1148 1149 spi9: spi@4c90000 { 1150 compatible = "qcom,geni-spi"; 1151 reg = <0x04c90000 0x4000>; 1152 clocks = <&gcc GCC_QUPV3_WRAP1_S4_CLK>; 1153 clock-names = "se"; 1154 interrupts = <GIC_SPI 312 IRQ_TYPE_LEVEL_HIGH>; 1155 pinctrl-0 = <&qup_spi9_default>; 1156 pinctrl-1 = <&qup_spi9_sleep>; 1157 pinctrl-names = "default", "sleep"; 1158 dmas = <&gpi_dma1 0 4 QCOM_GPI_SPI>, 1159 <&gpi_dma1 1 4 QCOM_GPI_SPI>; 1160 dma-names = "tx", "rx"; 1161 #address-cells = <1>; 1162 #size-cells = <0>; 1163 status = "disabled"; 1164 }; 1165 }; 1166 1167 usb3: usb@4ef8800 { 1168 compatible = "qcom,sm6125-dwc3", "qcom,dwc3"; 1169 reg = <0x04ef8800 0x400>; 1170 #address-cells = <1>; 1171 #size-cells = <1>; 1172 ranges; 1173 1174 clocks = <&gcc GCC_CFG_NOC_USB3_PRIM_AXI_CLK>, 1175 <&gcc GCC_USB30_PRIM_MASTER_CLK>, 1176 <&gcc GCC_SYS_NOC_USB3_PRIM_AXI_CLK>, 1177 <&gcc GCC_USB30_PRIM_SLEEP_CLK>, 1178 <&gcc GCC_USB30_PRIM_MOCK_UTMI_CLK>, 1179 <&gcc GCC_USB3_PRIM_CLKREF_CLK>; 1180 clock-names = "cfg_noc", 1181 "core", 1182 "iface", 1183 "sleep", 1184 "mock_utmi", 1185 "xo"; 1186 1187 assigned-clocks = <&gcc GCC_USB30_PRIM_MOCK_UTMI_CLK>, 1188 <&gcc GCC_USB30_PRIM_MASTER_CLK>; 1189 assigned-clock-rates = <19200000>, <66666667>; 1190 1191 interrupts = <GIC_SPI 302 IRQ_TYPE_LEVEL_HIGH>, 1192 <GIC_SPI 260 IRQ_TYPE_LEVEL_HIGH>, 1193 <GIC_SPI 254 IRQ_TYPE_LEVEL_HIGH>, 1194 <GIC_SPI 422 IRQ_TYPE_LEVEL_HIGH>; 1195 interrupt-names = "pwr_event", 1196 "qusb2_phy", 1197 "hs_phy_irq", 1198 "ss_phy_irq"; 1199 1200 power-domains = <&gcc USB30_PRIM_GDSC>; 1201 qcom,select-utmi-as-pipe-clk; 1202 status = "disabled"; 1203 1204 usb3_dwc3: usb@4e00000 { 1205 compatible = "snps,dwc3"; 1206 reg = <0x04e00000 0xcd00>; 1207 interrupts = <GIC_SPI 255 IRQ_TYPE_LEVEL_HIGH>; 1208 iommus = <&apps_smmu 0x100 0x0>; 1209 phys = <&hsusb_phy1>; 1210 phy-names = "usb2-phy"; 1211 snps,dis_u2_susphy_quirk; 1212 snps,dis_enblslpm_quirk; 1213 snps,dis-u1-entry-quirk; 1214 snps,dis-u2-entry-quirk; 1215 maximum-speed = "high-speed"; 1216 dr_mode = "peripheral"; 1217 }; 1218 }; 1219 1220 sram@4690000 { 1221 compatible = "qcom,rpm-stats"; 1222 reg = <0x04690000 0x10000>; 1223 }; 1224 1225 mdss: display-subsystem@5e00000 { 1226 compatible = "qcom,sm6125-mdss"; 1227 reg = <0x05e00000 0x1000>; 1228 reg-names = "mdss"; 1229 1230 interrupts = <GIC_SPI 186 IRQ_TYPE_LEVEL_HIGH>; 1231 interrupt-controller; 1232 #interrupt-cells = <1>; 1233 1234 clocks = <&gcc GCC_DISP_AHB_CLK>, 1235 <&dispcc DISP_CC_MDSS_AHB_CLK>, 1236 <&dispcc DISP_CC_MDSS_MDP_CLK>; 1237 clock-names = "iface", 1238 "ahb", 1239 "core"; 1240 1241 power-domains = <&dispcc MDSS_GDSC>; 1242 1243 iommus = <&apps_smmu 0x400 0x0>; 1244 1245 #address-cells = <1>; 1246 #size-cells = <1>; 1247 ranges; 1248 1249 status = "disabled"; 1250 1251 mdss_mdp: display-controller@5e01000 { 1252 compatible = "qcom,sm6125-dpu"; 1253 reg = <0x05e01000 0x83208>, 1254 <0x05eb0000 0x3000>; 1255 reg-names = "mdp", "vbif"; 1256 1257 interrupt-parent = <&mdss>; 1258 interrupts = <0>; 1259 1260 clocks = <&gcc GCC_DISP_HF_AXI_CLK>, 1261 <&dispcc DISP_CC_MDSS_AHB_CLK>, 1262 <&dispcc DISP_CC_MDSS_ROT_CLK>, 1263 <&dispcc DISP_CC_MDSS_MDP_LUT_CLK>, 1264 <&dispcc DISP_CC_MDSS_MDP_CLK>, 1265 <&dispcc DISP_CC_MDSS_VSYNC_CLK>, 1266 <&gcc GCC_DISP_THROTTLE_CORE_CLK>; 1267 clock-names = "bus", 1268 "iface", 1269 "rot", 1270 "lut", 1271 "core", 1272 "vsync", 1273 "throttle"; 1274 assigned-clocks = <&dispcc DISP_CC_MDSS_VSYNC_CLK>; 1275 assigned-clock-rates = <19200000>; 1276 1277 operating-points-v2 = <&mdp_opp_table>; 1278 power-domains = <&rpmpd SM6125_VDDCX>; 1279 1280 ports { 1281 #address-cells = <1>; 1282 #size-cells = <0>; 1283 1284 port@0 { 1285 reg = <0>; 1286 dpu_intf1_out: endpoint { 1287 remote-endpoint = <&mdss_dsi0_in>; 1288 }; 1289 }; 1290 }; 1291 1292 mdp_opp_table: opp-table { 1293 compatible = "operating-points-v2"; 1294 1295 opp-192000000 { 1296 opp-hz = /bits/ 64 <192000000>; 1297 required-opps = <&rpmpd_opp_low_svs>; 1298 }; 1299 1300 opp-256000000 { 1301 opp-hz = /bits/ 64 <256000000>; 1302 required-opps = <&rpmpd_opp_svs>; 1303 }; 1304 1305 opp-307200000 { 1306 opp-hz = /bits/ 64 <307200000>; 1307 required-opps = <&rpmpd_opp_svs_plus>; 1308 }; 1309 1310 opp-384000000 { 1311 opp-hz = /bits/ 64 <384000000>; 1312 required-opps = <&rpmpd_opp_nom>; 1313 }; 1314 1315 opp-400000000 { 1316 opp-hz = /bits/ 64 <400000000>; 1317 required-opps = <&rpmpd_opp_turbo>; 1318 }; 1319 }; 1320 }; 1321 1322 mdss_dsi0: dsi@5e94000 { 1323 compatible = "qcom,sm6125-dsi-ctrl", "qcom,mdss-dsi-ctrl"; 1324 reg = <0x05e94000 0x400>; 1325 reg-names = "dsi_ctrl"; 1326 1327 interrupt-parent = <&mdss>; 1328 interrupts = <4>; 1329 1330 clocks = <&dispcc DISP_CC_MDSS_BYTE0_CLK>, 1331 <&dispcc DISP_CC_MDSS_BYTE0_INTF_CLK>, 1332 <&dispcc DISP_CC_MDSS_PCLK0_CLK>, 1333 <&dispcc DISP_CC_MDSS_ESC0_CLK>, 1334 <&dispcc DISP_CC_MDSS_AHB_CLK>, 1335 <&gcc GCC_DISP_HF_AXI_CLK>; 1336 clock-names = "byte", 1337 "byte_intf", 1338 "pixel", 1339 "core", 1340 "iface", 1341 "bus"; 1342 assigned-clocks = <&dispcc DISP_CC_MDSS_BYTE0_CLK_SRC>, 1343 <&dispcc DISP_CC_MDSS_PCLK0_CLK_SRC>; 1344 assigned-clock-parents = <&mdss_dsi0_phy DSI_BYTE_PLL_CLK>, 1345 <&mdss_dsi0_phy DSI_PIXEL_PLL_CLK>; 1346 1347 operating-points-v2 = <&dsi_opp_table>; 1348 power-domains = <&rpmpd SM6125_VDDCX>; 1349 1350 phys = <&mdss_dsi0_phy>; 1351 phy-names = "dsi"; 1352 1353 #address-cells = <1>; 1354 #size-cells = <0>; 1355 1356 status = "disabled"; 1357 1358 ports { 1359 #address-cells = <1>; 1360 #size-cells = <0>; 1361 1362 port@0 { 1363 reg = <0>; 1364 mdss_dsi0_in: endpoint { 1365 remote-endpoint = <&dpu_intf1_out>; 1366 }; 1367 }; 1368 1369 port@1 { 1370 reg = <1>; 1371 mdss_dsi0_out: endpoint { 1372 }; 1373 }; 1374 }; 1375 1376 dsi_opp_table: opp-table { 1377 compatible = "operating-points-v2"; 1378 1379 opp-164000000 { 1380 opp-hz = /bits/ 64 <164000000>; 1381 required-opps = <&rpmpd_opp_low_svs>; 1382 }; 1383 1384 opp-187500000 { 1385 opp-hz = /bits/ 64 <187500000>; 1386 required-opps = <&rpmpd_opp_svs>; 1387 }; 1388 }; 1389 }; 1390 1391 mdss_dsi0_phy: phy@5e94400 { 1392 compatible = "qcom,sm6125-dsi-phy-14nm"; 1393 reg = <0x05e94400 0x100>, 1394 <0x05e94500 0x300>, 1395 <0x05e94800 0x188>; 1396 reg-names = "dsi_phy", 1397 "dsi_phy_lane", 1398 "dsi_pll"; 1399 1400 #clock-cells = <1>; 1401 #phy-cells = <0>; 1402 1403 clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>, 1404 <&rpmcc RPM_SMD_XO_CLK_SRC>; 1405 clock-names = "iface", 1406 "ref"; 1407 1408 required-opps = <&rpmpd_opp_nom>; 1409 power-domains = <&rpmpd SM6125_VDDMX>; 1410 1411 status = "disabled"; 1412 }; 1413 }; 1414 1415 dispcc: clock-controller@5f00000 { 1416 compatible = "qcom,sm6125-dispcc"; 1417 reg = <0x05f00000 0x20000>; 1418 1419 clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>, 1420 <&mdss_dsi0_phy DSI_BYTE_PLL_CLK>, 1421 <&mdss_dsi0_phy DSI_PIXEL_PLL_CLK>, 1422 <0>, 1423 <0>, 1424 <0>, 1425 <&gcc GCC_DISP_AHB_CLK>, 1426 <&gcc GCC_DISP_GPLL0_DIV_CLK_SRC>; 1427 clock-names = "bi_tcxo", 1428 "dsi0_phy_pll_out_byteclk", 1429 "dsi0_phy_pll_out_dsiclk", 1430 "dsi1_phy_pll_out_dsiclk", 1431 "dp_phy_pll_link_clk", 1432 "dp_phy_pll_vco_div_clk", 1433 "cfg_ahb_clk", 1434 "gcc_disp_gpll0_div_clk_src"; 1435 1436 required-opps = <&rpmpd_opp_ret>; 1437 power-domains = <&rpmpd SM6125_VDDCX>; 1438 1439 #clock-cells = <1>; 1440 #power-domain-cells = <1>; 1441 }; 1442 1443 apps_smmu: iommu@c600000 { 1444 compatible = "qcom,sm6125-smmu-500", "qcom,smmu-500", "arm,mmu-500"; 1445 reg = <0x0c600000 0x80000>; 1446 interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>, 1447 <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>, 1448 <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>, 1449 <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>, 1450 <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>, 1451 <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>, 1452 <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>, 1453 <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>, 1454 <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>, 1455 <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>, 1456 <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>, 1457 <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>, 1458 <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>, 1459 <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>, 1460 <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>, 1461 <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>, 1462 <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>, 1463 <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>, 1464 <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>, 1465 <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>, 1466 <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>, 1467 <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>, 1468 <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>, 1469 <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>, 1470 <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>, 1471 <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>, 1472 <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>, 1473 <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>, 1474 <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>, 1475 <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>, 1476 <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>, 1477 <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>, 1478 <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>, 1479 <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>, 1480 <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>, 1481 <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>, 1482 <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>, 1483 <GIC_SPI 124 IRQ_TYPE_LEVEL_HIGH>, 1484 <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>, 1485 <GIC_SPI 126 IRQ_TYPE_LEVEL_HIGH>, 1486 <GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>, 1487 <GIC_SPI 128 IRQ_TYPE_LEVEL_HIGH>, 1488 <GIC_SPI 129 IRQ_TYPE_LEVEL_HIGH>, 1489 <GIC_SPI 130 IRQ_TYPE_LEVEL_HIGH>, 1490 <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>, 1491 <GIC_SPI 132 IRQ_TYPE_LEVEL_HIGH>, 1492 <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>, 1493 <GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>, 1494 <GIC_SPI 135 IRQ_TYPE_LEVEL_HIGH>, 1495 <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>, 1496 <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>, 1497 <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>, 1498 <GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>, 1499 <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>, 1500 <GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH>, 1501 <GIC_SPI 142 IRQ_TYPE_LEVEL_HIGH>, 1502 <GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH>, 1503 <GIC_SPI 144 IRQ_TYPE_LEVEL_HIGH>, 1504 <GIC_SPI 145 IRQ_TYPE_LEVEL_HIGH>, 1505 <GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>, 1506 <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>, 1507 <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>, 1508 <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>, 1509 <GIC_SPI 150 IRQ_TYPE_LEVEL_HIGH>, 1510 <GIC_SPI 151 IRQ_TYPE_LEVEL_HIGH>; 1511 1512 #global-interrupts = <1>; 1513 #iommu-cells = <2>; 1514 }; 1515 1516 apcs_glb: mailbox@f111000 { 1517 compatible = "qcom,sm6125-apcs-hmss-global", 1518 "qcom,msm8994-apcs-kpss-global"; 1519 reg = <0x0f111000 0x1000>; 1520 1521 #mbox-cells = <1>; 1522 }; 1523 1524 timer@f120000 { 1525 compatible = "arm,armv7-timer-mem"; 1526 #address-cells = <1>; 1527 #size-cells = <1>; 1528 ranges; 1529 reg = <0x0f120000 0x1000>; 1530 clock-frequency = <19200000>; 1531 1532 frame@f121000 { 1533 frame-number = <0>; 1534 interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>, 1535 <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; 1536 reg = <0x0f121000 0x1000>, 1537 <0x0f122000 0x1000>; 1538 }; 1539 1540 frame@f123000 { 1541 frame-number = <1>; 1542 interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>; 1543 reg = <0x0f123000 0x1000>; 1544 status = "disabled"; 1545 }; 1546 1547 frame@f124000 { 1548 frame-number = <2>; 1549 interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>; 1550 reg = <0x0f124000 0x1000>; 1551 status = "disabled"; 1552 }; 1553 1554 frame@f125000 { 1555 frame-number = <3>; 1556 interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>; 1557 reg = <0x0f125000 0x1000>; 1558 status = "disabled"; 1559 }; 1560 1561 frame@f126000 { 1562 frame-number = <4>; 1563 interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>; 1564 reg = <0x0f126000 0x1000>; 1565 status = "disabled"; 1566 }; 1567 1568 frame@f127000 { 1569 frame-number = <5>; 1570 interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>; 1571 reg = <0x0f127000 0x1000>; 1572 status = "disabled"; 1573 }; 1574 1575 frame@f128000 { 1576 frame-number = <6>; 1577 interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>; 1578 reg = <0x0f128000 0x1000>; 1579 status = "disabled"; 1580 }; 1581 }; 1582 1583 intc: interrupt-controller@f200000 { 1584 compatible = "arm,gic-v3"; 1585 reg = <0x0f200000 0x20000>, 1586 <0x0f300000 0x100000>; 1587 #interrupt-cells = <3>; 1588 interrupt-controller; 1589 interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>; 1590 }; 1591 }; 1592 1593 timer { 1594 compatible = "arm,armv8-timer"; 1595 interrupts = <GIC_PPI 1 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 1596 <GIC_PPI 2 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 1597 <GIC_PPI 3 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 1598 <GIC_PPI 0 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>; 1599 clock-frequency = <19200000>; 1600 }; 1601}; 1602