FILE
sm6115.dtsi
File preview with syntax highlighting.
linux-6.19.14/arch/arm64/boot/dts/qcom/sm6115.dtsi
1// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause) 2/* 3 * Copyright (c) 2021, Iskren Chernev <iskren.chernev@gmail.com> 4 */ 5 6#include <dt-bindings/clock/qcom,dsi-phy-28nm.h> 7#include <dt-bindings/clock/qcom,gcc-sm6115.h> 8#include <dt-bindings/clock/qcom,sm6115-dispcc.h> 9#include <dt-bindings/clock/qcom,sm6115-gpucc.h> 10#include <dt-bindings/clock/qcom,rpmcc.h> 11#include <dt-bindings/dma/qcom-gpi.h> 12#include <dt-bindings/firmware/qcom,scm.h> 13#include <dt-bindings/gpio/gpio.h> 14#include <dt-bindings/interconnect/qcom,rpm-icc.h> 15#include <dt-bindings/interconnect/qcom,sm6115.h> 16#include <dt-bindings/interrupt-controller/arm-gic.h> 17#include <dt-bindings/power/qcom-rpmpd.h> 18#include <dt-bindings/soc/qcom,apr.h> 19#include <dt-bindings/sound/qcom,q6asm.h> 20#include <dt-bindings/sound/qcom,q6dsp-lpass-ports.h> 21#include <dt-bindings/thermal/thermal.h> 22 23/ { 24 interrupt-parent = <&intc>; 25 26 #address-cells = <2>; 27 #size-cells = <2>; 28 29 chosen { }; 30 31 clocks { 32 xo_board: xo-board { 33 compatible = "fixed-clock"; 34 #clock-cells = <0>; 35 }; 36 37 sleep_clk: sleep-clk { 38 compatible = "fixed-clock"; 39 #clock-cells = <0>; 40 }; 41 }; 42 43 cpus { 44 #address-cells = <2>; 45 #size-cells = <0>; 46 47 cpu0: cpu@0 { 48 device_type = "cpu"; 49 compatible = "qcom,kryo260"; 50 reg = <0x0 0x0>; 51 clocks = <&cpufreq_hw 0>; 52 capacity-dmips-mhz = <1024>; 53 dynamic-power-coefficient = <100>; 54 enable-method = "psci"; 55 next-level-cache = <&l2_0>; 56 qcom,freq-domain = <&cpufreq_hw 0>; 57 power-domains = <&cpu_pd0>; 58 power-domain-names = "psci"; 59 l2_0: l2-cache { 60 compatible = "cache"; 61 cache-level = <2>; 62 cache-unified; 63 }; 64 }; 65 66 cpu1: cpu@1 { 67 device_type = "cpu"; 68 compatible = "qcom,kryo260"; 69 reg = <0x0 0x1>; 70 clocks = <&cpufreq_hw 0>; 71 capacity-dmips-mhz = <1024>; 72 dynamic-power-coefficient = <100>; 73 enable-method = "psci"; 74 next-level-cache = <&l2_0>; 75 qcom,freq-domain = <&cpufreq_hw 0>; 76 power-domains = <&cpu_pd1>; 77 power-domain-names = "psci"; 78 }; 79 80 cpu2: cpu@2 { 81 device_type = "cpu"; 82 compatible = "qcom,kryo260"; 83 reg = <0x0 0x2>; 84 clocks = <&cpufreq_hw 0>; 85 capacity-dmips-mhz = <1024>; 86 dynamic-power-coefficient = <100>; 87 enable-method = "psci"; 88 next-level-cache = <&l2_0>; 89 qcom,freq-domain = <&cpufreq_hw 0>; 90 power-domains = <&cpu_pd2>; 91 power-domain-names = "psci"; 92 }; 93 94 cpu3: cpu@3 { 95 device_type = "cpu"; 96 compatible = "qcom,kryo260"; 97 reg = <0x0 0x3>; 98 clocks = <&cpufreq_hw 0>; 99 capacity-dmips-mhz = <1024>; 100 dynamic-power-coefficient = <100>; 101 enable-method = "psci"; 102 next-level-cache = <&l2_0>; 103 qcom,freq-domain = <&cpufreq_hw 0>; 104 power-domains = <&cpu_pd3>; 105 power-domain-names = "psci"; 106 }; 107 108 cpu4: cpu@100 { 109 device_type = "cpu"; 110 compatible = "qcom,kryo260"; 111 reg = <0x0 0x100>; 112 clocks = <&cpufreq_hw 1>; 113 enable-method = "psci"; 114 capacity-dmips-mhz = <1638>; 115 dynamic-power-coefficient = <282>; 116 next-level-cache = <&l2_1>; 117 qcom,freq-domain = <&cpufreq_hw 1>; 118 power-domains = <&cpu_pd4>; 119 power-domain-names = "psci"; 120 l2_1: l2-cache { 121 compatible = "cache"; 122 cache-level = <2>; 123 cache-unified; 124 }; 125 }; 126 127 cpu5: cpu@101 { 128 device_type = "cpu"; 129 compatible = "qcom,kryo260"; 130 reg = <0x0 0x101>; 131 clocks = <&cpufreq_hw 1>; 132 capacity-dmips-mhz = <1638>; 133 dynamic-power-coefficient = <282>; 134 enable-method = "psci"; 135 next-level-cache = <&l2_1>; 136 qcom,freq-domain = <&cpufreq_hw 1>; 137 power-domains = <&cpu_pd5>; 138 power-domain-names = "psci"; 139 }; 140 141 cpu6: cpu@102 { 142 device_type = "cpu"; 143 compatible = "qcom,kryo260"; 144 reg = <0x0 0x102>; 145 clocks = <&cpufreq_hw 1>; 146 capacity-dmips-mhz = <1638>; 147 dynamic-power-coefficient = <282>; 148 enable-method = "psci"; 149 next-level-cache = <&l2_1>; 150 qcom,freq-domain = <&cpufreq_hw 1>; 151 power-domains = <&cpu_pd6>; 152 power-domain-names = "psci"; 153 }; 154 155 cpu7: cpu@103 { 156 device_type = "cpu"; 157 compatible = "qcom,kryo260"; 158 reg = <0x0 0x103>; 159 clocks = <&cpufreq_hw 1>; 160 capacity-dmips-mhz = <1638>; 161 dynamic-power-coefficient = <282>; 162 enable-method = "psci"; 163 next-level-cache = <&l2_1>; 164 qcom,freq-domain = <&cpufreq_hw 1>; 165 power-domains = <&cpu_pd7>; 166 power-domain-names = "psci"; 167 }; 168 169 cpu-map { 170 cluster0 { 171 core0 { 172 cpu = <&cpu0>; 173 }; 174 175 core1 { 176 cpu = <&cpu1>; 177 }; 178 179 core2 { 180 cpu = <&cpu2>; 181 }; 182 183 core3 { 184 cpu = <&cpu3>; 185 }; 186 }; 187 188 cluster1 { 189 core0 { 190 cpu = <&cpu4>; 191 }; 192 193 core1 { 194 cpu = <&cpu5>; 195 }; 196 197 core2 { 198 cpu = <&cpu6>; 199 }; 200 201 core3 { 202 cpu = <&cpu7>; 203 }; 204 }; 205 }; 206 207 idle-states { 208 entry-method = "psci"; 209 210 little_cpu_sleep_0: cpu-sleep-0-0 { 211 compatible = "arm,idle-state"; 212 idle-state-name = "silver-rail-power-collapse"; 213 arm,psci-suspend-param = <0x40000003>; 214 entry-latency-us = <290>; 215 exit-latency-us = <376>; 216 min-residency-us = <1182>; 217 local-timer-stop; 218 }; 219 220 big_cpu_sleep_0: cpu-sleep-1-0 { 221 compatible = "arm,idle-state"; 222 idle-state-name = "gold-rail-power-collapse"; 223 arm,psci-suspend-param = <0x40000003>; 224 entry-latency-us = <297>; 225 exit-latency-us = <324>; 226 min-residency-us = <1110>; 227 local-timer-stop; 228 }; 229 }; 230 231 domain-idle-states { 232 cluster_0_sleep_0: cluster-sleep-0-0 { 233 /* GDHS */ 234 compatible = "domain-idle-state"; 235 arm,psci-suspend-param = <0x40000022>; 236 entry-latency-us = <360>; 237 exit-latency-us = <421>; 238 min-residency-us = <782>; 239 }; 240 241 cluster_0_sleep_1: cluster-sleep-0-1 { 242 /* Power Collapse */ 243 compatible = "domain-idle-state"; 244 arm,psci-suspend-param = <0x41000044>; 245 entry-latency-us = <800>; 246 exit-latency-us = <2118>; 247 min-residency-us = <7376>; 248 }; 249 250 cluster_1_sleep_0: cluster-sleep-1-0 { 251 /* GDHS */ 252 compatible = "domain-idle-state"; 253 arm,psci-suspend-param = <0x40000042>; 254 entry-latency-us = <314>; 255 exit-latency-us = <345>; 256 min-residency-us = <660>; 257 }; 258 259 cluster_1_sleep_1: cluster-sleep-1-1 { 260 /* Power Collapse */ 261 compatible = "domain-idle-state"; 262 arm,psci-suspend-param = <0x41000044>; 263 entry-latency-us = <640>; 264 exit-latency-us = <1654>; 265 min-residency-us = <8094>; 266 }; 267 }; 268 }; 269 270 firmware { 271 scm: scm { 272 compatible = "qcom,scm-sm6115", "qcom,scm"; 273 #reset-cells = <1>; 274 interconnects = <&system_noc MASTER_CRYPTO_CORE0 RPM_ALWAYS_TAG 275 &bimc SLAVE_EBI_CH0 RPM_ALWAYS_TAG>; 276 }; 277 }; 278 279 memory@80000000 { 280 device_type = "memory"; 281 /* We expect the bootloader to fill in the size */ 282 reg = <0 0x80000000 0 0>; 283 }; 284 285 qup_opp_table: opp-table-qup { 286 compatible = "operating-points-v2"; 287 288 opp-75000000 { 289 opp-hz = /bits/ 64 <75000000>; 290 required-opps = <&rpmpd_opp_low_svs>; 291 }; 292 293 opp-100000000 { 294 opp-hz = /bits/ 64 <100000000>; 295 required-opps = <&rpmpd_opp_svs>; 296 }; 297 298 opp-128000000 { 299 opp-hz = /bits/ 64 <128000000>; 300 required-opps = <&rpmpd_opp_nom>; 301 }; 302 }; 303 304 pmu { 305 compatible = "arm,armv8-pmuv3"; 306 interrupts = <GIC_PPI 6 IRQ_TYPE_LEVEL_HIGH>; 307 }; 308 309 psci { 310 compatible = "arm,psci-1.0"; 311 method = "smc"; 312 313 cpu_pd0: power-domain-cpu0 { 314 #power-domain-cells = <0>; 315 power-domains = <&cluster_0_pd>; 316 domain-idle-states = <&little_cpu_sleep_0>; 317 }; 318 319 cpu_pd1: power-domain-cpu1 { 320 #power-domain-cells = <0>; 321 power-domains = <&cluster_0_pd>; 322 domain-idle-states = <&little_cpu_sleep_0>; 323 }; 324 325 cpu_pd2: power-domain-cpu2 { 326 #power-domain-cells = <0>; 327 power-domains = <&cluster_0_pd>; 328 domain-idle-states = <&little_cpu_sleep_0>; 329 }; 330 331 cpu_pd3: power-domain-cpu3 { 332 #power-domain-cells = <0>; 333 power-domains = <&cluster_0_pd>; 334 domain-idle-states = <&little_cpu_sleep_0>; 335 }; 336 337 cpu_pd4: power-domain-cpu4 { 338 #power-domain-cells = <0>; 339 power-domains = <&cluster_1_pd>; 340 domain-idle-states = <&big_cpu_sleep_0>; 341 }; 342 343 cpu_pd5: power-domain-cpu5 { 344 #power-domain-cells = <0>; 345 power-domains = <&cluster_1_pd>; 346 domain-idle-states = <&big_cpu_sleep_0>; 347 }; 348 349 cpu_pd6: power-domain-cpu6 { 350 #power-domain-cells = <0>; 351 power-domains = <&cluster_1_pd>; 352 domain-idle-states = <&big_cpu_sleep_0>; 353 }; 354 355 cpu_pd7: power-domain-cpu7 { 356 #power-domain-cells = <0>; 357 power-domains = <&cluster_1_pd>; 358 domain-idle-states = <&big_cpu_sleep_0>; 359 }; 360 361 cluster_0_pd: power-domain-cpu-cluster0 { 362 #power-domain-cells = <0>; 363 domain-idle-states = <&cluster_0_sleep_0>, <&cluster_0_sleep_1>; 364 }; 365 366 cluster_1_pd: power-domain-cpu-cluster1 { 367 #power-domain-cells = <0>; 368 domain-idle-states = <&cluster_1_sleep_0>, <&cluster_1_sleep_1>; 369 }; 370 }; 371 372 rpm: remoteproc { 373 compatible = "qcom,sm6115-rpm-proc", "qcom,rpm-proc"; 374 375 glink-edge { 376 compatible = "qcom,glink-rpm"; 377 378 interrupts = <GIC_SPI 194 IRQ_TYPE_EDGE_RISING>; 379 qcom,rpm-msg-ram = <&rpm_msg_ram>; 380 mboxes = <&apcs_glb 0>; 381 382 rpm_requests: rpm-requests { 383 compatible = "qcom,rpm-sm6115", "qcom,glink-smd-rpm"; 384 qcom,glink-channels = "rpm_requests"; 385 386 rpmcc: clock-controller { 387 compatible = "qcom,rpmcc-sm6115", "qcom,rpmcc"; 388 clocks = <&xo_board>; 389 clock-names = "xo"; 390 #clock-cells = <1>; 391 }; 392 393 rpmpd: power-controller { 394 compatible = "qcom,sm6115-rpmpd"; 395 #power-domain-cells = <1>; 396 operating-points-v2 = <&rpmpd_opp_table>; 397 398 rpmpd_opp_table: opp-table { 399 compatible = "operating-points-v2"; 400 401 rpmpd_opp_min_svs: opp1 { 402 opp-level = <RPM_SMD_LEVEL_MIN_SVS>; 403 }; 404 405 rpmpd_opp_low_svs: opp2 { 406 opp-level = <RPM_SMD_LEVEL_LOW_SVS>; 407 }; 408 409 rpmpd_opp_svs: opp3 { 410 opp-level = <RPM_SMD_LEVEL_SVS>; 411 }; 412 413 rpmpd_opp_svs_plus: opp4 { 414 opp-level = <RPM_SMD_LEVEL_SVS_PLUS>; 415 }; 416 417 rpmpd_opp_nom: opp5 { 418 opp-level = <RPM_SMD_LEVEL_NOM>; 419 }; 420 421 rpmpd_opp_nom_plus: opp6 { 422 opp-level = <RPM_SMD_LEVEL_NOM_PLUS>; 423 }; 424 425 rpmpd_opp_turbo: opp7 { 426 opp-level = <RPM_SMD_LEVEL_TURBO>; 427 }; 428 429 rpmpd_opp_turbo_plus: opp8 { 430 opp-level = <RPM_SMD_LEVEL_TURBO_NO_CPR>; 431 }; 432 }; 433 }; 434 }; 435 }; 436 }; 437 438 reserved_memory: reserved-memory { 439 #address-cells = <2>; 440 #size-cells = <2>; 441 ranges; 442 443 hyp_mem: memory@45700000 { 444 reg = <0x0 0x45700000 0x0 0x600000>; 445 no-map; 446 }; 447 448 xbl_aop_mem: memory@45e00000 { 449 reg = <0x0 0x45e00000 0x0 0x140000>; 450 no-map; 451 }; 452 453 sec_apps_mem: memory@45fff000 { 454 reg = <0x0 0x45fff000 0x0 0x1000>; 455 no-map; 456 }; 457 458 smem_mem: memory@46000000 { 459 compatible = "qcom,smem"; 460 reg = <0x0 0x46000000 0x0 0x200000>; 461 no-map; 462 463 hwlocks = <&tcsr_mutex 3>; 464 qcom,rpm-msg-ram = <&rpm_msg_ram>; 465 }; 466 467 cdsp_sec_mem: memory@46200000 { 468 reg = <0x0 0x46200000 0x0 0x1e00000>; 469 no-map; 470 }; 471 472 pil_modem_mem: memory@4ab00000 { 473 reg = <0x0 0x4ab00000 0x0 0x6900000>; 474 no-map; 475 }; 476 477 pil_video_mem: memory@51400000 { 478 reg = <0x0 0x51400000 0x0 0x500000>; 479 no-map; 480 }; 481 482 wlan_msa_mem: memory@51900000 { 483 reg = <0x0 0x51900000 0x0 0x100000>; 484 no-map; 485 }; 486 487 pil_cdsp_mem: memory@51a00000 { 488 reg = <0x0 0x51a00000 0x0 0x1e00000>; 489 no-map; 490 }; 491 492 pil_adsp_mem: memory@53800000 { 493 reg = <0x0 0x53800000 0x0 0x2800000>; 494 no-map; 495 }; 496 497 pil_ipa_fw_mem: memory@56100000 { 498 reg = <0x0 0x56100000 0x0 0x10000>; 499 no-map; 500 }; 501 502 pil_ipa_gsi_mem: memory@56110000 { 503 reg = <0x0 0x56110000 0x0 0x5000>; 504 no-map; 505 }; 506 507 pil_gpu_mem: memory@56115000 { 508 reg = <0x0 0x56115000 0x0 0x2000>; 509 no-map; 510 }; 511 512 cont_splash_memory: memory@5c000000 { 513 reg = <0x0 0x5c000000 0x0 0x00f00000>; 514 no-map; 515 }; 516 517 dfps_data_memory: memory@5cf00000 { 518 reg = <0x0 0x5cf00000 0x0 0x0100000>; 519 no-map; 520 }; 521 522 removed_mem: memory@60000000 { 523 reg = <0x0 0x60000000 0x0 0x3900000>; 524 no-map; 525 }; 526 527 rmtfs_mem: memory@89b01000 { 528 compatible = "qcom,rmtfs-mem"; 529 reg = <0x0 0x89b01000 0x0 0x200000>; 530 no-map; 531 532 qcom,client-id = <1>; 533 qcom,vmid = <QCOM_SCM_VMID_MSS_MSA QCOM_SCM_VMID_NAV>; 534 }; 535 }; 536 537 smp2p-adsp { 538 compatible = "qcom,smp2p"; 539 qcom,smem = <443>, <429>; 540 541 interrupts = <GIC_SPI 279 IRQ_TYPE_EDGE_RISING>; 542 543 mboxes = <&apcs_glb 10>; 544 545 qcom,local-pid = <0>; 546 qcom,remote-pid = <2>; 547 548 adsp_smp2p_out: master-kernel { 549 qcom,entry-name = "master-kernel"; 550 #qcom,smem-state-cells = <1>; 551 }; 552 553 adsp_smp2p_in: slave-kernel { 554 qcom,entry-name = "slave-kernel"; 555 556 interrupt-controller; 557 #interrupt-cells = <2>; 558 }; 559 }; 560 561 smp2p-cdsp { 562 compatible = "qcom,smp2p"; 563 qcom,smem = <94>, <432>; 564 565 interrupts = <GIC_SPI 263 IRQ_TYPE_EDGE_RISING>; 566 567 mboxes = <&apcs_glb 30>; 568 569 qcom,local-pid = <0>; 570 qcom,remote-pid = <5>; 571 572 cdsp_smp2p_out: master-kernel { 573 qcom,entry-name = "master-kernel"; 574 #qcom,smem-state-cells = <1>; 575 }; 576 577 cdsp_smp2p_in: slave-kernel { 578 qcom,entry-name = "slave-kernel"; 579 580 interrupt-controller; 581 #interrupt-cells = <2>; 582 }; 583 }; 584 585 smp2p-mpss { 586 compatible = "qcom,smp2p"; 587 qcom,smem = <435>, <428>; 588 589 interrupts = <GIC_SPI 70 IRQ_TYPE_EDGE_RISING>; 590 591 mboxes = <&apcs_glb 14>; 592 593 qcom,local-pid = <0>; 594 qcom,remote-pid = <1>; 595 596 modem_smp2p_out: master-kernel { 597 qcom,entry-name = "master-kernel"; 598 #qcom,smem-state-cells = <1>; 599 }; 600 601 modem_smp2p_in: slave-kernel { 602 qcom,entry-name = "slave-kernel"; 603 604 interrupt-controller; 605 #interrupt-cells = <2>; 606 }; 607 }; 608 609 soc: soc@0 { 610 compatible = "simple-bus"; 611 #address-cells = <2>; 612 #size-cells = <2>; 613 ranges = <0 0 0 0 0x10 0>; 614 dma-ranges = <0 0 0 0 0x10 0>; 615 616 tcsr_mutex: hwlock@340000 { 617 compatible = "qcom,tcsr-mutex"; 618 reg = <0x0 0x00340000 0x0 0x20000>; 619 #hwlock-cells = <1>; 620 }; 621 622 tcsr_regs: syscon@3c0000 { 623 compatible = "qcom,sm6115-tcsr", "syscon"; 624 reg = <0x0 0x003c0000 0x0 0x40000>; 625 }; 626 627 tlmm: pinctrl@500000 { 628 compatible = "qcom,sm6115-tlmm"; 629 reg = <0x0 0x00500000 0x0 0x400000>, 630 <0x0 0x00900000 0x0 0x400000>, 631 <0x0 0x00d00000 0x0 0x400000>; 632 reg-names = "west", "south", "east"; 633 interrupts = <GIC_SPI 227 IRQ_TYPE_LEVEL_HIGH>; 634 gpio-controller; 635 gpio-ranges = <&tlmm 0 0 114>; /* GPIOs + ufs_reset */ 636 #gpio-cells = <2>; 637 interrupt-controller; 638 #interrupt-cells = <2>; 639 640 qup_i2c0_default: qup-i2c0-default-state { 641 pins = "gpio0", "gpio1"; 642 function = "qup0"; 643 drive-strength = <2>; 644 bias-pull-up; 645 }; 646 647 qup_i2c1_default: qup-i2c1-default-state { 648 pins = "gpio4", "gpio5"; 649 function = "qup1"; 650 drive-strength = <2>; 651 bias-pull-up; 652 }; 653 654 qup_i2c2_default: qup-i2c2-default-state { 655 pins = "gpio6", "gpio7"; 656 function = "qup2"; 657 drive-strength = <2>; 658 bias-pull-up; 659 }; 660 661 qup_i2c3_default: qup-i2c3-default-state { 662 pins = "gpio8", "gpio9"; 663 function = "qup3"; 664 drive-strength = <2>; 665 bias-pull-up; 666 }; 667 668 qup_i2c4_default: qup-i2c4-default-state { 669 pins = "gpio12", "gpio13"; 670 function = "qup4"; 671 drive-strength = <2>; 672 bias-pull-up; 673 }; 674 675 qup_i2c5_default: qup-i2c5-default-state { 676 pins = "gpio14", "gpio15"; 677 function = "qup5"; 678 drive-strength = <2>; 679 bias-pull-up; 680 }; 681 682 qup_spi0_default: qup-spi0-default-state { 683 pins = "gpio0", "gpio1","gpio2", "gpio3"; 684 function = "qup0"; 685 drive-strength = <2>; 686 bias-pull-up; 687 }; 688 689 qup_spi1_default: qup-spi1-default-state { 690 pins = "gpio4", "gpio5", "gpio69", "gpio70"; 691 function = "qup1"; 692 drive-strength = <2>; 693 bias-pull-up; 694 }; 695 696 qup_spi2_default: qup-spi2-default-state { 697 pins = "gpio6", "gpio7", "gpio71", "gpio80"; 698 function = "qup2"; 699 drive-strength = <2>; 700 bias-pull-up; 701 }; 702 703 qup_spi3_default: qup-spi3-default-state { 704 pins = "gpio8", "gpio9", "gpio10", "gpio11"; 705 function = "qup3"; 706 drive-strength = <2>; 707 bias-pull-up; 708 }; 709 710 qup_spi4_default: qup-spi4-default-state { 711 pins = "gpio12", "gpio13", "gpio96", "gpio97"; 712 function = "qup4"; 713 drive-strength = <2>; 714 bias-pull-up; 715 }; 716 717 qup_spi5_default: qup-spi5-default-state { 718 pins = "gpio14", "gpio15", "gpio16", "gpio17"; 719 function = "qup5"; 720 drive-strength = <2>; 721 bias-pull-up; 722 }; 723 724 qup_uart4_default: qup-uart4-default-state { 725 pins = "gpio12", "gpio13"; 726 function = "qup4"; 727 drive-strength = <2>; 728 bias-disable; 729 }; 730 731 sdc1_state_on: sdc1-on-state { 732 clk-pins { 733 pins = "sdc1_clk"; 734 bias-disable; 735 drive-strength = <16>; 736 }; 737 738 cmd-pins { 739 pins = "sdc1_cmd"; 740 bias-pull-up; 741 drive-strength = <10>; 742 }; 743 744 data-pins { 745 pins = "sdc1_data"; 746 bias-pull-up; 747 drive-strength = <10>; 748 }; 749 750 rclk-pins { 751 pins = "sdc1_rclk"; 752 bias-pull-down; 753 }; 754 }; 755 756 sdc1_state_off: sdc1-off-state { 757 clk-pins { 758 pins = "sdc1_clk"; 759 bias-disable; 760 drive-strength = <2>; 761 }; 762 763 cmd-pins { 764 pins = "sdc1_cmd"; 765 bias-pull-up; 766 drive-strength = <2>; 767 }; 768 769 data-pins { 770 pins = "sdc1_data"; 771 bias-pull-up; 772 drive-strength = <2>; 773 }; 774 775 rclk-pins { 776 pins = "sdc1_rclk"; 777 bias-pull-down; 778 }; 779 }; 780 781 sdc2_state_on: sdc2-on-state { 782 clk-pins { 783 pins = "sdc2_clk"; 784 bias-disable; 785 drive-strength = <16>; 786 }; 787 788 cmd-pins { 789 pins = "sdc2_cmd"; 790 bias-pull-up; 791 drive-strength = <10>; 792 }; 793 794 data-pins { 795 pins = "sdc2_data"; 796 bias-pull-up; 797 drive-strength = <10>; 798 }; 799 }; 800 801 sdc2_state_off: sdc2-off-state { 802 clk-pins { 803 pins = "sdc2_clk"; 804 bias-disable; 805 drive-strength = <2>; 806 }; 807 808 cmd-pins { 809 pins = "sdc2_cmd"; 810 bias-pull-up; 811 drive-strength = <2>; 812 }; 813 814 data-pins { 815 pins = "sdc2_data"; 816 bias-pull-up; 817 drive-strength = <2>; 818 }; 819 }; 820 }; 821 822 lpass_tlmm: pinctrl@a7c0000 { 823 compatible = "qcom,sm6115-lpass-lpi-pinctrl"; 824 reg = <0x0 0x0a7c0000 0x0 0x20000>, 825 <0x0 0x0a950000 0x0 0x10000>; 826 827 clocks = <&q6afecc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>; 828 clock-names = "audio"; 829 830 gpio-controller; 831 #gpio-cells = <2>; 832 gpio-ranges = <&lpass_tlmm 0 0 19>; 833 834 }; 835 836 gcc: clock-controller@1400000 { 837 compatible = "qcom,gcc-sm6115"; 838 reg = <0x0 0x01400000 0x0 0x1f0000>; 839 clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>, <&sleep_clk>; 840 clock-names = "bi_tcxo", "sleep_clk"; 841 #clock-cells = <1>; 842 #reset-cells = <1>; 843 #power-domain-cells = <1>; 844 }; 845 846 usb_hsphy: phy@1613000 { 847 compatible = "qcom,sm6115-qusb2-phy"; 848 reg = <0x0 0x01613000 0x0 0x180>; 849 #phy-cells = <0>; 850 851 clocks = <&gcc GCC_AHB2PHY_USB_CLK>, <&rpmcc RPM_SMD_XO_CLK_SRC>; 852 clock-names = "cfg_ahb", "ref"; 853 854 resets = <&gcc GCC_QUSB2PHY_PRIM_BCR>; 855 nvmem-cells = <&qusb2_hstx_trim>; 856 857 status = "disabled"; 858 }; 859 860 cryptobam: dma-controller@1b04000 { 861 compatible = "qcom,bam-v1.7.4", "qcom,bam-v1.7.0"; 862 reg = <0x0 0x01b04000 0x0 0x24000>; 863 interrupts = <GIC_SPI 247 IRQ_TYPE_LEVEL_HIGH>; 864 clocks = <&rpmcc RPM_SMD_CE1_CLK>; 865 clock-names = "bam_clk"; 866 #dma-cells = <1>; 867 qcom,ee = <0>; 868 qcom,controlled-remotely; 869 iommus = <&apps_smmu 0x92 0>, 870 <&apps_smmu 0x94 0x11>, 871 <&apps_smmu 0x96 0x11>, 872 <&apps_smmu 0x98 0x1>, 873 <&apps_smmu 0x9F 0>; 874 }; 875 876 crypto: crypto@1b3a000 { 877 compatible = "qcom,sm6115-qce", "qcom,ipq4019-qce", "qcom,qce"; 878 reg = <0x0 0x01b3a000 0x0 0x6000>; 879 clocks = <&rpmcc RPM_SMD_CE1_CLK>; 880 clock-names = "core"; 881 882 dmas = <&cryptobam 6>, <&cryptobam 7>; 883 dma-names = "rx", "tx"; 884 iommus = <&apps_smmu 0x92 0>, 885 <&apps_smmu 0x94 0x11>, 886 <&apps_smmu 0x96 0x11>, 887 <&apps_smmu 0x98 0x1>, 888 <&apps_smmu 0x9F 0>; 889 }; 890 891 usb_qmpphy: phy@1615000 { 892 compatible = "qcom,sm6115-qmp-usb3-phy"; 893 reg = <0x0 0x01615000 0x0 0x1000>; 894 895 clocks = <&gcc GCC_AHB2PHY_USB_CLK>, 896 <&gcc GCC_USB3_PRIM_CLKREF_CLK>, 897 <&gcc GCC_USB3_PRIM_PHY_COM_AUX_CLK>, 898 <&gcc GCC_USB3_PRIM_PHY_PIPE_CLK>; 899 clock-names = "cfg_ahb", 900 "ref", 901 "com_aux", 902 "pipe"; 903 904 resets = <&gcc GCC_USB3_PHY_PRIM_SP0_BCR>, 905 <&gcc GCC_USB3PHY_PHY_PRIM_SP0_BCR>; 906 reset-names = "phy", "phy_phy"; 907 908 #clock-cells = <0>; 909 clock-output-names = "usb3_phy_pipe_clk_src"; 910 911 #phy-cells = <0>; 912 orientation-switch; 913 914 qcom,tcsr-reg = <&tcsr_regs 0xb244>; 915 916 status = "disabled"; 917 918 ports { 919 #address-cells = <1>; 920 #size-cells = <0>; 921 922 port@0 { 923 reg = <0>; 924 925 usb_qmpphy_out: endpoint { 926 }; 927 }; 928 929 port@1 { 930 reg = <1>; 931 932 usb_qmpphy_usb_ss_in: endpoint { 933 remote-endpoint = <&usb_dwc3_ss>; 934 }; 935 }; 936 }; 937 }; 938 939 system_noc: interconnect@1880000 { 940 compatible = "qcom,sm6115-snoc"; 941 reg = <0x0 0x01880000 0x0 0x5f080>; 942 clocks = <&gcc GCC_SYS_NOC_CPUSS_AHB_CLK>, 943 <&gcc GCC_SYS_NOC_UFS_PHY_AXI_CLK>, 944 <&gcc GCC_SYS_NOC_USB3_PRIM_AXI_CLK>, 945 <&rpmcc RPM_SMD_IPA_CLK>; 946 clock-names = "cpu_axi", 947 "ufs_axi", 948 "usb_axi", 949 "ipa"; 950 #interconnect-cells = <2>; 951 952 clk_virt: interconnect-clk { 953 compatible = "qcom,sm6115-clk-virt"; 954 #interconnect-cells = <2>; 955 }; 956 957 mmrt_virt: interconnect-mmrt { 958 compatible = "qcom,sm6115-mmrt-virt"; 959 #interconnect-cells = <2>; 960 }; 961 962 mmnrt_virt: interconnect-mmnrt { 963 compatible = "qcom,sm6115-mmnrt-virt"; 964 #interconnect-cells = <2>; 965 }; 966 }; 967 968 config_noc: interconnect@1900000 { 969 compatible = "qcom,sm6115-cnoc"; 970 reg = <0x0 0x01900000 0x0 0x6200>; 971 clocks = <&gcc GCC_CFG_NOC_USB3_PRIM_AXI_CLK>; 972 clock-names = "usb_axi"; 973 #interconnect-cells = <2>; 974 }; 975 976 qfprom@1b40000 { 977 compatible = "qcom,sm6115-qfprom", "qcom,qfprom"; 978 reg = <0x0 0x01b40000 0x0 0x7000>; 979 #address-cells = <1>; 980 #size-cells = <1>; 981 982 qusb2_hstx_trim: hstx-trim@25b { 983 reg = <0x25b 0x1>; 984 bits = <1 4>; 985 }; 986 987 gpu_speed_bin: gpu-speed-bin@6006 { 988 reg = <0x6006 0x2>; 989 bits = <5 8>; 990 }; 991 }; 992 993 rng: rng@1b53000 { 994 compatible = "qcom,prng-ee"; 995 reg = <0x0 0x01b53000 0x0 0x1000>; 996 clocks = <&gcc GCC_PRNG_AHB_CLK>; 997 clock-names = "core"; 998 }; 999 1000 pmu@1b8e300 { 1001 compatible = "qcom,sm6115-cpu-bwmon", "qcom,sdm845-bwmon"; 1002 reg = <0x0 0x01b8e300 0x0 0x600>; 1003 interrupts = <GIC_SPI 421 IRQ_TYPE_LEVEL_HIGH>; 1004 1005 operating-points-v2 = <&cpu_bwmon_opp_table>; 1006 interconnects = <&bimc MASTER_AMPSS_M0 RPM_ACTIVE_TAG 1007 &bimc SLAVE_EBI_CH0 RPM_ACTIVE_TAG>; 1008 1009 cpu_bwmon_opp_table: opp-table { 1010 compatible = "operating-points-v2"; 1011 1012 opp-0 { 1013 opp-peak-kBps = <(200 * 4 * 1000)>; 1014 }; 1015 1016 opp-1 { 1017 opp-peak-kBps = <(300 * 4 * 1000)>; 1018 }; 1019 1020 opp-2 { 1021 opp-peak-kBps = <(451 * 4 * 1000)>; 1022 }; 1023 1024 opp-3 { 1025 opp-peak-kBps = <(547 * 4 * 1000)>; 1026 }; 1027 1028 opp-4 { 1029 opp-peak-kBps = <(681 * 4 * 1000)>; 1030 }; 1031 1032 opp-5 { 1033 opp-peak-kBps = <(768 * 4 * 1000)>; 1034 }; 1035 1036 opp-6 { 1037 opp-peak-kBps = <(1017 * 4 * 1000)>; 1038 }; 1039 1040 opp-7 { 1041 opp-peak-kBps = <(1353 * 4 * 1000)>; 1042 }; 1043 1044 opp-8 { 1045 opp-peak-kBps = <(1555 * 4 * 1000)>; 1046 }; 1047 1048 opp-9 { 1049 opp-peak-kBps = <(1804 * 4 * 1000)>; 1050 }; 1051 }; 1052 }; 1053 1054 spmi_bus: spmi@1c40000 { 1055 compatible = "qcom,spmi-pmic-arb"; 1056 reg = <0x0 0x01c40000 0x0 0x1100>, 1057 <0x0 0x01e00000 0x0 0x2000000>, 1058 <0x0 0x03e00000 0x0 0x100000>, 1059 <0x0 0x03f00000 0x0 0xa0000>, 1060 <0x0 0x01c0a000 0x0 0x26000>; 1061 reg-names = "core", "chnls", "obsrvr", "intr", "cnfg"; 1062 interrupt-names = "periph_irq"; 1063 interrupts = <GIC_SPI 183 IRQ_TYPE_LEVEL_HIGH>; 1064 qcom,ee = <0>; 1065 qcom,channel = <0>; 1066 #address-cells = <2>; 1067 #size-cells = <0>; 1068 interrupt-controller; 1069 #interrupt-cells = <4>; 1070 }; 1071 1072 tsens0: thermal-sensor@4411000 { 1073 compatible = "qcom,sm6115-tsens", "qcom,tsens-v2"; 1074 reg = <0x0 0x04411000 0x0 0x1ff>, /* TM */ 1075 <0x0 0x04410000 0x0 0x8>; /* SROT */ 1076 #qcom,sensors = <16>; 1077 interrupts = <GIC_SPI 275 IRQ_TYPE_LEVEL_HIGH>, 1078 <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>; 1079 interrupt-names = "uplow", "critical"; 1080 #thermal-sensor-cells = <1>; 1081 }; 1082 1083 bimc: interconnect@4480000 { 1084 compatible = "qcom,sm6115-bimc"; 1085 reg = <0x0 0x04480000 0x0 0x80000>; 1086 #interconnect-cells = <2>; 1087 }; 1088 1089 rpm_msg_ram: sram@45f0000 { 1090 compatible = "qcom,rpm-msg-ram"; 1091 reg = <0x0 0x045f0000 0x0 0x7000>; 1092 }; 1093 1094 sram@4690000 { 1095 compatible = "qcom,rpm-stats"; 1096 reg = <0x0 0x04690000 0x0 0x10000>; 1097 }; 1098 1099 sdhc_1: mmc@4744000 { 1100 compatible = "qcom,sm6115-sdhci", "qcom,sdhci-msm-v5"; 1101 reg = <0x0 0x04744000 0x0 0x1000>, 1102 <0x0 0x04745000 0x0 0x1000>, 1103 <0x0 0x04748000 0x0 0x8000>; 1104 reg-names = "hc", "cqhci", "ice"; 1105 1106 interrupts = <GIC_SPI 348 IRQ_TYPE_LEVEL_HIGH>, 1107 <GIC_SPI 352 IRQ_TYPE_LEVEL_HIGH>; 1108 interrupt-names = "hc_irq", "pwr_irq"; 1109 1110 clocks = <&gcc GCC_SDCC1_AHB_CLK>, 1111 <&gcc GCC_SDCC1_APPS_CLK>, 1112 <&rpmcc RPM_SMD_XO_CLK_SRC>, 1113 <&gcc GCC_SDCC1_ICE_CORE_CLK>; 1114 clock-names = "iface", "core", "xo", "ice"; 1115 1116 resets = <&gcc GCC_SDCC1_BCR>; 1117 1118 power-domains = <&rpmpd SM6115_VDDCX>; 1119 operating-points-v2 = <&sdhc1_opp_table>; 1120 iommus = <&apps_smmu 0x00c0 0x0>; 1121 interconnects = <&system_noc MASTER_SDCC_1 RPM_ALWAYS_TAG 1122 &bimc SLAVE_EBI_CH0 RPM_ALWAYS_TAG>, 1123 <&bimc MASTER_AMPSS_M0 RPM_ALWAYS_TAG 1124 &config_noc SLAVE_SDCC_1 RPM_ALWAYS_TAG>; 1125 interconnect-names = "sdhc-ddr", 1126 "cpu-sdhc"; 1127 1128 bus-width = <8>; 1129 status = "disabled"; 1130 1131 sdhc1_opp_table: opp-table { 1132 compatible = "operating-points-v2"; 1133 1134 opp-100000000 { 1135 opp-hz = /bits/ 64 <100000000>; 1136 required-opps = <&rpmpd_opp_low_svs>; 1137 opp-peak-kBps = <250000 133320>; 1138 opp-avg-kBps = <102400 65000>; 1139 }; 1140 1141 opp-192000000 { 1142 opp-hz = /bits/ 64 <192000000>; 1143 required-opps = <&rpmpd_opp_low_svs>; 1144 opp-peak-kBps = <800000 300000>; 1145 opp-avg-kBps = <204800 200000>; 1146 }; 1147 1148 opp-384000000 { 1149 opp-hz = /bits/ 64 <384000000>; 1150 required-opps = <&rpmpd_opp_svs_plus>; 1151 opp-peak-kBps = <800000 300000>; 1152 opp-avg-kBps = <204800 200000>; 1153 }; 1154 }; 1155 }; 1156 1157 sdhc_2: mmc@4784000 { 1158 compatible = "qcom,sm6115-sdhci", "qcom,sdhci-msm-v5"; 1159 reg = <0x0 0x04784000 0x0 0x1000>; 1160 reg-names = "hc"; 1161 1162 interrupts = <GIC_SPI 350 IRQ_TYPE_LEVEL_HIGH>, 1163 <GIC_SPI 353 IRQ_TYPE_LEVEL_HIGH>; 1164 interrupt-names = "hc_irq", "pwr_irq"; 1165 1166 clocks = <&gcc GCC_SDCC2_AHB_CLK>, 1167 <&gcc GCC_SDCC2_APPS_CLK>, 1168 <&rpmcc RPM_SMD_XO_CLK_SRC>; 1169 clock-names = "iface", "core", "xo"; 1170 1171 power-domains = <&rpmpd SM6115_VDDCX>; 1172 operating-points-v2 = <&sdhc2_opp_table>; 1173 iommus = <&apps_smmu 0x00a0 0x0>; 1174 resets = <&gcc GCC_SDCC2_BCR>; 1175 interconnects = <&system_noc MASTER_SDCC_2 RPM_ALWAYS_TAG 1176 &bimc SLAVE_EBI_CH0 RPM_ALWAYS_TAG>, 1177 <&bimc MASTER_AMPSS_M0 RPM_ALWAYS_TAG 1178 &config_noc SLAVE_SDCC_2 RPM_ALWAYS_TAG>; 1179 interconnect-names = "sdhc-ddr", 1180 "cpu-sdhc"; 1181 1182 bus-width = <4>; 1183 qcom,dll-config = <0x0007642c>; 1184 qcom,ddr-config = <0x80040868>; 1185 status = "disabled"; 1186 1187 sdhc2_opp_table: opp-table { 1188 compatible = "operating-points-v2"; 1189 1190 opp-100000000 { 1191 opp-hz = /bits/ 64 <100000000>; 1192 required-opps = <&rpmpd_opp_low_svs>; 1193 opp-peak-kBps = <250000 133320>; 1194 opp-avg-kBps = <261438 150000>; 1195 }; 1196 1197 opp-202000000 { 1198 opp-hz = /bits/ 64 <202000000>; 1199 required-opps = <&rpmpd_opp_nom>; 1200 opp-peak-kBps = <800000 300000>; 1201 opp-avg-kBps = <261438 300000>; 1202 }; 1203 }; 1204 }; 1205 1206 ufs_mem_hc: ufshc@4804000 { 1207 compatible = "qcom,sm6115-ufshc", "qcom,ufshc", "jedec,ufs-2.0"; 1208 reg = <0x0 0x04804000 0x0 0x3000>, <0x0 0x04810000 0x0 0x8000>; 1209 reg-names = "std", "ice"; 1210 interrupts = <GIC_SPI 356 IRQ_TYPE_LEVEL_HIGH>; 1211 phys = <&ufs_mem_phy>; 1212 phy-names = "ufsphy"; 1213 lanes-per-direction = <1>; 1214 #reset-cells = <1>; 1215 resets = <&gcc GCC_UFS_PHY_BCR>; 1216 reset-names = "rst"; 1217 1218 power-domains = <&gcc GCC_UFS_PHY_GDSC>; 1219 iommus = <&apps_smmu 0x100 0>; 1220 1221 clocks = <&gcc GCC_UFS_PHY_AXI_CLK>, 1222 <&gcc GCC_SYS_NOC_UFS_PHY_AXI_CLK>, 1223 <&gcc GCC_UFS_PHY_AHB_CLK>, 1224 <&gcc GCC_UFS_PHY_UNIPRO_CORE_CLK>, 1225 <&rpmcc RPM_SMD_XO_CLK_SRC>, 1226 <&gcc GCC_UFS_PHY_TX_SYMBOL_0_CLK>, 1227 <&gcc GCC_UFS_PHY_RX_SYMBOL_0_CLK>, 1228 <&gcc GCC_UFS_PHY_ICE_CORE_CLK>; 1229 clock-names = "core_clk", 1230 "bus_aggr_clk", 1231 "iface_clk", 1232 "core_clk_unipro", 1233 "ref_clk", 1234 "tx_lane0_sync_clk", 1235 "rx_lane0_sync_clk", 1236 "ice_core_clk"; 1237 1238 freq-table-hz = <50000000 200000000>, 1239 <0 0>, 1240 <0 0>, 1241 <37500000 150000000>, 1242 <0 0>, 1243 <0 0>, 1244 <0 0>, 1245 <75000000 300000000>; 1246 1247 status = "disabled"; 1248 }; 1249 1250 ufs_mem_phy: phy@4807000 { 1251 compatible = "qcom,sm6115-qmp-ufs-phy"; 1252 reg = <0x0 0x04807000 0x0 0x1000>; 1253 1254 clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>, 1255 <&gcc GCC_UFS_PHY_PHY_AUX_CLK>, 1256 <&gcc GCC_UFS_CLKREF_CLK>; 1257 clock-names = "ref", 1258 "ref_aux", 1259 "qref"; 1260 1261 power-domains = <&gcc GCC_UFS_PHY_GDSC>; 1262 1263 resets = <&ufs_mem_hc 0>; 1264 reset-names = "ufsphy"; 1265 1266 #phy-cells = <0>; 1267 1268 status = "disabled"; 1269 }; 1270 1271 gpi_dma0: dma-controller@4a00000 { 1272 compatible = "qcom,sm6115-gpi-dma", "qcom,sm6350-gpi-dma"; 1273 reg = <0x0 0x04a00000 0x0 0x60000>; 1274 interrupts = <GIC_SPI 335 IRQ_TYPE_LEVEL_HIGH>, 1275 <GIC_SPI 336 IRQ_TYPE_LEVEL_HIGH>, 1276 <GIC_SPI 337 IRQ_TYPE_LEVEL_HIGH>, 1277 <GIC_SPI 338 IRQ_TYPE_LEVEL_HIGH>, 1278 <GIC_SPI 339 IRQ_TYPE_LEVEL_HIGH>, 1279 <GIC_SPI 340 IRQ_TYPE_LEVEL_HIGH>, 1280 <GIC_SPI 341 IRQ_TYPE_LEVEL_HIGH>, 1281 <GIC_SPI 342 IRQ_TYPE_LEVEL_HIGH>, 1282 <GIC_SPI 343 IRQ_TYPE_LEVEL_HIGH>, 1283 <GIC_SPI 344 IRQ_TYPE_LEVEL_HIGH>; 1284 dma-channels = <10>; 1285 dma-channel-mask = <0xf>; 1286 iommus = <&apps_smmu 0xf6 0x0>; 1287 #dma-cells = <3>; 1288 status = "disabled"; 1289 }; 1290 1291 qupv3_id_0: geniqup@4ac0000 { 1292 compatible = "qcom,geni-se-qup"; 1293 reg = <0x0 0x04ac0000 0x0 0x2000>; 1294 clock-names = "m-ahb", "s-ahb"; 1295 clocks = <&gcc GCC_QUPV3_WRAP_0_M_AHB_CLK>, 1296 <&gcc GCC_QUPV3_WRAP_0_S_AHB_CLK>; 1297 #address-cells = <2>; 1298 #size-cells = <2>; 1299 iommus = <&apps_smmu 0xe3 0x0>; 1300 ranges; 1301 status = "disabled"; 1302 1303 i2c0: i2c@4a80000 { 1304 compatible = "qcom,geni-i2c"; 1305 reg = <0x0 0x04a80000 0x0 0x4000>; 1306 clock-names = "se"; 1307 clocks = <&gcc GCC_QUPV3_WRAP0_S0_CLK>; 1308 pinctrl-names = "default"; 1309 pinctrl-0 = <&qup_i2c0_default>; 1310 interrupts = <GIC_SPI 327 IRQ_TYPE_LEVEL_HIGH>; 1311 dmas = <&gpi_dma0 0 0 QCOM_GPI_I2C>, 1312 <&gpi_dma0 1 0 QCOM_GPI_I2C>; 1313 dma-names = "tx", "rx"; 1314 interconnects = <&clk_virt MASTER_QUP_CORE_0 RPM_ALWAYS_TAG 1315 &clk_virt SLAVE_QUP_CORE_0 RPM_ALWAYS_TAG>, 1316 <&bimc MASTER_AMPSS_M0 RPM_ALWAYS_TAG 1317 &config_noc SLAVE_QUP_0 RPM_ALWAYS_TAG>, 1318 <&system_noc MASTER_QUP_0 RPM_ALWAYS_TAG 1319 &bimc SLAVE_EBI_CH0 RPM_ALWAYS_TAG>; 1320 interconnect-names = "qup-core", 1321 "qup-config", 1322 "qup-memory"; 1323 #address-cells = <1>; 1324 #size-cells = <0>; 1325 status = "disabled"; 1326 }; 1327 1328 spi0: spi@4a80000 { 1329 compatible = "qcom,geni-spi"; 1330 reg = <0x0 0x04a80000 0x0 0x4000>; 1331 clock-names = "se"; 1332 clocks = <&gcc GCC_QUPV3_WRAP0_S0_CLK>; 1333 pinctrl-names = "default"; 1334 pinctrl-0 = <&qup_spi0_default>; 1335 interrupts = <GIC_SPI 327 IRQ_TYPE_LEVEL_HIGH>; 1336 dmas = <&gpi_dma0 0 0 QCOM_GPI_SPI>, 1337 <&gpi_dma0 1 0 QCOM_GPI_SPI>; 1338 dma-names = "tx", "rx"; 1339 interconnects = <&clk_virt MASTER_QUP_CORE_0 RPM_ALWAYS_TAG 1340 &clk_virt SLAVE_QUP_CORE_0 RPM_ALWAYS_TAG>, 1341 <&bimc MASTER_AMPSS_M0 RPM_ALWAYS_TAG 1342 &config_noc SLAVE_QUP_0 RPM_ALWAYS_TAG>, 1343 <&system_noc MASTER_QUP_0 RPM_ALWAYS_TAG 1344 &bimc SLAVE_EBI_CH0 RPM_ALWAYS_TAG>; 1345 interconnect-names = "qup-core", 1346 "qup-config", 1347 "qup-memory"; 1348 #address-cells = <1>; 1349 #size-cells = <0>; 1350 status = "disabled"; 1351 }; 1352 1353 i2c1: i2c@4a84000 { 1354 compatible = "qcom,geni-i2c"; 1355 reg = <0x0 0x04a84000 0x0 0x4000>; 1356 clock-names = "se"; 1357 clocks = <&gcc GCC_QUPV3_WRAP0_S1_CLK>; 1358 pinctrl-names = "default"; 1359 pinctrl-0 = <&qup_i2c1_default>; 1360 interrupts = <GIC_SPI 328 IRQ_TYPE_LEVEL_HIGH>; 1361 dmas = <&gpi_dma0 0 1 QCOM_GPI_I2C>, 1362 <&gpi_dma0 1 1 QCOM_GPI_I2C>; 1363 dma-names = "tx", "rx"; 1364 interconnects = <&clk_virt MASTER_QUP_CORE_0 RPM_ALWAYS_TAG 1365 &clk_virt SLAVE_QUP_CORE_0 RPM_ALWAYS_TAG>, 1366 <&bimc MASTER_AMPSS_M0 RPM_ALWAYS_TAG 1367 &config_noc SLAVE_QUP_0 RPM_ALWAYS_TAG>, 1368 <&system_noc MASTER_QUP_0 RPM_ALWAYS_TAG 1369 &bimc SLAVE_EBI_CH0 RPM_ALWAYS_TAG>; 1370 interconnect-names = "qup-core", 1371 "qup-config", 1372 "qup-memory"; 1373 #address-cells = <1>; 1374 #size-cells = <0>; 1375 status = "disabled"; 1376 }; 1377 1378 spi1: spi@4a84000 { 1379 compatible = "qcom,geni-spi"; 1380 reg = <0x0 0x04a84000 0x0 0x4000>; 1381 clock-names = "se"; 1382 clocks = <&gcc GCC_QUPV3_WRAP0_S1_CLK>; 1383 pinctrl-names = "default"; 1384 pinctrl-0 = <&qup_spi1_default>; 1385 interrupts = <GIC_SPI 328 IRQ_TYPE_LEVEL_HIGH>; 1386 dmas = <&gpi_dma0 0 1 QCOM_GPI_SPI>, 1387 <&gpi_dma0 1 1 QCOM_GPI_SPI>; 1388 dma-names = "tx", "rx"; 1389 interconnects = <&clk_virt MASTER_QUP_CORE_0 RPM_ALWAYS_TAG 1390 &clk_virt SLAVE_QUP_CORE_0 RPM_ALWAYS_TAG>, 1391 <&bimc MASTER_AMPSS_M0 RPM_ALWAYS_TAG 1392 &config_noc SLAVE_QUP_0 RPM_ALWAYS_TAG>, 1393 <&system_noc MASTER_QUP_0 RPM_ALWAYS_TAG 1394 &bimc SLAVE_EBI_CH0 RPM_ALWAYS_TAG>; 1395 interconnect-names = "qup-core", 1396 "qup-config", 1397 "qup-memory"; 1398 #address-cells = <1>; 1399 #size-cells = <0>; 1400 status = "disabled"; 1401 }; 1402 1403 i2c2: i2c@4a88000 { 1404 compatible = "qcom,geni-i2c"; 1405 reg = <0x0 0x04a88000 0x0 0x4000>; 1406 clock-names = "se"; 1407 clocks = <&gcc GCC_QUPV3_WRAP0_S2_CLK>; 1408 pinctrl-names = "default"; 1409 pinctrl-0 = <&qup_i2c2_default>; 1410 interrupts = <GIC_SPI 329 IRQ_TYPE_LEVEL_HIGH>; 1411 dmas = <&gpi_dma0 0 2 QCOM_GPI_I2C>, 1412 <&gpi_dma0 1 2 QCOM_GPI_I2C>; 1413 dma-names = "tx", "rx"; 1414 interconnects = <&clk_virt MASTER_QUP_CORE_0 RPM_ALWAYS_TAG 1415 &clk_virt SLAVE_QUP_CORE_0 RPM_ALWAYS_TAG>, 1416 <&bimc MASTER_AMPSS_M0 RPM_ALWAYS_TAG 1417 &config_noc SLAVE_QUP_0 RPM_ALWAYS_TAG>, 1418 <&system_noc MASTER_QUP_0 RPM_ALWAYS_TAG 1419 &bimc SLAVE_EBI_CH0 RPM_ALWAYS_TAG>; 1420 interconnect-names = "qup-core", 1421 "qup-config", 1422 "qup-memory"; 1423 #address-cells = <1>; 1424 #size-cells = <0>; 1425 status = "disabled"; 1426 }; 1427 1428 spi2: spi@4a88000 { 1429 compatible = "qcom,geni-spi"; 1430 reg = <0x0 0x04a88000 0x0 0x4000>; 1431 clock-names = "se"; 1432 clocks = <&gcc GCC_QUPV3_WRAP0_S2_CLK>; 1433 pinctrl-names = "default"; 1434 pinctrl-0 = <&qup_spi2_default>; 1435 interrupts = <GIC_SPI 329 IRQ_TYPE_LEVEL_HIGH>; 1436 dmas = <&gpi_dma0 0 2 QCOM_GPI_SPI>, 1437 <&gpi_dma0 1 2 QCOM_GPI_SPI>; 1438 dma-names = "tx", "rx"; 1439 interconnects = <&clk_virt MASTER_QUP_CORE_0 RPM_ALWAYS_TAG 1440 &clk_virt SLAVE_QUP_CORE_0 RPM_ALWAYS_TAG>, 1441 <&bimc MASTER_AMPSS_M0 RPM_ALWAYS_TAG 1442 &config_noc SLAVE_QUP_0 RPM_ALWAYS_TAG>, 1443 <&system_noc MASTER_QUP_0 RPM_ALWAYS_TAG 1444 &bimc SLAVE_EBI_CH0 RPM_ALWAYS_TAG>; 1445 interconnect-names = "qup-core", 1446 "qup-config", 1447 "qup-memory"; 1448 #address-cells = <1>; 1449 #size-cells = <0>; 1450 status = "disabled"; 1451 }; 1452 1453 i2c3: i2c@4a8c000 { 1454 compatible = "qcom,geni-i2c"; 1455 reg = <0x0 0x04a8c000 0x0 0x4000>; 1456 clock-names = "se"; 1457 clocks = <&gcc GCC_QUPV3_WRAP0_S3_CLK>; 1458 pinctrl-names = "default"; 1459 pinctrl-0 = <&qup_i2c3_default>; 1460 interrupts = <GIC_SPI 330 IRQ_TYPE_LEVEL_HIGH>; 1461 dmas = <&gpi_dma0 0 3 QCOM_GPI_I2C>, 1462 <&gpi_dma0 1 3 QCOM_GPI_I2C>; 1463 dma-names = "tx", "rx"; 1464 interconnects = <&clk_virt MASTER_QUP_CORE_0 RPM_ALWAYS_TAG 1465 &clk_virt SLAVE_QUP_CORE_0 RPM_ALWAYS_TAG>, 1466 <&bimc MASTER_AMPSS_M0 RPM_ALWAYS_TAG 1467 &config_noc SLAVE_QUP_0 RPM_ALWAYS_TAG>, 1468 <&system_noc MASTER_QUP_0 RPM_ALWAYS_TAG 1469 &bimc SLAVE_EBI_CH0 RPM_ALWAYS_TAG>; 1470 interconnect-names = "qup-core", 1471 "qup-config", 1472 "qup-memory"; 1473 #address-cells = <1>; 1474 #size-cells = <0>; 1475 status = "disabled"; 1476 }; 1477 1478 spi3: spi@4a8c000 { 1479 compatible = "qcom,geni-spi"; 1480 reg = <0x0 0x04a8c000 0x0 0x4000>; 1481 clock-names = "se"; 1482 clocks = <&gcc GCC_QUPV3_WRAP0_S3_CLK>; 1483 pinctrl-names = "default"; 1484 pinctrl-0 = <&qup_spi3_default>; 1485 interrupts = <GIC_SPI 330 IRQ_TYPE_LEVEL_HIGH>; 1486 dmas = <&gpi_dma0 0 3 QCOM_GPI_SPI>, 1487 <&gpi_dma0 1 3 QCOM_GPI_SPI>; 1488 dma-names = "tx", "rx"; 1489 interconnects = <&clk_virt MASTER_QUP_CORE_0 RPM_ALWAYS_TAG 1490 &clk_virt SLAVE_QUP_CORE_0 RPM_ALWAYS_TAG>, 1491 <&bimc MASTER_AMPSS_M0 RPM_ALWAYS_TAG 1492 &config_noc SLAVE_QUP_0 RPM_ALWAYS_TAG>, 1493 <&system_noc MASTER_QUP_0 RPM_ALWAYS_TAG 1494 &bimc SLAVE_EBI_CH0 RPM_ALWAYS_TAG>; 1495 interconnect-names = "qup-core", 1496 "qup-config", 1497 "qup-memory"; 1498 #address-cells = <1>; 1499 #size-cells = <0>; 1500 status = "disabled"; 1501 }; 1502 1503 uart3: serial@4a8c000 { 1504 compatible = "qcom,geni-uart"; 1505 reg = <0x0 0x04a8c000 0x0 0x4000>; 1506 interrupts-extended = <&intc GIC_SPI 330 IRQ_TYPE_LEVEL_HIGH>; 1507 clocks = <&gcc GCC_QUPV3_WRAP0_S3_CLK>; 1508 clock-names = "se"; 1509 power-domains = <&rpmpd SM6115_VDDCX>; 1510 operating-points-v2 = <&qup_opp_table>; 1511 interconnects = <&clk_virt MASTER_QUP_CORE_0 RPM_ALWAYS_TAG 1512 &clk_virt SLAVE_QUP_CORE_0 RPM_ALWAYS_TAG>, 1513 <&bimc MASTER_AMPSS_M0 RPM_ALWAYS_TAG 1514 &config_noc SLAVE_QUP_0 RPM_ALWAYS_TAG>; 1515 interconnect-names = "qup-core", 1516 "qup-config"; 1517 status = "disabled"; 1518 }; 1519 1520 i2c4: i2c@4a90000 { 1521 compatible = "qcom,geni-i2c"; 1522 reg = <0x0 0x04a90000 0x0 0x4000>; 1523 clock-names = "se"; 1524 clocks = <&gcc GCC_QUPV3_WRAP0_S4_CLK>; 1525 pinctrl-names = "default"; 1526 pinctrl-0 = <&qup_i2c4_default>; 1527 interrupts = <GIC_SPI 331 IRQ_TYPE_LEVEL_HIGH>; 1528 dmas = <&gpi_dma0 0 4 QCOM_GPI_I2C>, 1529 <&gpi_dma0 1 4 QCOM_GPI_I2C>; 1530 dma-names = "tx", "rx"; 1531 interconnects = <&clk_virt MASTER_QUP_CORE_0 RPM_ALWAYS_TAG 1532 &clk_virt SLAVE_QUP_CORE_0 RPM_ALWAYS_TAG>, 1533 <&bimc MASTER_AMPSS_M0 RPM_ALWAYS_TAG 1534 &config_noc SLAVE_QUP_0 RPM_ALWAYS_TAG>, 1535 <&system_noc MASTER_QUP_0 RPM_ALWAYS_TAG 1536 &bimc SLAVE_EBI_CH0 RPM_ALWAYS_TAG>; 1537 interconnect-names = "qup-core", 1538 "qup-config", 1539 "qup-memory"; 1540 #address-cells = <1>; 1541 #size-cells = <0>; 1542 status = "disabled"; 1543 }; 1544 1545 spi4: spi@4a90000 { 1546 compatible = "qcom,geni-spi"; 1547 reg = <0x0 0x04a90000 0x0 0x4000>; 1548 clock-names = "se"; 1549 clocks = <&gcc GCC_QUPV3_WRAP0_S4_CLK>; 1550 pinctrl-names = "default"; 1551 pinctrl-0 = <&qup_spi4_default>; 1552 interrupts = <GIC_SPI 331 IRQ_TYPE_LEVEL_HIGH>; 1553 dmas = <&gpi_dma0 0 4 QCOM_GPI_SPI>, 1554 <&gpi_dma0 1 4 QCOM_GPI_SPI>; 1555 dma-names = "tx", "rx"; 1556 interconnects = <&clk_virt MASTER_QUP_CORE_0 RPM_ALWAYS_TAG 1557 &clk_virt SLAVE_QUP_CORE_0 RPM_ALWAYS_TAG>, 1558 <&bimc MASTER_AMPSS_M0 RPM_ALWAYS_TAG 1559 &config_noc SLAVE_QUP_0 RPM_ALWAYS_TAG>, 1560 <&system_noc MASTER_QUP_0 RPM_ALWAYS_TAG 1561 &bimc SLAVE_EBI_CH0 RPM_ALWAYS_TAG>; 1562 interconnect-names = "qup-core", 1563 "qup-config", 1564 "qup-memory"; 1565 #address-cells = <1>; 1566 #size-cells = <0>; 1567 status = "disabled"; 1568 }; 1569 1570 uart4: serial@4a90000 { 1571 compatible = "qcom,geni-debug-uart"; 1572 reg = <0x0 0x04a90000 0x0 0x4000>; 1573 clock-names = "se"; 1574 clocks = <&gcc GCC_QUPV3_WRAP0_S4_CLK>; 1575 pinctrl-names = "default"; 1576 pinctrl-0 = <&qup_uart4_default>; 1577 interrupts = <GIC_SPI 331 IRQ_TYPE_LEVEL_HIGH>; 1578 interconnects = <&clk_virt MASTER_QUP_CORE_0 RPM_ALWAYS_TAG 1579 &clk_virt SLAVE_QUP_CORE_0 RPM_ALWAYS_TAG>, 1580 <&bimc MASTER_AMPSS_M0 RPM_ALWAYS_TAG 1581 &config_noc SLAVE_QUP_0 RPM_ALWAYS_TAG>; 1582 interconnect-names = "qup-core", 1583 "qup-config"; 1584 status = "disabled"; 1585 }; 1586 1587 i2c5: i2c@4a94000 { 1588 compatible = "qcom,geni-i2c"; 1589 reg = <0x0 0x04a94000 0x0 0x4000>; 1590 clock-names = "se"; 1591 clocks = <&gcc GCC_QUPV3_WRAP0_S5_CLK>; 1592 pinctrl-names = "default"; 1593 pinctrl-0 = <&qup_i2c5_default>; 1594 interrupts = <GIC_SPI 332 IRQ_TYPE_LEVEL_HIGH>; 1595 dmas = <&gpi_dma0 0 5 QCOM_GPI_I2C>, 1596 <&gpi_dma0 1 5 QCOM_GPI_I2C>; 1597 dma-names = "tx", "rx"; 1598 interconnects = <&clk_virt MASTER_QUP_CORE_0 RPM_ALWAYS_TAG 1599 &clk_virt SLAVE_QUP_CORE_0 RPM_ALWAYS_TAG>, 1600 <&bimc MASTER_AMPSS_M0 RPM_ALWAYS_TAG 1601 &config_noc SLAVE_QUP_0 RPM_ALWAYS_TAG>, 1602 <&system_noc MASTER_QUP_0 RPM_ALWAYS_TAG 1603 &bimc SLAVE_EBI_CH0 RPM_ALWAYS_TAG>; 1604 interconnect-names = "qup-core", 1605 "qup-config", 1606 "qup-memory"; 1607 #address-cells = <1>; 1608 #size-cells = <0>; 1609 status = "disabled"; 1610 }; 1611 1612 spi5: spi@4a94000 { 1613 compatible = "qcom,geni-spi"; 1614 reg = <0x0 0x04a94000 0x0 0x4000>; 1615 clock-names = "se"; 1616 clocks = <&gcc GCC_QUPV3_WRAP0_S5_CLK>; 1617 pinctrl-names = "default"; 1618 pinctrl-0 = <&qup_spi5_default>; 1619 interrupts = <GIC_SPI 332 IRQ_TYPE_LEVEL_HIGH>; 1620 dmas = <&gpi_dma0 0 5 QCOM_GPI_SPI>, 1621 <&gpi_dma0 1 5 QCOM_GPI_SPI>; 1622 dma-names = "tx", "rx"; 1623 interconnects = <&clk_virt MASTER_QUP_CORE_0 RPM_ALWAYS_TAG 1624 &clk_virt SLAVE_QUP_CORE_0 RPM_ALWAYS_TAG>, 1625 <&bimc MASTER_AMPSS_M0 RPM_ALWAYS_TAG 1626 &config_noc SLAVE_QUP_0 RPM_ALWAYS_TAG>, 1627 <&system_noc MASTER_QUP_0 RPM_ALWAYS_TAG 1628 &bimc SLAVE_EBI_CH0 RPM_ALWAYS_TAG>; 1629 interconnect-names = "qup-core", 1630 "qup-config", 1631 "qup-memory"; 1632 #address-cells = <1>; 1633 #size-cells = <0>; 1634 status = "disabled"; 1635 }; 1636 }; 1637 1638 usb: usb@4ef8800 { 1639 compatible = "qcom,sm6115-dwc3", "qcom,dwc3"; 1640 reg = <0x0 0x04ef8800 0x0 0x400>; 1641 #address-cells = <2>; 1642 #size-cells = <2>; 1643 ranges; 1644 1645 clocks = <&gcc GCC_CFG_NOC_USB3_PRIM_AXI_CLK>, 1646 <&gcc GCC_USB30_PRIM_MASTER_CLK>, 1647 <&gcc GCC_SYS_NOC_USB3_PRIM_AXI_CLK>, 1648 <&gcc GCC_USB30_PRIM_SLEEP_CLK>, 1649 <&gcc GCC_USB30_PRIM_MOCK_UTMI_CLK>, 1650 <&gcc GCC_USB3_PRIM_CLKREF_CLK>; 1651 clock-names = "cfg_noc", "core", "iface", "sleep", "mock_utmi", "xo"; 1652 1653 assigned-clocks = <&gcc GCC_USB30_PRIM_MOCK_UTMI_CLK>, 1654 <&gcc GCC_USB30_PRIM_MASTER_CLK>; 1655 assigned-clock-rates = <19200000>, <66666667>; 1656 1657 interrupts = <GIC_SPI 302 IRQ_TYPE_LEVEL_HIGH>, 1658 <GIC_SPI 260 IRQ_TYPE_LEVEL_HIGH>, 1659 <GIC_SPI 254 IRQ_TYPE_LEVEL_HIGH>, 1660 <GIC_SPI 422 IRQ_TYPE_LEVEL_HIGH>; 1661 interrupt-names = "pwr_event", 1662 "qusb2_phy", 1663 "hs_phy_irq", 1664 "ss_phy_irq"; 1665 1666 resets = <&gcc GCC_USB30_PRIM_BCR>; 1667 power-domains = <&gcc GCC_USB30_PRIM_GDSC>; 1668 /* TODO: USB<->IPA path */ 1669 interconnects = <&system_noc MASTER_USB3 RPM_ALWAYS_TAG 1670 &bimc SLAVE_EBI_CH0 RPM_ALWAYS_TAG>, 1671 <&bimc MASTER_AMPSS_M0 RPM_ALWAYS_TAG 1672 &config_noc SLAVE_USB3 RPM_ALWAYS_TAG>; 1673 interconnect-names = "usb-ddr", 1674 "apps-usb"; 1675 1676 status = "disabled"; 1677 1678 usb_dwc3: usb@4e00000 { 1679 compatible = "snps,dwc3"; 1680 reg = <0x0 0x04e00000 0x0 0xcd00>; 1681 interrupts = <GIC_SPI 255 IRQ_TYPE_LEVEL_HIGH>; 1682 phys = <&usb_hsphy>, <&usb_qmpphy>; 1683 phy-names = "usb2-phy", "usb3-phy"; 1684 iommus = <&apps_smmu 0x120 0x0>; 1685 snps,dis_u2_susphy_quirk; 1686 snps,dis_enblslpm_quirk; 1687 snps,has-lpm-erratum; 1688 snps,hird-threshold = /bits/ 8 <0x10>; 1689 snps,usb3_lpm_capable; 1690 snps,parkmode-disable-ss-quirk; 1691 1692 usb-role-switch; 1693 1694 ports { 1695 #address-cells = <1>; 1696 #size-cells = <0>; 1697 1698 port@0 { 1699 reg = <0>; 1700 1701 usb_dwc3_hs: endpoint { 1702 }; 1703 }; 1704 1705 port@1 { 1706 reg = <1>; 1707 1708 usb_dwc3_ss: endpoint { 1709 remote-endpoint = <&usb_qmpphy_usb_ss_in>; 1710 }; 1711 }; 1712 }; 1713 }; 1714 }; 1715 1716 gpu: gpu@5900000 { 1717 compatible = "qcom,adreno-610.0", "qcom,adreno"; 1718 reg = <0x0 0x05900000 0x0 0x40000>, 1719 <0x0 0x0599e000 0x0 0x1000>, 1720 <0x0 0x05961000 0x0 0x800>; 1721 reg-names = "kgsl_3d0_reg_memory", 1722 "cx_mem", 1723 "cx_dbgc"; 1724 1725 /* There's no (real) GMU, so we have to handle quite a bunch of clocks! */ 1726 clocks = <&gpucc GPU_CC_GX_GFX3D_CLK>, 1727 <&gpucc GPU_CC_AHB_CLK>, 1728 <&gcc GCC_BIMC_GPU_AXI_CLK>, 1729 <&gcc GCC_GPU_MEMNOC_GFX_CLK>, 1730 <&gpucc GPU_CC_CX_GMU_CLK>, 1731 <&gpucc GPU_CC_CXO_CLK>; 1732 clock-names = "core", 1733 "iface", 1734 "mem_iface", 1735 "alt_mem_iface", 1736 "gmu", 1737 "xo"; 1738 1739 interrupts = <GIC_SPI 177 IRQ_TYPE_LEVEL_HIGH>; 1740 1741 iommus = <&adreno_smmu 0 1>; 1742 operating-points-v2 = <&gpu_opp_table>; 1743 power-domains = <&rpmpd SM6115_VDDCX>; 1744 qcom,gmu = <&gmu_wrapper>; 1745 1746 nvmem-cells = <&gpu_speed_bin>; 1747 nvmem-cell-names = "speed_bin"; 1748 #cooling-cells = <2>; 1749 1750 status = "disabled"; 1751 1752 gpu_zap_shader: zap-shader { 1753 memory-region = <&pil_gpu_mem>; 1754 }; 1755 1756 gpu_opp_table: opp-table { 1757 compatible = "operating-points-v2"; 1758 1759 opp-320000000 { 1760 opp-hz = /bits/ 64 <320000000>; 1761 required-opps = <&rpmpd_opp_low_svs>; 1762 opp-supported-hw = <0x1f>; 1763 }; 1764 1765 opp-465000000 { 1766 opp-hz = /bits/ 64 <465000000>; 1767 required-opps = <&rpmpd_opp_svs>; 1768 opp-supported-hw = <0x1f>; 1769 }; 1770 1771 opp-600000000 { 1772 opp-hz = /bits/ 64 <600000000>; 1773 required-opps = <&rpmpd_opp_svs_plus>; 1774 opp-supported-hw = <0x1f>; 1775 }; 1776 1777 opp-745000000 { 1778 opp-hz = /bits/ 64 <745000000>; 1779 required-opps = <&rpmpd_opp_nom>; 1780 opp-supported-hw = <0xf>; 1781 }; 1782 1783 opp-820000000 { 1784 opp-hz = /bits/ 64 <820000000>; 1785 required-opps = <&rpmpd_opp_nom_plus>; 1786 opp-supported-hw = <0x7>; 1787 }; 1788 1789 opp-900000000 { 1790 opp-hz = /bits/ 64 <900000000>; 1791 required-opps = <&rpmpd_opp_turbo>; 1792 opp-supported-hw = <0x7>; 1793 }; 1794 1795 /* Speed bin 2 can reach 950 Mhz instead of 980 like the rest. */ 1796 opp-950000000 { 1797 opp-hz = /bits/ 64 <950000000>; 1798 required-opps = <&rpmpd_opp_turbo_plus>; 1799 opp-supported-hw = <0x4>; 1800 }; 1801 1802 opp-980000000 { 1803 opp-hz = /bits/ 64 <980000000>; 1804 required-opps = <&rpmpd_opp_turbo_plus>; 1805 opp-supported-hw = <0x3>; 1806 }; 1807 }; 1808 }; 1809 1810 gmu_wrapper: gmu@596a000 { 1811 compatible = "qcom,adreno-gmu-wrapper"; 1812 reg = <0x0 0x0596a000 0x0 0x30000>; 1813 reg-names = "gmu"; 1814 power-domains = <&gpucc GPU_CX_GDSC>, 1815 <&gpucc GPU_GX_GDSC>; 1816 power-domain-names = "cx", "gx"; 1817 }; 1818 1819 gpucc: clock-controller@5990000 { 1820 compatible = "qcom,sm6115-gpucc"; 1821 reg = <0x0 0x05990000 0x0 0x9000>; 1822 clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>, 1823 <&gcc GCC_GPU_GPLL0_CLK_SRC>, 1824 <&gcc GCC_GPU_GPLL0_DIV_CLK_SRC>; 1825 #clock-cells = <1>; 1826 #reset-cells = <1>; 1827 #power-domain-cells = <1>; 1828 }; 1829 1830 adreno_smmu: iommu@59a0000 { 1831 compatible = "qcom,sm6115-smmu-500", "qcom,adreno-smmu", 1832 "qcom,smmu-500", "arm,mmu-500"; 1833 reg = <0x0 0x059a0000 0x0 0x10000>; 1834 interrupts = <GIC_SPI 163 IRQ_TYPE_LEVEL_HIGH>, 1835 <GIC_SPI 167 IRQ_TYPE_LEVEL_HIGH>, 1836 <GIC_SPI 168 IRQ_TYPE_LEVEL_HIGH>, 1837 <GIC_SPI 169 IRQ_TYPE_LEVEL_HIGH>, 1838 <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 1839 <GIC_SPI 171 IRQ_TYPE_LEVEL_HIGH>, 1840 <GIC_SPI 172 IRQ_TYPE_LEVEL_HIGH>, 1841 <GIC_SPI 173 IRQ_TYPE_LEVEL_HIGH>, 1842 <GIC_SPI 174 IRQ_TYPE_LEVEL_HIGH>; 1843 1844 clocks = <&gcc GCC_GPU_MEMNOC_GFX_CLK>, 1845 <&gpucc GPU_CC_HLOS1_VOTE_GPU_SMMU_CLK>, 1846 <&gcc GCC_GPU_SNOC_DVM_GFX_CLK>; 1847 clock-names = "mem", 1848 "hlos", 1849 "iface"; 1850 power-domains = <&gpucc GPU_CX_GDSC>; 1851 1852 #global-interrupts = <1>; 1853 #iommu-cells = <2>; 1854 }; 1855 1856 mdss: display-subsystem@5e00000 { 1857 compatible = "qcom,sm6115-mdss"; 1858 reg = <0x0 0x05e00000 0x0 0x1000>; 1859 reg-names = "mdss"; 1860 1861 power-domains = <&dispcc MDSS_GDSC>; 1862 1863 clocks = <&gcc GCC_DISP_AHB_CLK>, 1864 <&gcc GCC_DISP_HF_AXI_CLK>, 1865 <&dispcc DISP_CC_MDSS_MDP_CLK>; 1866 1867 interrupts = <GIC_SPI 186 IRQ_TYPE_LEVEL_HIGH>; 1868 interrupt-controller; 1869 #interrupt-cells = <1>; 1870 1871 iommus = <&apps_smmu 0x420 0x2>, 1872 <&apps_smmu 0x421 0x0>; 1873 1874 interconnects = <&mmrt_virt MASTER_MDP_PORT0 RPM_ALWAYS_TAG 1875 &bimc SLAVE_EBI_CH0 RPM_ALWAYS_TAG>, 1876 <&bimc MASTER_AMPSS_M0 RPM_ALWAYS_TAG 1877 &config_noc SLAVE_DISPLAY_CFG RPM_ALWAYS_TAG>; 1878 interconnect-names = "mdp0-mem", 1879 "cpu-cfg"; 1880 1881 #address-cells = <2>; 1882 #size-cells = <2>; 1883 ranges; 1884 1885 status = "disabled"; 1886 1887 mdp: display-controller@5e01000 { 1888 compatible = "qcom,sm6115-dpu"; 1889 reg = <0x0 0x05e01000 0x0 0x8f000>, 1890 <0x0 0x05eb0000 0x0 0x3000>; 1891 reg-names = "mdp", "vbif"; 1892 1893 clocks = <&gcc GCC_DISP_HF_AXI_CLK>, 1894 <&dispcc DISP_CC_MDSS_AHB_CLK>, 1895 <&dispcc DISP_CC_MDSS_MDP_CLK>, 1896 <&dispcc DISP_CC_MDSS_MDP_LUT_CLK>, 1897 <&dispcc DISP_CC_MDSS_ROT_CLK>, 1898 <&dispcc DISP_CC_MDSS_VSYNC_CLK>; 1899 clock-names = "bus", 1900 "iface", 1901 "core", 1902 "lut", 1903 "rot", 1904 "vsync"; 1905 1906 operating-points-v2 = <&mdp_opp_table>; 1907 power-domains = <&rpmpd SM6115_VDDCX>; 1908 1909 interrupt-parent = <&mdss>; 1910 interrupts = <0>; 1911 1912 ports { 1913 #address-cells = <1>; 1914 #size-cells = <0>; 1915 1916 port@0 { 1917 reg = <0>; 1918 dpu_intf1_out: endpoint { 1919 remote-endpoint = <&mdss_dsi0_in>; 1920 }; 1921 }; 1922 }; 1923 1924 mdp_opp_table: opp-table { 1925 compatible = "operating-points-v2"; 1926 1927 opp-19200000 { 1928 opp-hz = /bits/ 64 <19200000>; 1929 required-opps = <&rpmpd_opp_min_svs>; 1930 }; 1931 1932 opp-192000000 { 1933 opp-hz = /bits/ 64 <192000000>; 1934 required-opps = <&rpmpd_opp_low_svs>; 1935 }; 1936 1937 opp-256000000 { 1938 opp-hz = /bits/ 64 <256000000>; 1939 required-opps = <&rpmpd_opp_svs>; 1940 }; 1941 1942 opp-307200000 { 1943 opp-hz = /bits/ 64 <307200000>; 1944 required-opps = <&rpmpd_opp_svs_plus>; 1945 }; 1946 1947 opp-384000000 { 1948 opp-hz = /bits/ 64 <384000000>; 1949 required-opps = <&rpmpd_opp_nom>; 1950 }; 1951 }; 1952 }; 1953 1954 mdss_dsi0: dsi@5e94000 { 1955 compatible = "qcom,sm6115-dsi-ctrl", "qcom,mdss-dsi-ctrl"; 1956 reg = <0x0 0x05e94000 0x0 0x400>; 1957 reg-names = "dsi_ctrl"; 1958 1959 interrupt-parent = <&mdss>; 1960 interrupts = <4>; 1961 1962 clocks = <&dispcc DISP_CC_MDSS_BYTE0_CLK>, 1963 <&dispcc DISP_CC_MDSS_BYTE0_INTF_CLK>, 1964 <&dispcc DISP_CC_MDSS_PCLK0_CLK>, 1965 <&dispcc DISP_CC_MDSS_ESC0_CLK>, 1966 <&dispcc DISP_CC_MDSS_AHB_CLK>, 1967 <&gcc GCC_DISP_HF_AXI_CLK>; 1968 clock-names = "byte", 1969 "byte_intf", 1970 "pixel", 1971 "core", 1972 "iface", 1973 "bus"; 1974 1975 assigned-clocks = <&dispcc DISP_CC_MDSS_BYTE0_CLK_SRC>, 1976 <&dispcc DISP_CC_MDSS_PCLK0_CLK_SRC>; 1977 assigned-clock-parents = <&mdss_dsi0_phy DSI_BYTE_PLL_CLK>, 1978 <&mdss_dsi0_phy DSI_PIXEL_PLL_CLK>; 1979 1980 operating-points-v2 = <&dsi_opp_table>; 1981 power-domains = <&rpmpd SM6115_VDDCX>; 1982 phys = <&mdss_dsi0_phy>; 1983 1984 #address-cells = <1>; 1985 #size-cells = <0>; 1986 1987 status = "disabled"; 1988 1989 ports { 1990 #address-cells = <1>; 1991 #size-cells = <0>; 1992 1993 port@0 { 1994 reg = <0>; 1995 mdss_dsi0_in: endpoint { 1996 remote-endpoint = <&dpu_intf1_out>; 1997 }; 1998 }; 1999 2000 port@1 { 2001 reg = <1>; 2002 mdss_dsi0_out: endpoint { 2003 }; 2004 }; 2005 }; 2006 2007 dsi_opp_table: opp-table { 2008 compatible = "operating-points-v2"; 2009 2010 opp-19200000 { 2011 opp-hz = /bits/ 64 <19200000>; 2012 required-opps = <&rpmpd_opp_min_svs>; 2013 }; 2014 2015 opp-164000000 { 2016 opp-hz = /bits/ 64 <164000000>; 2017 required-opps = <&rpmpd_opp_low_svs>; 2018 }; 2019 2020 opp-187500000 { 2021 opp-hz = /bits/ 64 <187500000>; 2022 required-opps = <&rpmpd_opp_svs>; 2023 }; 2024 }; 2025 }; 2026 2027 mdss_dsi0_phy: phy@5e94400 { 2028 compatible = "qcom,dsi-phy-14nm-2290"; 2029 reg = <0x0 0x05e94400 0x0 0x100>, 2030 <0x0 0x05e94500 0x0 0x300>, 2031 <0x0 0x05e94800 0x0 0x188>; 2032 reg-names = "dsi_phy", 2033 "dsi_phy_lane", 2034 "dsi_pll"; 2035 2036 #clock-cells = <1>; 2037 #phy-cells = <0>; 2038 2039 clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>, 2040 <&rpmcc RPM_SMD_XO_CLK_SRC>; 2041 clock-names = "iface", "ref"; 2042 2043 status = "disabled"; 2044 }; 2045 }; 2046 2047 dispcc: clock-controller@5f00000 { 2048 compatible = "qcom,sm6115-dispcc"; 2049 reg = <0x0 0x05f00000 0 0x20000>; 2050 clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>, 2051 <&sleep_clk>, 2052 <&mdss_dsi0_phy DSI_BYTE_PLL_CLK>, 2053 <&mdss_dsi0_phy DSI_PIXEL_PLL_CLK>, 2054 <&gcc GCC_DISP_GPLL0_DIV_CLK_SRC>; 2055 #clock-cells = <1>; 2056 #reset-cells = <1>; 2057 #power-domain-cells = <1>; 2058 }; 2059 2060 remoteproc_mpss: remoteproc@6080000 { 2061 compatible = "qcom,sm6115-mpss-pas"; 2062 reg = <0x0 0x06080000 0x0 0x10000>; 2063 2064 interrupts-extended = <&intc GIC_SPI 307 IRQ_TYPE_EDGE_RISING>, 2065 <&modem_smp2p_in 0 IRQ_TYPE_EDGE_RISING>, 2066 <&modem_smp2p_in 1 IRQ_TYPE_EDGE_RISING>, 2067 <&modem_smp2p_in 2 IRQ_TYPE_EDGE_RISING>, 2068 <&modem_smp2p_in 3 IRQ_TYPE_EDGE_RISING>, 2069 <&modem_smp2p_in 7 IRQ_TYPE_EDGE_RISING>; 2070 interrupt-names = "wdog", "fatal", "ready", "handover", 2071 "stop-ack", "shutdown-ack"; 2072 2073 clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>; 2074 clock-names = "xo"; 2075 2076 power-domains = <&rpmpd SM6115_VDDCX>; 2077 2078 memory-region = <&pil_modem_mem>; 2079 2080 qcom,smem-states = <&modem_smp2p_out 0>; 2081 qcom,smem-state-names = "stop"; 2082 2083 status = "disabled"; 2084 2085 glink-edge { 2086 interrupts = <GIC_SPI 68 IRQ_TYPE_EDGE_RISING>; 2087 label = "mpss"; 2088 qcom,remote-pid = <1>; 2089 mboxes = <&apcs_glb 12>; 2090 }; 2091 }; 2092 2093 stm@8002000 { 2094 compatible = "arm,coresight-stm", "arm,primecell"; 2095 reg = <0x0 0x08002000 0x0 0x1000>, 2096 <0x0 0x0e280000 0x0 0x180000>; 2097 reg-names = "stm-base", "stm-stimulus-base"; 2098 2099 clocks = <&rpmcc RPM_SMD_QDSS_CLK>; 2100 clock-names = "apb_pclk"; 2101 2102 status = "disabled"; 2103 2104 out-ports { 2105 port { 2106 stm_out: endpoint { 2107 remote-endpoint = <&funnel_in0_in>; 2108 }; 2109 }; 2110 }; 2111 }; 2112 2113 cti0: cti@8010000 { 2114 compatible = "arm,coresight-cti", "arm,primecell"; 2115 reg = <0x0 0x08010000 0x0 0x1000>; 2116 2117 clocks = <&rpmcc RPM_SMD_QDSS_CLK>; 2118 clock-names = "apb_pclk"; 2119 2120 status = "disabled"; 2121 }; 2122 2123 cti1: cti@8011000 { 2124 compatible = "arm,coresight-cti", "arm,primecell"; 2125 reg = <0x0 0x08011000 0x0 0x1000>; 2126 2127 clocks = <&rpmcc RPM_SMD_QDSS_CLK>; 2128 clock-names = "apb_pclk"; 2129 2130 status = "disabled"; 2131 }; 2132 2133 cti2: cti@8012000 { 2134 compatible = "arm,coresight-cti", "arm,primecell"; 2135 reg = <0x0 0x08012000 0x0 0x1000>; 2136 2137 clocks = <&rpmcc RPM_SMD_QDSS_CLK>; 2138 clock-names = "apb_pclk"; 2139 2140 status = "disabled"; 2141 }; 2142 2143 cti3: cti@8013000 { 2144 compatible = "arm,coresight-cti", "arm,primecell"; 2145 reg = <0x0 0x08013000 0x0 0x1000>; 2146 2147 clocks = <&rpmcc RPM_SMD_QDSS_CLK>; 2148 clock-names = "apb_pclk"; 2149 2150 status = "disabled"; 2151 }; 2152 2153 cti4: cti@8014000 { 2154 compatible = "arm,coresight-cti", "arm,primecell"; 2155 reg = <0x0 0x08014000 0x0 0x1000>; 2156 2157 clocks = <&rpmcc RPM_SMD_QDSS_CLK>; 2158 clock-names = "apb_pclk"; 2159 2160 status = "disabled"; 2161 }; 2162 2163 cti5: cti@8015000 { 2164 compatible = "arm,coresight-cti", "arm,primecell"; 2165 reg = <0x0 0x08015000 0x0 0x1000>; 2166 2167 clocks = <&rpmcc RPM_SMD_QDSS_CLK>; 2168 clock-names = "apb_pclk"; 2169 2170 status = "disabled"; 2171 }; 2172 2173 cti6: cti@8016000 { 2174 compatible = "arm,coresight-cti", "arm,primecell"; 2175 reg = <0x0 0x08016000 0x0 0x1000>; 2176 2177 clocks = <&rpmcc RPM_SMD_QDSS_CLK>; 2178 clock-names = "apb_pclk"; 2179 2180 status = "disabled"; 2181 }; 2182 2183 cti7: cti@8017000 { 2184 compatible = "arm,coresight-cti", "arm,primecell"; 2185 reg = <0x0 0x08017000 0x0 0x1000>; 2186 2187 clocks = <&rpmcc RPM_SMD_QDSS_CLK>; 2188 clock-names = "apb_pclk"; 2189 2190 status = "disabled"; 2191 }; 2192 2193 cti8: cti@8018000 { 2194 compatible = "arm,coresight-cti", "arm,primecell"; 2195 reg = <0x0 0x08018000 0x0 0x1000>; 2196 2197 clocks = <&rpmcc RPM_SMD_QDSS_CLK>; 2198 clock-names = "apb_pclk"; 2199 2200 status = "disabled"; 2201 }; 2202 2203 cti9: cti@8019000 { 2204 compatible = "arm,coresight-cti", "arm,primecell"; 2205 reg = <0x0 0x08019000 0x0 0x1000>; 2206 2207 clocks = <&rpmcc RPM_SMD_QDSS_CLK>; 2208 clock-names = "apb_pclk"; 2209 2210 status = "disabled"; 2211 }; 2212 2213 cti10: cti@801a000 { 2214 compatible = "arm,coresight-cti", "arm,primecell"; 2215 reg = <0x0 0x0801a000 0x0 0x1000>; 2216 2217 clocks = <&rpmcc RPM_SMD_QDSS_CLK>; 2218 clock-names = "apb_pclk"; 2219 2220 status = "disabled"; 2221 }; 2222 2223 cti11: cti@801b000 { 2224 compatible = "arm,coresight-cti", "arm,primecell"; 2225 reg = <0x0 0x0801b000 0x0 0x1000>; 2226 2227 clocks = <&rpmcc RPM_SMD_QDSS_CLK>; 2228 clock-names = "apb_pclk"; 2229 2230 status = "disabled"; 2231 }; 2232 2233 cti12: cti@801c000 { 2234 compatible = "arm,coresight-cti", "arm,primecell"; 2235 reg = <0x0 0x0801c000 0x0 0x1000>; 2236 2237 clocks = <&rpmcc RPM_SMD_QDSS_CLK>; 2238 clock-names = "apb_pclk"; 2239 2240 status = "disabled"; 2241 }; 2242 2243 cti13: cti@801d000 { 2244 compatible = "arm,coresight-cti", "arm,primecell"; 2245 reg = <0x0 0x0801d000 0x0 0x1000>; 2246 2247 clocks = <&rpmcc RPM_SMD_QDSS_CLK>; 2248 clock-names = "apb_pclk"; 2249 2250 status = "disabled"; 2251 }; 2252 2253 cti14: cti@801e000 { 2254 compatible = "arm,coresight-cti", "arm,primecell"; 2255 reg = <0x0 0x0801e000 0x0 0x1000>; 2256 2257 clocks = <&rpmcc RPM_SMD_QDSS_CLK>; 2258 clock-names = "apb_pclk"; 2259 2260 status = "disabled"; 2261 }; 2262 2263 cti15: cti@801f000 { 2264 compatible = "arm,coresight-cti", "arm,primecell"; 2265 reg = <0x0 0x0801f000 0x0 0x1000>; 2266 2267 clocks = <&rpmcc RPM_SMD_QDSS_CLK>; 2268 clock-names = "apb_pclk"; 2269 2270 status = "disabled"; 2271 }; 2272 2273 replicator@8046000 { 2274 compatible = "arm,coresight-dynamic-replicator", "arm,primecell"; 2275 reg = <0x0 0x08046000 0x0 0x1000>; 2276 2277 clocks = <&rpmcc RPM_SMD_QDSS_CLK>; 2278 clock-names = "apb_pclk"; 2279 2280 status = "disabled"; 2281 2282 out-ports { 2283 port { 2284 replicator_out: endpoint { 2285 remote-endpoint = <&etr_in>; 2286 }; 2287 }; 2288 }; 2289 2290 in-ports { 2291 port { 2292 replicator_in: endpoint { 2293 remote-endpoint = <&etf_out>; 2294 }; 2295 }; 2296 }; 2297 }; 2298 2299 etf@8047000 { 2300 compatible = "arm,coresight-tmc", "arm,primecell"; 2301 reg = <0x0 0x08047000 0x0 0x1000>; 2302 2303 clocks = <&rpmcc RPM_SMD_QDSS_CLK>; 2304 clock-names = "apb_pclk"; 2305 2306 status = "disabled"; 2307 2308 in-ports { 2309 port { 2310 etf_in: endpoint { 2311 remote-endpoint = <&merge_funnel_out>; 2312 }; 2313 }; 2314 }; 2315 2316 out-ports { 2317 port { 2318 etf_out: endpoint { 2319 remote-endpoint = <&replicator_in>; 2320 }; 2321 }; 2322 }; 2323 }; 2324 2325 etr@8048000 { 2326 compatible = "arm,coresight-tmc", "arm,primecell"; 2327 reg = <0x0 0x08048000 0x0 0x1000>; 2328 2329 clocks = <&rpmcc RPM_SMD_QDSS_CLK>; 2330 clock-names = "apb_pclk"; 2331 2332 status = "disabled"; 2333 2334 in-ports { 2335 port { 2336 etr_in: endpoint { 2337 remote-endpoint = <&replicator_out>; 2338 }; 2339 }; 2340 }; 2341 }; 2342 2343 funnel@8041000 { 2344 compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 2345 reg = <0x0 0x08041000 0x0 0x1000>; 2346 2347 clocks = <&rpmcc RPM_SMD_QDSS_CLK>; 2348 clock-names = "apb_pclk"; 2349 2350 status = "disabled"; 2351 2352 out-ports { 2353 port { 2354 funnel_in0_out: endpoint { 2355 remote-endpoint = <&merge_funnel_in0>; 2356 }; 2357 }; 2358 }; 2359 2360 in-ports { 2361 port { 2362 funnel_in0_in: endpoint { 2363 remote-endpoint = <&stm_out>; 2364 }; 2365 }; 2366 }; 2367 }; 2368 2369 funnel@8042000 { 2370 compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 2371 reg = <0x0 0x08042000 0x0 0x1000>; 2372 2373 clocks = <&rpmcc RPM_SMD_QDSS_CLK>; 2374 clock-names = "apb_pclk"; 2375 2376 status = "disabled"; 2377 2378 out-ports { 2379 port { 2380 funnel_in1_out: endpoint { 2381 remote-endpoint = <&merge_funnel_in1>; 2382 }; 2383 }; 2384 }; 2385 2386 in-ports { 2387 port { 2388 funnel_in1_in: endpoint { 2389 remote-endpoint = <&funnel_apss1_out>; 2390 }; 2391 }; 2392 }; 2393 }; 2394 2395 funnel@8045000 { 2396 compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 2397 reg = <0x0 0x08045000 0x0 0x1000>; 2398 2399 clocks = <&rpmcc RPM_SMD_QDSS_CLK>; 2400 clock-names = "apb_pclk"; 2401 2402 status = "disabled"; 2403 2404 out-ports { 2405 port { 2406 merge_funnel_out: endpoint { 2407 remote-endpoint = <&etf_in>; 2408 }; 2409 }; 2410 }; 2411 2412 in-ports { 2413 #address-cells = <1>; 2414 #size-cells = <0>; 2415 2416 port@0 { 2417 reg = <0>; 2418 merge_funnel_in0: endpoint { 2419 remote-endpoint = <&funnel_in0_out>; 2420 }; 2421 }; 2422 2423 port@1 { 2424 reg = <1>; 2425 merge_funnel_in1: endpoint { 2426 remote-endpoint = <&funnel_in1_out>; 2427 }; 2428 }; 2429 }; 2430 }; 2431 2432 etm@9040000 { 2433 compatible = "arm,coresight-etm4x", "arm,primecell"; 2434 reg = <0x0 0x09040000 0x0 0x1000>; 2435 2436 clocks = <&rpmcc RPM_SMD_QDSS_CLK>; 2437 clock-names = "apb_pclk"; 2438 arm,coresight-loses-context-with-cpu; 2439 2440 cpu = <&cpu0>; 2441 2442 status = "disabled"; 2443 2444 out-ports { 2445 port { 2446 etm0_out: endpoint { 2447 remote-endpoint = <&funnel_apss0_in0>; 2448 }; 2449 }; 2450 }; 2451 }; 2452 2453 etm@9140000 { 2454 compatible = "arm,coresight-etm4x", "arm,primecell"; 2455 reg = <0x0 0x09140000 0x0 0x1000>; 2456 2457 clocks = <&rpmcc RPM_SMD_QDSS_CLK>; 2458 clock-names = "apb_pclk"; 2459 arm,coresight-loses-context-with-cpu; 2460 2461 cpu = <&cpu1>; 2462 2463 status = "disabled"; 2464 2465 out-ports { 2466 port { 2467 etm1_out: endpoint { 2468 remote-endpoint = <&funnel_apss0_in1>; 2469 }; 2470 }; 2471 }; 2472 }; 2473 2474 etm@9240000 { 2475 compatible = "arm,coresight-etm4x", "arm,primecell"; 2476 reg = <0x0 0x09240000 0x0 0x1000>; 2477 2478 clocks = <&rpmcc RPM_SMD_QDSS_CLK>; 2479 clock-names = "apb_pclk"; 2480 arm,coresight-loses-context-with-cpu; 2481 2482 cpu = <&cpu2>; 2483 2484 status = "disabled"; 2485 2486 out-ports { 2487 port { 2488 etm2_out: endpoint { 2489 remote-endpoint = <&funnel_apss0_in2>; 2490 }; 2491 }; 2492 }; 2493 }; 2494 2495 etm@9340000 { 2496 compatible = "arm,coresight-etm4x", "arm,primecell"; 2497 reg = <0x0 0x09340000 0x0 0x1000>; 2498 2499 clocks = <&rpmcc RPM_SMD_QDSS_CLK>; 2500 clock-names = "apb_pclk"; 2501 arm,coresight-loses-context-with-cpu; 2502 2503 cpu = <&cpu3>; 2504 2505 status = "disabled"; 2506 2507 out-ports { 2508 port { 2509 etm3_out: endpoint { 2510 remote-endpoint = <&funnel_apss0_in3>; 2511 }; 2512 }; 2513 }; 2514 }; 2515 2516 etm@9440000 { 2517 compatible = "arm,coresight-etm4x", "arm,primecell"; 2518 reg = <0x0 0x09440000 0x0 0x1000>; 2519 2520 clocks = <&rpmcc RPM_SMD_QDSS_CLK>; 2521 clock-names = "apb_pclk"; 2522 arm,coresight-loses-context-with-cpu; 2523 2524 cpu = <&cpu4>; 2525 2526 status = "disabled"; 2527 2528 out-ports { 2529 port { 2530 etm4_out: endpoint { 2531 remote-endpoint = <&funnel_apss0_in4>; 2532 }; 2533 }; 2534 }; 2535 }; 2536 2537 etm@9540000 { 2538 compatible = "arm,coresight-etm4x", "arm,primecell"; 2539 reg = <0x0 0x09540000 0x0 0x1000>; 2540 2541 clocks = <&rpmcc RPM_SMD_QDSS_CLK>; 2542 clock-names = "apb_pclk"; 2543 arm,coresight-loses-context-with-cpu; 2544 2545 cpu = <&cpu5>; 2546 2547 status = "disabled"; 2548 2549 out-ports { 2550 port { 2551 etm5_out: endpoint { 2552 remote-endpoint = <&funnel_apss0_in5>; 2553 }; 2554 }; 2555 }; 2556 }; 2557 2558 etm@9640000 { 2559 compatible = "arm,coresight-etm4x", "arm,primecell"; 2560 reg = <0x0 0x09640000 0x0 0x1000>; 2561 2562 clocks = <&rpmcc RPM_SMD_QDSS_CLK>; 2563 clock-names = "apb_pclk"; 2564 arm,coresight-loses-context-with-cpu; 2565 2566 cpu = <&cpu6>; 2567 2568 status = "disabled"; 2569 2570 out-ports { 2571 port { 2572 etm6_out: endpoint { 2573 remote-endpoint = <&funnel_apss0_in6>; 2574 }; 2575 }; 2576 }; 2577 }; 2578 2579 etm@9740000 { 2580 compatible = "arm,coresight-etm4x", "arm,primecell"; 2581 reg = <0x0 0x09740000 0x0 0x1000>; 2582 2583 clocks = <&rpmcc RPM_SMD_QDSS_CLK>; 2584 clock-names = "apb_pclk"; 2585 arm,coresight-loses-context-with-cpu; 2586 2587 cpu = <&cpu7>; 2588 2589 status = "disabled"; 2590 2591 out-ports { 2592 port { 2593 etm7_out: endpoint { 2594 remote-endpoint = <&funnel_apss0_in7>; 2595 }; 2596 }; 2597 }; 2598 }; 2599 2600 funnel@9800000 { 2601 compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 2602 reg = <0x0 0x09800000 0x0 0x1000>; 2603 2604 clocks = <&rpmcc RPM_SMD_QDSS_CLK>; 2605 clock-names = "apb_pclk"; 2606 2607 status = "disabled"; 2608 2609 out-ports { 2610 port { 2611 funnel_apss0_out: endpoint { 2612 remote-endpoint = <&funnel_apss1_in>; 2613 }; 2614 }; 2615 }; 2616 2617 in-ports { 2618 #address-cells = <1>; 2619 #size-cells = <0>; 2620 2621 port@0 { 2622 reg = <0>; 2623 funnel_apss0_in0: endpoint { 2624 remote-endpoint = <&etm0_out>; 2625 }; 2626 }; 2627 2628 port@1 { 2629 reg = <1>; 2630 funnel_apss0_in1: endpoint { 2631 remote-endpoint = <&etm1_out>; 2632 }; 2633 }; 2634 2635 port@2 { 2636 reg = <2>; 2637 funnel_apss0_in2: endpoint { 2638 remote-endpoint = <&etm2_out>; 2639 }; 2640 }; 2641 2642 port@3 { 2643 reg = <3>; 2644 funnel_apss0_in3: endpoint { 2645 remote-endpoint = <&etm3_out>; 2646 }; 2647 }; 2648 2649 port@4 { 2650 reg = <4>; 2651 funnel_apss0_in4: endpoint { 2652 remote-endpoint = <&etm4_out>; 2653 }; 2654 }; 2655 2656 port@5 { 2657 reg = <5>; 2658 funnel_apss0_in5: endpoint { 2659 remote-endpoint = <&etm5_out>; 2660 }; 2661 }; 2662 2663 port@6 { 2664 reg = <6>; 2665 funnel_apss0_in6: endpoint { 2666 remote-endpoint = <&etm6_out>; 2667 }; 2668 }; 2669 2670 port@7 { 2671 reg = <7>; 2672 funnel_apss0_in7: endpoint { 2673 remote-endpoint = <&etm7_out>; 2674 }; 2675 }; 2676 }; 2677 }; 2678 2679 funnel@9810000 { 2680 compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 2681 reg = <0x0 0x09810000 0x0 0x1000>; 2682 2683 clocks = <&rpmcc RPM_SMD_QDSS_CLK>; 2684 clock-names = "apb_pclk"; 2685 2686 status = "disabled"; 2687 2688 out-ports { 2689 port { 2690 funnel_apss1_out: endpoint { 2691 remote-endpoint = <&funnel_in1_in>; 2692 }; 2693 }; 2694 }; 2695 2696 in-ports { 2697 port { 2698 funnel_apss1_in: endpoint { 2699 remote-endpoint = <&funnel_apss0_out>; 2700 }; 2701 }; 2702 }; 2703 }; 2704 2705 remoteproc_adsp: remoteproc@a400000 { 2706 compatible = "qcom,sm6115-adsp-pas"; 2707 reg = <0x0 0x0a400000 0x0 0x4040>; 2708 2709 interrupts-extended = <&intc GIC_SPI 282 IRQ_TYPE_EDGE_RISING>, 2710 <&adsp_smp2p_in 0 IRQ_TYPE_EDGE_RISING>, 2711 <&adsp_smp2p_in 1 IRQ_TYPE_EDGE_RISING>, 2712 <&adsp_smp2p_in 2 IRQ_TYPE_EDGE_RISING>, 2713 <&adsp_smp2p_in 3 IRQ_TYPE_EDGE_RISING>; 2714 interrupt-names = "wdog", "fatal", "ready", 2715 "handover", "stop-ack"; 2716 2717 clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>; 2718 clock-names = "xo"; 2719 2720 power-domains = <&rpmpd SM6115_VDD_LPI_CX>, 2721 <&rpmpd SM6115_VDD_LPI_MX>; 2722 2723 memory-region = <&pil_adsp_mem>; 2724 2725 qcom,smem-states = <&adsp_smp2p_out 0>; 2726 qcom,smem-state-names = "stop"; 2727 2728 status = "disabled"; 2729 2730 glink-edge { 2731 interrupts = <GIC_SPI 277 IRQ_TYPE_EDGE_RISING>; 2732 label = "lpass"; 2733 qcom,remote-pid = <2>; 2734 mboxes = <&apcs_glb 8>; 2735 2736 apr { 2737 compatible = "qcom,apr-v2"; 2738 qcom,glink-channels = "apr_audio_svc"; 2739 qcom,domain = <APR_DOMAIN_ADSP>; 2740 #address-cells = <1>; 2741 #size-cells = <0>; 2742 2743 service@3 { 2744 reg = <APR_SVC_ADSP_CORE>; 2745 compatible = "qcom,q6core"; 2746 qcom,protection-domain = "avs/audio", 2747 "msm/adsp/audio_pd"; 2748 }; 2749 2750 q6afe: service@4 { 2751 compatible = "qcom,q6afe"; 2752 reg = <APR_SVC_AFE>; 2753 qcom,protection-domain = "avs/audio", 2754 "msm/adsp/audio_pd"; 2755 q6afedai: dais { 2756 compatible = "qcom,q6afe-dais"; 2757 #address-cells = <1>; 2758 #size-cells = <0>; 2759 #sound-dai-cells = <1>; 2760 }; 2761 2762 q6afecc: clock-controller { 2763 compatible = "qcom,q6afe-clocks"; 2764 #clock-cells = <2>; 2765 }; 2766 }; 2767 2768 q6asm: service@7 { 2769 compatible = "qcom,q6asm"; 2770 reg = <APR_SVC_ASM>; 2771 qcom,protection-domain = "avs/audio", 2772 "msm/adsp/audio_pd"; 2773 q6asmdai: dais { 2774 compatible = "qcom,q6asm-dais"; 2775 #address-cells = <1>; 2776 #size-cells = <0>; 2777 #sound-dai-cells = <1>; 2778 iommus = <&apps_smmu 0x1c1 0x0>; 2779 2780 dai@0 { 2781 reg = <MSM_FRONTEND_DAI_MULTIMEDIA1>; 2782 }; 2783 2784 dai@1 { 2785 reg = <MSM_FRONTEND_DAI_MULTIMEDIA2>; 2786 }; 2787 2788 dai@2 { 2789 reg = <MSM_FRONTEND_DAI_MULTIMEDIA3>; 2790 }; 2791 }; 2792 }; 2793 2794 q6adm: service@8 { 2795 compatible = "qcom,q6adm"; 2796 reg = <APR_SVC_ADM>; 2797 qcom,protection-domain = "avs/audio", 2798 "msm/adsp/audio_pd"; 2799 q6routing: routing { 2800 compatible = "qcom,q6adm-routing"; 2801 #sound-dai-cells = <0>; 2802 }; 2803 }; 2804 }; 2805 2806 fastrpc { 2807 compatible = "qcom,fastrpc"; 2808 qcom,glink-channels = "fastrpcglink-apps-dsp"; 2809 label = "adsp"; 2810 qcom,non-secure-domain; 2811 #address-cells = <1>; 2812 #size-cells = <0>; 2813 2814 compute-cb@3 { 2815 compatible = "qcom,fastrpc-compute-cb"; 2816 reg = <3>; 2817 iommus = <&apps_smmu 0x01c3 0x0>; 2818 }; 2819 2820 compute-cb@4 { 2821 compatible = "qcom,fastrpc-compute-cb"; 2822 reg = <4>; 2823 iommus = <&apps_smmu 0x01c4 0x0>; 2824 }; 2825 2826 compute-cb@5 { 2827 compatible = "qcom,fastrpc-compute-cb"; 2828 reg = <5>; 2829 iommus = <&apps_smmu 0x01c5 0x0>; 2830 }; 2831 2832 compute-cb@6 { 2833 compatible = "qcom,fastrpc-compute-cb"; 2834 reg = <6>; 2835 iommus = <&apps_smmu 0x01c6 0x0>; 2836 }; 2837 2838 compute-cb@7 { 2839 compatible = "qcom,fastrpc-compute-cb"; 2840 reg = <7>; 2841 iommus = <&apps_smmu 0x01c7 0x0>; 2842 }; 2843 }; 2844 }; 2845 }; 2846 2847 remoteproc_cdsp: remoteproc@b300000 { 2848 compatible = "qcom,sm6115-cdsp-pas"; 2849 reg = <0x0 0x0b300000 0x0 0x4040>; 2850 2851 interrupts-extended = <&intc GIC_SPI 265 IRQ_TYPE_EDGE_RISING>, 2852 <&cdsp_smp2p_in 0 IRQ_TYPE_EDGE_RISING>, 2853 <&cdsp_smp2p_in 1 IRQ_TYPE_EDGE_RISING>, 2854 <&cdsp_smp2p_in 2 IRQ_TYPE_EDGE_RISING>, 2855 <&cdsp_smp2p_in 3 IRQ_TYPE_EDGE_RISING>; 2856 interrupt-names = "wdog", "fatal", "ready", 2857 "handover", "stop-ack"; 2858 2859 clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>; 2860 clock-names = "xo"; 2861 2862 power-domains = <&rpmpd SM6115_VDDCX>; 2863 2864 memory-region = <&pil_cdsp_mem>; 2865 2866 qcom,smem-states = <&cdsp_smp2p_out 0>; 2867 qcom,smem-state-names = "stop"; 2868 2869 status = "disabled"; 2870 2871 glink-edge { 2872 interrupts = <GIC_SPI 261 IRQ_TYPE_EDGE_RISING>; 2873 label = "cdsp"; 2874 qcom,remote-pid = <5>; 2875 mboxes = <&apcs_glb 28>; 2876 2877 fastrpc { 2878 compatible = "qcom,fastrpc"; 2879 qcom,glink-channels = "fastrpcglink-apps-dsp"; 2880 label = "cdsp"; 2881 qcom,non-secure-domain; 2882 #address-cells = <1>; 2883 #size-cells = <0>; 2884 2885 compute-cb@1 { 2886 compatible = "qcom,fastrpc-compute-cb"; 2887 reg = <1>; 2888 iommus = <&apps_smmu 0x0c01 0x0>; 2889 }; 2890 2891 compute-cb@2 { 2892 compatible = "qcom,fastrpc-compute-cb"; 2893 reg = <2>; 2894 iommus = <&apps_smmu 0x0c02 0x0>; 2895 }; 2896 2897 compute-cb@3 { 2898 compatible = "qcom,fastrpc-compute-cb"; 2899 reg = <3>; 2900 iommus = <&apps_smmu 0x0c03 0x0>; 2901 }; 2902 2903 compute-cb@4 { 2904 compatible = "qcom,fastrpc-compute-cb"; 2905 reg = <4>; 2906 iommus = <&apps_smmu 0x0c04 0x0>; 2907 }; 2908 2909 compute-cb@5 { 2910 compatible = "qcom,fastrpc-compute-cb"; 2911 reg = <5>; 2912 iommus = <&apps_smmu 0x0c05 0x0>; 2913 }; 2914 2915 compute-cb@6 { 2916 compatible = "qcom,fastrpc-compute-cb"; 2917 reg = <6>; 2918 iommus = <&apps_smmu 0x0c06 0x0>; 2919 }; 2920 2921 /* note: secure cb9 in downstream */ 2922 }; 2923 }; 2924 }; 2925 2926 apps_smmu: iommu@c600000 { 2927 compatible = "qcom,sm6115-smmu-500", "qcom,smmu-500", "arm,mmu-500"; 2928 reg = <0x0 0x0c600000 0x0 0x80000>; 2929 #iommu-cells = <2>; 2930 #global-interrupts = <1>; 2931 2932 interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>, 2933 <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>, 2934 <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>, 2935 <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>, 2936 <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>, 2937 <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>, 2938 <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>, 2939 <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>, 2940 <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>, 2941 <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>, 2942 <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>, 2943 <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>, 2944 <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>, 2945 <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>, 2946 <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>, 2947 <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>, 2948 <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>, 2949 <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>, 2950 <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>, 2951 <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>, 2952 <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>, 2953 <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>, 2954 <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>, 2955 <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>, 2956 <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>, 2957 <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>, 2958 <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>, 2959 <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>, 2960 <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>, 2961 <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>, 2962 <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>, 2963 <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>, 2964 <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>, 2965 <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>, 2966 <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>, 2967 <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>, 2968 <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>, 2969 <GIC_SPI 124 IRQ_TYPE_LEVEL_HIGH>, 2970 <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>, 2971 <GIC_SPI 126 IRQ_TYPE_LEVEL_HIGH>, 2972 <GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>, 2973 <GIC_SPI 128 IRQ_TYPE_LEVEL_HIGH>, 2974 <GIC_SPI 129 IRQ_TYPE_LEVEL_HIGH>, 2975 <GIC_SPI 130 IRQ_TYPE_LEVEL_HIGH>, 2976 <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>, 2977 <GIC_SPI 132 IRQ_TYPE_LEVEL_HIGH>, 2978 <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>, 2979 <GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>, 2980 <GIC_SPI 135 IRQ_TYPE_LEVEL_HIGH>, 2981 <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>, 2982 <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>, 2983 <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>, 2984 <GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>, 2985 <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>, 2986 <GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH>, 2987 <GIC_SPI 142 IRQ_TYPE_LEVEL_HIGH>, 2988 <GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH>, 2989 <GIC_SPI 144 IRQ_TYPE_LEVEL_HIGH>, 2990 <GIC_SPI 145 IRQ_TYPE_LEVEL_HIGH>, 2991 <GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>, 2992 <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>, 2993 <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>, 2994 <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>, 2995 <GIC_SPI 150 IRQ_TYPE_LEVEL_HIGH>, 2996 <GIC_SPI 151 IRQ_TYPE_LEVEL_HIGH>; 2997 }; 2998 2999 wifi: wifi@c800000 { 3000 compatible = "qcom,wcn3990-wifi"; 3001 reg = <0x0 0x0c800000 0x0 0x800000>; 3002 reg-names = "membase"; 3003 memory-region = <&wlan_msa_mem>; 3004 interrupts = <GIC_SPI 358 IRQ_TYPE_LEVEL_HIGH>, 3005 <GIC_SPI 359 IRQ_TYPE_LEVEL_HIGH>, 3006 <GIC_SPI 360 IRQ_TYPE_LEVEL_HIGH>, 3007 <GIC_SPI 361 IRQ_TYPE_LEVEL_HIGH>, 3008 <GIC_SPI 362 IRQ_TYPE_LEVEL_HIGH>, 3009 <GIC_SPI 363 IRQ_TYPE_LEVEL_HIGH>, 3010 <GIC_SPI 364 IRQ_TYPE_LEVEL_HIGH>, 3011 <GIC_SPI 365 IRQ_TYPE_LEVEL_HIGH>, 3012 <GIC_SPI 366 IRQ_TYPE_LEVEL_HIGH>, 3013 <GIC_SPI 367 IRQ_TYPE_LEVEL_HIGH>, 3014 <GIC_SPI 368 IRQ_TYPE_LEVEL_HIGH>, 3015 <GIC_SPI 369 IRQ_TYPE_LEVEL_HIGH>; 3016 iommus = <&apps_smmu 0x1a0 0x1>; 3017 qcom,msa-fixed-perm; 3018 status = "disabled"; 3019 }; 3020 3021 watchdog@f017000 { 3022 compatible = "qcom,apss-wdt-sm6115", "qcom,kpss-wdt"; 3023 reg = <0x0 0x0f017000 0x0 0x1000>; 3024 clocks = <&sleep_clk>; 3025 interrupts = <GIC_SPI 3 IRQ_TYPE_EDGE_RISING>; 3026 }; 3027 3028 apcs_glb: mailbox@f111000 { 3029 compatible = "qcom,sm6115-apcs-hmss-global", 3030 "qcom,msm8994-apcs-kpss-global"; 3031 reg = <0x0 0x0f111000 0x0 0x1000>; 3032 3033 #mbox-cells = <1>; 3034 }; 3035 3036 timer@f120000 { 3037 compatible = "arm,armv7-timer-mem"; 3038 reg = <0x0 0x0f120000 0x0 0x1000>; 3039 #address-cells = <2>; 3040 #size-cells = <1>; 3041 ranges = <0x0 0x0 0x0 0x0 0x20000000>; 3042 clock-frequency = <19200000>; 3043 3044 frame@f121000 { 3045 reg = <0x0 0x0f121000 0x1000>, <0x0 0x0f122000 0x1000>; 3046 frame-number = <0>; 3047 interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>, 3048 <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; 3049 }; 3050 3051 frame@f123000 { 3052 reg = <0x0 0x0f123000 0x1000>; 3053 frame-number = <1>; 3054 interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>; 3055 status = "disabled"; 3056 }; 3057 3058 frame@f124000 { 3059 reg = <0x0 0x0f124000 0x1000>; 3060 frame-number = <2>; 3061 interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>; 3062 status = "disabled"; 3063 }; 3064 3065 frame@f125000 { 3066 reg = <0x0 0x0f125000 0x1000>; 3067 frame-number = <3>; 3068 interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>; 3069 status = "disabled"; 3070 }; 3071 3072 frame@f126000 { 3073 reg = <0x0 0x0f126000 0x1000>; 3074 frame-number = <4>; 3075 interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>; 3076 status = "disabled"; 3077 }; 3078 3079 frame@f127000 { 3080 reg = <0x0 0x0f127000 0x1000>; 3081 frame-number = <5>; 3082 interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>; 3083 status = "disabled"; 3084 }; 3085 3086 frame@f128000 { 3087 reg = <0x0 0x0f128000 0x1000>; 3088 frame-number = <6>; 3089 interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>; 3090 status = "disabled"; 3091 }; 3092 }; 3093 3094 intc: interrupt-controller@f200000 { 3095 compatible = "arm,gic-v3"; 3096 reg = <0x0 0x0f200000 0x0 0x10000>, 3097 <0x0 0x0f300000 0x0 0x100000>; 3098 #interrupt-cells = <3>; 3099 interrupt-controller; 3100 interrupt-parent = <&intc>; 3101 #redistributor-regions = <1>; 3102 redistributor-stride = <0x0 0x20000>; 3103 interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>; 3104 }; 3105 3106 cpufreq_hw: cpufreq@f521000 { 3107 compatible = "qcom,sm6115-cpufreq-hw", "qcom,cpufreq-hw"; 3108 reg = <0x0 0x0f521000 0x0 0x1000>, 3109 <0x0 0x0f523000 0x0 0x1000>; 3110 3111 reg-names = "freq-domain0", "freq-domain1"; 3112 clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>, <&gcc GPLL0>; 3113 clock-names = "xo", "alternate"; 3114 3115 #freq-domain-cells = <1>; 3116 #clock-cells = <1>; 3117 }; 3118 }; 3119 3120 thermal-zones { 3121 mapss-thermal { 3122 thermal-sensors = <&tsens0 0>; 3123 3124 trips { 3125 trip-point0 { 3126 temperature = <115000>; 3127 hysteresis = <5000>; 3128 type = "passive"; 3129 }; 3130 3131 trip-point1 { 3132 temperature = <125000>; 3133 hysteresis = <1000>; 3134 type = "passive"; 3135 }; 3136 }; 3137 }; 3138 3139 cdsp-hvx-thermal { 3140 thermal-sensors = <&tsens0 1>; 3141 3142 trips { 3143 trip-point0 { 3144 temperature = <115000>; 3145 hysteresis = <5000>; 3146 type = "passive"; 3147 }; 3148 3149 trip-point1 { 3150 temperature = <125000>; 3151 hysteresis = <1000>; 3152 type = "passive"; 3153 }; 3154 }; 3155 }; 3156 3157 wlan-thermal { 3158 thermal-sensors = <&tsens0 2>; 3159 3160 trips { 3161 trip-point0 { 3162 temperature = <115000>; 3163 hysteresis = <5000>; 3164 type = "passive"; 3165 }; 3166 3167 trip-point1 { 3168 temperature = <125000>; 3169 hysteresis = <1000>; 3170 type = "passive"; 3171 }; 3172 }; 3173 }; 3174 3175 camera-thermal { 3176 thermal-sensors = <&tsens0 3>; 3177 3178 trips { 3179 trip-point0 { 3180 temperature = <115000>; 3181 hysteresis = <5000>; 3182 type = "passive"; 3183 }; 3184 3185 trip-point1 { 3186 temperature = <125000>; 3187 hysteresis = <1000>; 3188 type = "passive"; 3189 }; 3190 }; 3191 }; 3192 3193 video-thermal { 3194 thermal-sensors = <&tsens0 4>; 3195 3196 trips { 3197 trip-point0 { 3198 temperature = <115000>; 3199 hysteresis = <5000>; 3200 type = "passive"; 3201 }; 3202 3203 trip-point1 { 3204 temperature = <125000>; 3205 hysteresis = <1000>; 3206 type = "passive"; 3207 }; 3208 }; 3209 }; 3210 3211 modem1-thermal { 3212 thermal-sensors = <&tsens0 5>; 3213 3214 trips { 3215 trip-point0 { 3216 temperature = <115000>; 3217 hysteresis = <5000>; 3218 type = "passive"; 3219 }; 3220 3221 trip-point1 { 3222 temperature = <125000>; 3223 hysteresis = <1000>; 3224 type = "passive"; 3225 }; 3226 }; 3227 }; 3228 3229 cpu4-thermal { 3230 thermal-sensors = <&tsens0 6>; 3231 3232 trips { 3233 cpu4_alert0: trip-point0 { 3234 temperature = <90000>; 3235 hysteresis = <2000>; 3236 type = "passive"; 3237 }; 3238 3239 cpu4_alert1: trip-point1 { 3240 temperature = <95000>; 3241 hysteresis = <2000>; 3242 type = "passive"; 3243 }; 3244 3245 cpu4_crit: cpu-crit { 3246 temperature = <110000>; 3247 hysteresis = <1000>; 3248 type = "critical"; 3249 }; 3250 }; 3251 }; 3252 3253 cpu5-thermal { 3254 thermal-sensors = <&tsens0 7>; 3255 3256 trips { 3257 cpu5_alert0: trip-point0 { 3258 temperature = <90000>; 3259 hysteresis = <2000>; 3260 type = "passive"; 3261 }; 3262 3263 cpu5_alert1: trip-point1 { 3264 temperature = <95000>; 3265 hysteresis = <2000>; 3266 type = "passive"; 3267 }; 3268 3269 cpu5_crit: cpu-crit { 3270 temperature = <110000>; 3271 hysteresis = <1000>; 3272 type = "critical"; 3273 }; 3274 }; 3275 }; 3276 3277 cpu6-thermal { 3278 thermal-sensors = <&tsens0 8>; 3279 3280 trips { 3281 cpu6_alert0: trip-point0 { 3282 temperature = <90000>; 3283 hysteresis = <2000>; 3284 type = "passive"; 3285 }; 3286 3287 cpu6_alert1: trip-point1 { 3288 temperature = <95000>; 3289 hysteresis = <2000>; 3290 type = "passive"; 3291 }; 3292 3293 cpu6_crit: cpu-crit { 3294 temperature = <110000>; 3295 hysteresis = <1000>; 3296 type = "critical"; 3297 }; 3298 }; 3299 }; 3300 3301 cpu7-thermal { 3302 thermal-sensors = <&tsens0 9>; 3303 3304 trips { 3305 cpu7_alert0: trip-point0 { 3306 temperature = <90000>; 3307 hysteresis = <2000>; 3308 type = "passive"; 3309 }; 3310 3311 cpu7_alert1: trip-point1 { 3312 temperature = <95000>; 3313 hysteresis = <2000>; 3314 type = "passive"; 3315 }; 3316 3317 cpu7_crit: cpu-crit { 3318 temperature = <110000>; 3319 hysteresis = <1000>; 3320 type = "critical"; 3321 }; 3322 }; 3323 }; 3324 3325 cpu45-thermal { 3326 thermal-sensors = <&tsens0 10>; 3327 3328 trips { 3329 cpu45_alert0: trip-point0 { 3330 temperature = <90000>; 3331 hysteresis = <2000>; 3332 type = "passive"; 3333 }; 3334 3335 cpu45_alert1: trip-point1 { 3336 temperature = <95000>; 3337 hysteresis = <2000>; 3338 type = "passive"; 3339 }; 3340 3341 cpu45_crit: cpu-crit { 3342 temperature = <110000>; 3343 hysteresis = <1000>; 3344 type = "critical"; 3345 }; 3346 }; 3347 }; 3348 3349 cpu67-thermal { 3350 thermal-sensors = <&tsens0 11>; 3351 3352 trips { 3353 cpu67_alert0: trip-point0 { 3354 temperature = <90000>; 3355 hysteresis = <2000>; 3356 type = "passive"; 3357 }; 3358 3359 cpu67_alert1: trip-point1 { 3360 temperature = <95000>; 3361 hysteresis = <2000>; 3362 type = "passive"; 3363 }; 3364 3365 cpu67_crit: cpu-crit { 3366 temperature = <110000>; 3367 hysteresis = <1000>; 3368 type = "critical"; 3369 }; 3370 }; 3371 }; 3372 3373 cpu0123-thermal { 3374 thermal-sensors = <&tsens0 12>; 3375 3376 trips { 3377 cpu0123_alert0: trip-point0 { 3378 temperature = <90000>; 3379 hysteresis = <2000>; 3380 type = "passive"; 3381 }; 3382 3383 cpu0123_alert1: trip-point1 { 3384 temperature = <95000>; 3385 hysteresis = <2000>; 3386 type = "passive"; 3387 }; 3388 3389 cpu0123_crit: cpu-crit { 3390 temperature = <110000>; 3391 hysteresis = <1000>; 3392 type = "critical"; 3393 }; 3394 }; 3395 }; 3396 3397 modem0-thermal { 3398 thermal-sensors = <&tsens0 13>; 3399 3400 trips { 3401 trip-point0 { 3402 temperature = <115000>; 3403 hysteresis = <5000>; 3404 type = "passive"; 3405 }; 3406 3407 trip-point1 { 3408 temperature = <125000>; 3409 hysteresis = <1000>; 3410 type = "passive"; 3411 }; 3412 }; 3413 }; 3414 3415 display-thermal { 3416 thermal-sensors = <&tsens0 14>; 3417 3418 trips { 3419 trip-point0 { 3420 temperature = <115000>; 3421 hysteresis = <5000>; 3422 type = "passive"; 3423 }; 3424 3425 trip-point1 { 3426 temperature = <125000>; 3427 hysteresis = <1000>; 3428 type = "passive"; 3429 }; 3430 }; 3431 }; 3432 3433 gpu-thermal { 3434 polling-delay-passive = <250>; 3435 3436 thermal-sensors = <&tsens0 15>; 3437 3438 cooling-maps { 3439 map0 { 3440 trip = <&gpu_alert0>; 3441 cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 3442 }; 3443 }; 3444 3445 trips { 3446 gpu_alert0: trip-point0 { 3447 temperature = <85000>; 3448 hysteresis = <1000>; 3449 type = "passive"; 3450 }; 3451 3452 trip-point1 { 3453 temperature = <110000>; 3454 hysteresis = <1000>; 3455 type = "critical"; 3456 }; 3457 }; 3458 }; 3459 }; 3460 3461 timer { 3462 compatible = "arm,armv8-timer"; 3463 interrupts = <GIC_PPI 1 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 3464 <GIC_PPI 2 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 3465 <GIC_PPI 3 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 3466 <GIC_PPI 0 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>; 3467 }; 3468};
~/
Read-only file preview.