1// SPDX-License-Identifier: BSD-3-Clause 2/* 3 * Copyright (c) 2020, Linaro Limited 4 */ 5 6#include <dt-bindings/interconnect/qcom,sm8350.h> 7#include <dt-bindings/interrupt-controller/arm-gic.h> 8#include <dt-bindings/clock/qcom,dispcc-sm8350.h> 9#include <dt-bindings/clock/qcom,gcc-sm8350.h> 10#include <dt-bindings/clock/qcom,gpucc-sm8350.h> 11#include <dt-bindings/clock/qcom,rpmh.h> 12#include <dt-bindings/dma/qcom-gpi.h> 13#include <dt-bindings/gpio/gpio.h> 14#include <dt-bindings/interconnect/qcom,sm8350.h> 15#include <dt-bindings/mailbox/qcom-ipcc.h> 16#include <dt-bindings/phy/phy-qcom-qmp.h> 17#include <dt-bindings/power/qcom-rpmpd.h> 18#include <dt-bindings/power/qcom,rpmhpd.h> 19#include <dt-bindings/soc/qcom,apr.h> 20#include <dt-bindings/soc/qcom,rpmh-rsc.h> 21#include <dt-bindings/sound/qcom,q6afe.h> 22#include <dt-bindings/thermal/thermal.h> 23#include <dt-bindings/interconnect/qcom,sm8350.h> 24 25/ { 26 interrupt-parent = <&intc>; 27 28 #address-cells = <2>; 29 #size-cells = <2>; 30 31 chosen { }; 32 33 clocks { 34 xo_board: xo-board { 35 compatible = "fixed-clock"; 36 #clock-cells = <0>; 37 clock-frequency = <38400000>; 38 clock-output-names = "xo_board"; 39 }; 40 41 sleep_clk: sleep-clk { 42 compatible = "fixed-clock"; 43 clock-frequency = <32764>; 44 #clock-cells = <0>; 45 }; 46 }; 47 48 cpus { 49 #address-cells = <2>; 50 #size-cells = <0>; 51 52 CPU0: cpu@0 { 53 device_type = "cpu"; 54 compatible = "arm,cortex-a55"; 55 reg = <0x0 0x0>; 56 clocks = <&cpufreq_hw 0>; 57 enable-method = "psci"; 58 next-level-cache = <&L2_0>; 59 qcom,freq-domain = <&cpufreq_hw 0>; 60 power-domains = <&CPU_PD0>; 61 power-domain-names = "psci"; 62 #cooling-cells = <2>; 63 L2_0: l2-cache { 64 compatible = "cache"; 65 cache-level = <2>; 66 cache-unified; 67 next-level-cache = <&L3_0>; 68 L3_0: l3-cache { 69 compatible = "cache"; 70 cache-level = <3>; 71 cache-unified; 72 }; 73 }; 74 }; 75 76 CPU1: cpu@100 { 77 device_type = "cpu"; 78 compatible = "arm,cortex-a55"; 79 reg = <0x0 0x100>; 80 clocks = <&cpufreq_hw 0>; 81 enable-method = "psci"; 82 next-level-cache = <&L2_100>; 83 qcom,freq-domain = <&cpufreq_hw 0>; 84 power-domains = <&CPU_PD1>; 85 power-domain-names = "psci"; 86 #cooling-cells = <2>; 87 L2_100: l2-cache { 88 compatible = "cache"; 89 cache-level = <2>; 90 cache-unified; 91 next-level-cache = <&L3_0>; 92 }; 93 }; 94 95 CPU2: cpu@200 { 96 device_type = "cpu"; 97 compatible = "arm,cortex-a55"; 98 reg = <0x0 0x200>; 99 clocks = <&cpufreq_hw 0>; 100 enable-method = "psci"; 101 next-level-cache = <&L2_200>; 102 qcom,freq-domain = <&cpufreq_hw 0>; 103 power-domains = <&CPU_PD2>; 104 power-domain-names = "psci"; 105 #cooling-cells = <2>; 106 L2_200: l2-cache { 107 compatible = "cache"; 108 cache-level = <2>; 109 cache-unified; 110 next-level-cache = <&L3_0>; 111 }; 112 }; 113 114 CPU3: cpu@300 { 115 device_type = "cpu"; 116 compatible = "arm,cortex-a55"; 117 reg = <0x0 0x300>; 118 clocks = <&cpufreq_hw 0>; 119 enable-method = "psci"; 120 next-level-cache = <&L2_300>; 121 qcom,freq-domain = <&cpufreq_hw 0>; 122 power-domains = <&CPU_PD3>; 123 power-domain-names = "psci"; 124 #cooling-cells = <2>; 125 L2_300: l2-cache { 126 compatible = "cache"; 127 cache-level = <2>; 128 cache-unified; 129 next-level-cache = <&L3_0>; 130 }; 131 }; 132 133 CPU4: cpu@400 { 134 device_type = "cpu"; 135 compatible = "arm,cortex-a78"; 136 reg = <0x0 0x400>; 137 clocks = <&cpufreq_hw 1>; 138 enable-method = "psci"; 139 next-level-cache = <&L2_400>; 140 qcom,freq-domain = <&cpufreq_hw 1>; 141 power-domains = <&CPU_PD4>; 142 power-domain-names = "psci"; 143 #cooling-cells = <2>; 144 L2_400: l2-cache { 145 compatible = "cache"; 146 cache-level = <2>; 147 cache-unified; 148 next-level-cache = <&L3_0>; 149 }; 150 }; 151 152 CPU5: cpu@500 { 153 device_type = "cpu"; 154 compatible = "arm,cortex-a78"; 155 reg = <0x0 0x500>; 156 clocks = <&cpufreq_hw 1>; 157 enable-method = "psci"; 158 next-level-cache = <&L2_500>; 159 qcom,freq-domain = <&cpufreq_hw 1>; 160 power-domains = <&CPU_PD5>; 161 power-domain-names = "psci"; 162 #cooling-cells = <2>; 163 L2_500: l2-cache { 164 compatible = "cache"; 165 cache-level = <2>; 166 cache-unified; 167 next-level-cache = <&L3_0>; 168 }; 169 }; 170 171 CPU6: cpu@600 { 172 device_type = "cpu"; 173 compatible = "arm,cortex-a78"; 174 reg = <0x0 0x600>; 175 clocks = <&cpufreq_hw 1>; 176 enable-method = "psci"; 177 next-level-cache = <&L2_600>; 178 qcom,freq-domain = <&cpufreq_hw 1>; 179 power-domains = <&CPU_PD6>; 180 power-domain-names = "psci"; 181 #cooling-cells = <2>; 182 L2_600: l2-cache { 183 compatible = "cache"; 184 cache-level = <2>; 185 cache-unified; 186 next-level-cache = <&L3_0>; 187 }; 188 }; 189 190 CPU7: cpu@700 { 191 device_type = "cpu"; 192 compatible = "arm,cortex-x1"; 193 reg = <0x0 0x700>; 194 clocks = <&cpufreq_hw 2>; 195 enable-method = "psci"; 196 next-level-cache = <&L2_700>; 197 qcom,freq-domain = <&cpufreq_hw 2>; 198 power-domains = <&CPU_PD7>; 199 power-domain-names = "psci"; 200 #cooling-cells = <2>; 201 L2_700: l2-cache { 202 compatible = "cache"; 203 cache-level = <2>; 204 cache-unified; 205 next-level-cache = <&L3_0>; 206 }; 207 }; 208 209 cpu-map { 210 cluster0 { 211 core0 { 212 cpu = <&CPU0>; 213 }; 214 215 core1 { 216 cpu = <&CPU1>; 217 }; 218 219 core2 { 220 cpu = <&CPU2>; 221 }; 222 223 core3 { 224 cpu = <&CPU3>; 225 }; 226 227 core4 { 228 cpu = <&CPU4>; 229 }; 230 231 core5 { 232 cpu = <&CPU5>; 233 }; 234 235 core6 { 236 cpu = <&CPU6>; 237 }; 238 239 core7 { 240 cpu = <&CPU7>; 241 }; 242 }; 243 }; 244 245 idle-states { 246 entry-method = "psci"; 247 248 LITTLE_CPU_SLEEP_0: cpu-sleep-0-0 { 249 compatible = "arm,idle-state"; 250 idle-state-name = "silver-rail-power-collapse"; 251 arm,psci-suspend-param = <0x40000004>; 252 entry-latency-us = <360>; 253 exit-latency-us = <531>; 254 min-residency-us = <3934>; 255 local-timer-stop; 256 }; 257 258 BIG_CPU_SLEEP_0: cpu-sleep-1-0 { 259 compatible = "arm,idle-state"; 260 idle-state-name = "gold-rail-power-collapse"; 261 arm,psci-suspend-param = <0x40000004>; 262 entry-latency-us = <702>; 263 exit-latency-us = <1061>; 264 min-residency-us = <4488>; 265 local-timer-stop; 266 }; 267 }; 268 269 domain-idle-states { 270 CLUSTER_SLEEP_APSS_OFF: cluster-sleep-0 { 271 compatible = "domain-idle-state"; 272 arm,psci-suspend-param = <0x41000044>; 273 entry-latency-us = <2752>; 274 exit-latency-us = <3048>; 275 min-residency-us = <6118>; 276 }; 277 278 CLUSTER_SLEEP_AOSS_SLEEP: cluster-sleep-1 { 279 compatible = "domain-idle-state"; 280 arm,psci-suspend-param = <0x4100c344>; 281 entry-latency-us = <3263>; 282 exit-latency-us = <6562>; 283 min-residency-us = <9987>; 284 }; 285 }; 286 }; 287 288 firmware { 289 scm: scm { 290 compatible = "qcom,scm-sm8350", "qcom,scm"; 291 #reset-cells = <1>; 292 }; 293 }; 294 295 memory@80000000 { 296 device_type = "memory"; 297 /* We expect the bootloader to fill in the size */ 298 reg = <0x0 0x80000000 0x0 0x0>; 299 }; 300 301 pmu { 302 compatible = "arm,armv8-pmuv3"; 303 interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_LOW>; 304 }; 305 306 psci { 307 compatible = "arm,psci-1.0"; 308 method = "smc"; 309 310 CPU_PD0: power-domain-cpu0 { 311 #power-domain-cells = <0>; 312 power-domains = <&CLUSTER_PD>; 313 domain-idle-states = <&LITTLE_CPU_SLEEP_0>; 314 }; 315 316 CPU_PD1: power-domain-cpu1 { 317 #power-domain-cells = <0>; 318 power-domains = <&CLUSTER_PD>; 319 domain-idle-states = <&LITTLE_CPU_SLEEP_0>; 320 }; 321 322 CPU_PD2: power-domain-cpu2 { 323 #power-domain-cells = <0>; 324 power-domains = <&CLUSTER_PD>; 325 domain-idle-states = <&LITTLE_CPU_SLEEP_0>; 326 }; 327 328 CPU_PD3: power-domain-cpu3 { 329 #power-domain-cells = <0>; 330 power-domains = <&CLUSTER_PD>; 331 domain-idle-states = <&LITTLE_CPU_SLEEP_0>; 332 }; 333 334 CPU_PD4: power-domain-cpu4 { 335 #power-domain-cells = <0>; 336 power-domains = <&CLUSTER_PD>; 337 domain-idle-states = <&BIG_CPU_SLEEP_0>; 338 }; 339 340 CPU_PD5: power-domain-cpu5 { 341 #power-domain-cells = <0>; 342 power-domains = <&CLUSTER_PD>; 343 domain-idle-states = <&BIG_CPU_SLEEP_0>; 344 }; 345 346 CPU_PD6: power-domain-cpu6 { 347 #power-domain-cells = <0>; 348 power-domains = <&CLUSTER_PD>; 349 domain-idle-states = <&BIG_CPU_SLEEP_0>; 350 }; 351 352 CPU_PD7: power-domain-cpu7 { 353 #power-domain-cells = <0>; 354 power-domains = <&CLUSTER_PD>; 355 domain-idle-states = <&BIG_CPU_SLEEP_0>; 356 }; 357 358 CLUSTER_PD: power-domain-cpu-cluster0 { 359 #power-domain-cells = <0>; 360 domain-idle-states = <&CLUSTER_SLEEP_APSS_OFF &CLUSTER_SLEEP_AOSS_SLEEP>; 361 }; 362 }; 363 364 qup_opp_table_100mhz: opp-table-qup100mhz { 365 compatible = "operating-points-v2"; 366 367 opp-50000000 { 368 opp-hz = /bits/ 64 <50000000>; 369 required-opps = <&rpmhpd_opp_min_svs>; 370 }; 371 372 opp-75000000 { 373 opp-hz = /bits/ 64 <75000000>; 374 required-opps = <&rpmhpd_opp_low_svs>; 375 }; 376 377 opp-100000000 { 378 opp-hz = /bits/ 64 <100000000>; 379 required-opps = <&rpmhpd_opp_svs>; 380 }; 381 }; 382 383 qup_opp_table_120mhz: opp-table-qup120mhz { 384 compatible = "operating-points-v2"; 385 386 opp-50000000 { 387 opp-hz = /bits/ 64 <50000000>; 388 required-opps = <&rpmhpd_opp_min_svs>; 389 }; 390 391 opp-75000000 { 392 opp-hz = /bits/ 64 <75000000>; 393 required-opps = <&rpmhpd_opp_low_svs>; 394 }; 395 396 opp-120000000 { 397 opp-hz = /bits/ 64 <120000000>; 398 required-opps = <&rpmhpd_opp_svs>; 399 }; 400 }; 401 402 reserved_memory: reserved-memory { 403 #address-cells = <2>; 404 #size-cells = <2>; 405 ranges; 406 407 hyp_mem: memory@80000000 { 408 reg = <0x0 0x80000000 0x0 0x600000>; 409 no-map; 410 }; 411 412 xbl_aop_mem: memory@80700000 { 413 no-map; 414 reg = <0x0 0x80700000 0x0 0x160000>; 415 }; 416 417 cmd_db: memory@80860000 { 418 compatible = "qcom,cmd-db"; 419 reg = <0x0 0x80860000 0x0 0x20000>; 420 no-map; 421 }; 422 423 reserved_xbl_uefi_log: memory@80880000 { 424 reg = <0x0 0x80880000 0x0 0x14000>; 425 no-map; 426 }; 427 428 smem@80900000 { 429 compatible = "qcom,smem"; 430 reg = <0x0 0x80900000 0x0 0x200000>; 431 hwlocks = <&tcsr_mutex 3>; 432 no-map; 433 }; 434 435 cpucp_fw_mem: memory@80b00000 { 436 reg = <0x0 0x80b00000 0x0 0x100000>; 437 no-map; 438 }; 439 440 cdsp_secure_heap: memory@80c00000 { 441 reg = <0x0 0x80c00000 0x0 0x4600000>; 442 no-map; 443 }; 444 445 pil_camera_mem: mmeory@85200000 { 446 reg = <0x0 0x85200000 0x0 0x500000>; 447 no-map; 448 }; 449 450 pil_video_mem: memory@85700000 { 451 reg = <0x0 0x85700000 0x0 0x500000>; 452 no-map; 453 }; 454 455 pil_cvp_mem: memory@85c00000 { 456 reg = <0x0 0x85c00000 0x0 0x500000>; 457 no-map; 458 }; 459 460 pil_adsp_mem: memory@86100000 { 461 reg = <0x0 0x86100000 0x0 0x2100000>; 462 no-map; 463 }; 464 465 pil_slpi_mem: memory@88200000 { 466 reg = <0x0 0x88200000 0x0 0x1500000>; 467 no-map; 468 }; 469 470 pil_cdsp_mem: memory@89700000 { 471 reg = <0x0 0x89700000 0x0 0x1e00000>; 472 no-map; 473 }; 474 475 pil_ipa_fw_mem: memory@8b500000 { 476 reg = <0x0 0x8b500000 0x0 0x10000>; 477 no-map; 478 }; 479 480 pil_ipa_gsi_mem: memory@8b510000 { 481 reg = <0x0 0x8b510000 0x0 0xa000>; 482 no-map; 483 }; 484 485 pil_gpu_mem: memory@8b51a000 { 486 reg = <0x0 0x8b51a000 0x0 0x2000>; 487 no-map; 488 }; 489 490 pil_spss_mem: memory@8b600000 { 491 reg = <0x0 0x8b600000 0x0 0x100000>; 492 no-map; 493 }; 494 495 pil_modem_mem: memory@8b800000 { 496 reg = <0x0 0x8b800000 0x0 0x10000000>; 497 no-map; 498 }; 499 500 rmtfs_mem: memory@9b800000 { 501 compatible = "qcom,rmtfs-mem"; 502 reg = <0x0 0x9b800000 0x0 0x280000>; 503 no-map; 504 505 qcom,client-id = <1>; 506 qcom,vmid = <15>; 507 }; 508 509 hyp_reserved_mem: memory@d0000000 { 510 reg = <0x0 0xd0000000 0x0 0x800000>; 511 no-map; 512 }; 513 514 pil_trustedvm_mem: memory@d0800000 { 515 reg = <0x0 0xd0800000 0x0 0x76f7000>; 516 no-map; 517 }; 518 519 qrtr_shbuf: memory@d7ef7000 { 520 reg = <0x0 0xd7ef7000 0x0 0x9000>; 521 no-map; 522 }; 523 524 chan0_shbuf: memory@d7f00000 { 525 reg = <0x0 0xd7f00000 0x0 0x80000>; 526 no-map; 527 }; 528 529 chan1_shbuf: memory@d7f80000 { 530 reg = <0x0 0xd7f80000 0x0 0x80000>; 531 no-map; 532 }; 533 534 removed_mem: memory@d8800000 { 535 reg = <0x0 0xd8800000 0x0 0x6800000>; 536 no-map; 537 }; 538 }; 539 540 smp2p-adsp { 541 compatible = "qcom,smp2p"; 542 qcom,smem = <443>, <429>; 543 interrupts-extended = <&ipcc IPCC_CLIENT_LPASS 544 IPCC_MPROC_SIGNAL_SMP2P 545 IRQ_TYPE_EDGE_RISING>; 546 mboxes = <&ipcc IPCC_CLIENT_LPASS 547 IPCC_MPROC_SIGNAL_SMP2P>; 548 549 qcom,local-pid = <0>; 550 qcom,remote-pid = <2>; 551 552 smp2p_adsp_out: master-kernel { 553 qcom,entry-name = "master-kernel"; 554 #qcom,smem-state-cells = <1>; 555 }; 556 557 smp2p_adsp_in: slave-kernel { 558 qcom,entry-name = "slave-kernel"; 559 interrupt-controller; 560 #interrupt-cells = <2>; 561 }; 562 }; 563 564 smp2p-cdsp { 565 compatible = "qcom,smp2p"; 566 qcom,smem = <94>, <432>; 567 interrupts-extended = <&ipcc IPCC_CLIENT_CDSP 568 IPCC_MPROC_SIGNAL_SMP2P 569 IRQ_TYPE_EDGE_RISING>; 570 mboxes = <&ipcc IPCC_CLIENT_CDSP 571 IPCC_MPROC_SIGNAL_SMP2P>; 572 573 qcom,local-pid = <0>; 574 qcom,remote-pid = <5>; 575 576 smp2p_cdsp_out: master-kernel { 577 qcom,entry-name = "master-kernel"; 578 #qcom,smem-state-cells = <1>; 579 }; 580 581 smp2p_cdsp_in: slave-kernel { 582 qcom,entry-name = "slave-kernel"; 583 interrupt-controller; 584 #interrupt-cells = <2>; 585 }; 586 }; 587 588 smp2p-modem { 589 compatible = "qcom,smp2p"; 590 qcom,smem = <435>, <428>; 591 interrupts-extended = <&ipcc IPCC_CLIENT_MPSS 592 IPCC_MPROC_SIGNAL_SMP2P 593 IRQ_TYPE_EDGE_RISING>; 594 mboxes = <&ipcc IPCC_CLIENT_MPSS 595 IPCC_MPROC_SIGNAL_SMP2P>; 596 597 qcom,local-pid = <0>; 598 qcom,remote-pid = <1>; 599 600 smp2p_modem_out: master-kernel { 601 qcom,entry-name = "master-kernel"; 602 #qcom,smem-state-cells = <1>; 603 }; 604 605 smp2p_modem_in: slave-kernel { 606 qcom,entry-name = "slave-kernel"; 607 interrupt-controller; 608 #interrupt-cells = <2>; 609 }; 610 611 ipa_smp2p_out: ipa-ap-to-modem { 612 qcom,entry-name = "ipa"; 613 #qcom,smem-state-cells = <1>; 614 }; 615 616 ipa_smp2p_in: ipa-modem-to-ap { 617 qcom,entry-name = "ipa"; 618 interrupt-controller; 619 #interrupt-cells = <2>; 620 }; 621 }; 622 623 smp2p-slpi { 624 compatible = "qcom,smp2p"; 625 qcom,smem = <481>, <430>; 626 interrupts-extended = <&ipcc IPCC_CLIENT_SLPI 627 IPCC_MPROC_SIGNAL_SMP2P 628 IRQ_TYPE_EDGE_RISING>; 629 mboxes = <&ipcc IPCC_CLIENT_SLPI 630 IPCC_MPROC_SIGNAL_SMP2P>; 631 632 qcom,local-pid = <0>; 633 qcom,remote-pid = <3>; 634 635 smp2p_slpi_out: master-kernel { 636 qcom,entry-name = "master-kernel"; 637 #qcom,smem-state-cells = <1>; 638 }; 639 640 smp2p_slpi_in: slave-kernel { 641 qcom,entry-name = "slave-kernel"; 642 interrupt-controller; 643 #interrupt-cells = <2>; 644 }; 645 }; 646 647 soc: soc@0 { 648 #address-cells = <2>; 649 #size-cells = <2>; 650 ranges = <0 0 0 0 0x10 0>; 651 dma-ranges = <0 0 0 0 0x10 0>; 652 compatible = "simple-bus"; 653 654 gcc: clock-controller@100000 { 655 compatible = "qcom,gcc-sm8350"; 656 reg = <0x0 0x00100000 0x0 0x1f0000>; 657 #clock-cells = <1>; 658 #reset-cells = <1>; 659 #power-domain-cells = <1>; 660 clock-names = "bi_tcxo", 661 "sleep_clk", 662 "pcie_0_pipe_clk", 663 "pcie_1_pipe_clk", 664 "ufs_card_rx_symbol_0_clk", 665 "ufs_card_rx_symbol_1_clk", 666 "ufs_card_tx_symbol_0_clk", 667 "ufs_phy_rx_symbol_0_clk", 668 "ufs_phy_rx_symbol_1_clk", 669 "ufs_phy_tx_symbol_0_clk", 670 "usb3_phy_wrapper_gcc_usb30_pipe_clk", 671 "usb3_uni_phy_sec_gcc_usb30_pipe_clk"; 672 clocks = <&rpmhcc RPMH_CXO_CLK>, 673 <&sleep_clk>, 674 <&pcie0_phy>, 675 <&pcie1_phy>, 676 <0>, 677 <0>, 678 <0>, 679 <&ufs_mem_phy_lanes 0>, 680 <&ufs_mem_phy_lanes 1>, 681 <&ufs_mem_phy_lanes 2>, 682 <&usb_1_qmpphy QMP_USB43DP_USB3_PIPE_CLK>, 683 <0>; 684 }; 685 686 ipcc: mailbox@408000 { 687 compatible = "qcom,sm8350-ipcc", "qcom,ipcc"; 688 reg = <0 0x00408000 0 0x1000>; 689 interrupts = <GIC_SPI 229 IRQ_TYPE_LEVEL_HIGH>; 690 interrupt-controller; 691 #interrupt-cells = <3>; 692 #mbox-cells = <2>; 693 }; 694 695 gpi_dma2: dma-controller@800000 { 696 compatible = "qcom,sm8350-gpi-dma", "qcom,sm6350-gpi-dma"; 697 reg = <0 0x00800000 0 0x60000>; 698 interrupts = <GIC_SPI 588 IRQ_TYPE_LEVEL_HIGH>, 699 <GIC_SPI 589 IRQ_TYPE_LEVEL_HIGH>, 700 <GIC_SPI 590 IRQ_TYPE_LEVEL_HIGH>, 701 <GIC_SPI 591 IRQ_TYPE_LEVEL_HIGH>, 702 <GIC_SPI 592 IRQ_TYPE_LEVEL_HIGH>, 703 <GIC_SPI 593 IRQ_TYPE_LEVEL_HIGH>, 704 <GIC_SPI 594 IRQ_TYPE_LEVEL_HIGH>, 705 <GIC_SPI 595 IRQ_TYPE_LEVEL_HIGH>, 706 <GIC_SPI 596 IRQ_TYPE_LEVEL_HIGH>, 707 <GIC_SPI 597 IRQ_TYPE_LEVEL_HIGH>, 708 <GIC_SPI 598 IRQ_TYPE_LEVEL_HIGH>, 709 <GIC_SPI 599 IRQ_TYPE_LEVEL_HIGH>; 710 dma-channels = <12>; 711 dma-channel-mask = <0xff>; 712 iommus = <&apps_smmu 0x5f6 0x0>; 713 #dma-cells = <3>; 714 status = "disabled"; 715 }; 716 717 qupv3_id_2: geniqup@8c0000 { 718 compatible = "qcom,geni-se-qup"; 719 reg = <0x0 0x008c0000 0x0 0x6000>; 720 clock-names = "m-ahb", "s-ahb"; 721 clocks = <&gcc GCC_QUPV3_WRAP_2_M_AHB_CLK>, 722 <&gcc GCC_QUPV3_WRAP_2_S_AHB_CLK>; 723 iommus = <&apps_smmu 0x5e3 0x0>; 724 #address-cells = <2>; 725 #size-cells = <2>; 726 ranges; 727 status = "disabled"; 728 729 i2c14: i2c@880000 { 730 compatible = "qcom,geni-i2c"; 731 reg = <0 0x00880000 0 0x4000>; 732 clock-names = "se"; 733 clocks = <&gcc GCC_QUPV3_WRAP2_S0_CLK>; 734 pinctrl-names = "default"; 735 pinctrl-0 = <&qup_i2c14_default>; 736 interrupts = <GIC_SPI 373 IRQ_TYPE_LEVEL_HIGH>; 737 dmas = <&gpi_dma2 0 0 QCOM_GPI_I2C>, 738 <&gpi_dma2 1 0 QCOM_GPI_I2C>; 739 dma-names = "tx", "rx"; 740 #address-cells = <1>; 741 #size-cells = <0>; 742 status = "disabled"; 743 }; 744 745 spi14: spi@880000 { 746 compatible = "qcom,geni-spi"; 747 reg = <0 0x00880000 0 0x4000>; 748 clock-names = "se"; 749 clocks = <&gcc GCC_QUPV3_WRAP2_S0_CLK>; 750 interrupts = <GIC_SPI 373 IRQ_TYPE_LEVEL_HIGH>; 751 power-domains = <&rpmhpd RPMHPD_CX>; 752 operating-points-v2 = <&qup_opp_table_120mhz>; 753 dmas = <&gpi_dma2 0 0 QCOM_GPI_SPI>, 754 <&gpi_dma2 1 0 QCOM_GPI_SPI>; 755 dma-names = "tx", "rx"; 756 #address-cells = <1>; 757 #size-cells = <0>; 758 status = "disabled"; 759 }; 760 761 i2c15: i2c@884000 { 762 compatible = "qcom,geni-i2c"; 763 reg = <0 0x00884000 0 0x4000>; 764 clock-names = "se"; 765 clocks = <&gcc GCC_QUPV3_WRAP2_S1_CLK>; 766 pinctrl-names = "default"; 767 pinctrl-0 = <&qup_i2c15_default>; 768 interrupts = <GIC_SPI 583 IRQ_TYPE_LEVEL_HIGH>; 769 dmas = <&gpi_dma2 0 1 QCOM_GPI_I2C>, 770 <&gpi_dma2 1 1 QCOM_GPI_I2C>; 771 dma-names = "tx", "rx"; 772 #address-cells = <1>; 773 #size-cells = <0>; 774 status = "disabled"; 775 }; 776 777 spi15: spi@884000 { 778 compatible = "qcom,geni-spi"; 779 reg = <0 0x00884000 0 0x4000>; 780 clock-names = "se"; 781 clocks = <&gcc GCC_QUPV3_WRAP2_S1_CLK>; 782 interrupts = <GIC_SPI 583 IRQ_TYPE_LEVEL_HIGH>; 783 power-domains = <&rpmhpd RPMHPD_CX>; 784 operating-points-v2 = <&qup_opp_table_120mhz>; 785 dmas = <&gpi_dma2 0 1 QCOM_GPI_SPI>, 786 <&gpi_dma2 1 1 QCOM_GPI_SPI>; 787 dma-names = "tx", "rx"; 788 #address-cells = <1>; 789 #size-cells = <0>; 790 status = "disabled"; 791 }; 792 793 i2c16: i2c@888000 { 794 compatible = "qcom,geni-i2c"; 795 reg = <0 0x00888000 0 0x4000>; 796 clock-names = "se"; 797 clocks = <&gcc GCC_QUPV3_WRAP2_S2_CLK>; 798 pinctrl-names = "default"; 799 pinctrl-0 = <&qup_i2c16_default>; 800 interrupts = <GIC_SPI 584 IRQ_TYPE_LEVEL_HIGH>; 801 dmas = <&gpi_dma2 0 2 QCOM_GPI_I2C>, 802 <&gpi_dma2 1 2 QCOM_GPI_I2C>; 803 dma-names = "tx", "rx"; 804 #address-cells = <1>; 805 #size-cells = <0>; 806 status = "disabled"; 807 }; 808 809 spi16: spi@888000 { 810 compatible = "qcom,geni-spi"; 811 reg = <0 0x00888000 0 0x4000>; 812 clock-names = "se"; 813 clocks = <&gcc GCC_QUPV3_WRAP2_S2_CLK>; 814 interrupts = <GIC_SPI 584 IRQ_TYPE_LEVEL_HIGH>; 815 power-domains = <&rpmhpd RPMHPD_CX>; 816 operating-points-v2 = <&qup_opp_table_100mhz>; 817 dmas = <&gpi_dma2 0 2 QCOM_GPI_SPI>, 818 <&gpi_dma2 1 2 QCOM_GPI_SPI>; 819 dma-names = "tx", "rx"; 820 #address-cells = <1>; 821 #size-cells = <0>; 822 status = "disabled"; 823 }; 824 825 i2c17: i2c@88c000 { 826 compatible = "qcom,geni-i2c"; 827 reg = <0 0x0088c000 0 0x4000>; 828 clock-names = "se"; 829 clocks = <&gcc GCC_QUPV3_WRAP2_S3_CLK>; 830 pinctrl-names = "default"; 831 pinctrl-0 = <&qup_i2c17_default>; 832 interrupts = <GIC_SPI 585 IRQ_TYPE_LEVEL_HIGH>; 833 dmas = <&gpi_dma2 0 3 QCOM_GPI_I2C>, 834 <&gpi_dma2 1 3 QCOM_GPI_I2C>; 835 dma-names = "tx", "rx"; 836 #address-cells = <1>; 837 #size-cells = <0>; 838 status = "disabled"; 839 }; 840 841 spi17: spi@88c000 { 842 compatible = "qcom,geni-spi"; 843 reg = <0 0x0088c000 0 0x4000>; 844 clock-names = "se"; 845 clocks = <&gcc GCC_QUPV3_WRAP2_S3_CLK>; 846 interrupts = <GIC_SPI 585 IRQ_TYPE_LEVEL_HIGH>; 847 power-domains = <&rpmhpd RPMHPD_CX>; 848 operating-points-v2 = <&qup_opp_table_100mhz>; 849 dmas = <&gpi_dma2 0 3 QCOM_GPI_SPI>, 850 <&gpi_dma2 1 3 QCOM_GPI_SPI>; 851 dma-names = "tx", "rx"; 852 #address-cells = <1>; 853 #size-cells = <0>; 854 status = "disabled"; 855 }; 856 857 /* QUP no. 18 seems to be strictly SPI/UART-only */ 858 859 spi18: spi@890000 { 860 compatible = "qcom,geni-spi"; 861 reg = <0 0x00890000 0 0x4000>; 862 clock-names = "se"; 863 clocks = <&gcc GCC_QUPV3_WRAP2_S4_CLK>; 864 interrupts = <GIC_SPI 586 IRQ_TYPE_LEVEL_HIGH>; 865 power-domains = <&rpmhpd RPMHPD_CX>; 866 operating-points-v2 = <&qup_opp_table_100mhz>; 867 dmas = <&gpi_dma2 0 4 QCOM_GPI_SPI>, 868 <&gpi_dma2 1 4 QCOM_GPI_SPI>; 869 dma-names = "tx", "rx"; 870 #address-cells = <1>; 871 #size-cells = <0>; 872 status = "disabled"; 873 }; 874 875 uart18: serial@890000 { 876 compatible = "qcom,geni-uart"; 877 reg = <0 0x00890000 0 0x4000>; 878 clock-names = "se"; 879 clocks = <&gcc GCC_QUPV3_WRAP2_S4_CLK>; 880 pinctrl-names = "default"; 881 pinctrl-0 = <&qup_uart18_default>; 882 interrupts = <GIC_SPI 586 IRQ_TYPE_LEVEL_HIGH>; 883 power-domains = <&rpmhpd RPMHPD_CX>; 884 operating-points-v2 = <&qup_opp_table_100mhz>; 885 status = "disabled"; 886 }; 887 888 i2c19: i2c@894000 { 889 compatible = "qcom,geni-i2c"; 890 reg = <0 0x00894000 0 0x4000>; 891 clock-names = "se"; 892 clocks = <&gcc GCC_QUPV3_WRAP2_S5_CLK>; 893 pinctrl-names = "default"; 894 pinctrl-0 = <&qup_i2c19_default>; 895 interrupts = <GIC_SPI 587 IRQ_TYPE_LEVEL_HIGH>; 896 dmas = <&gpi_dma2 0 5 QCOM_GPI_I2C>, 897 <&gpi_dma2 1 5 QCOM_GPI_I2C>; 898 dma-names = "tx", "rx"; 899 #address-cells = <1>; 900 #size-cells = <0>; 901 status = "disabled"; 902 }; 903 904 spi19: spi@894000 { 905 compatible = "qcom,geni-spi"; 906 reg = <0 0x00894000 0 0x4000>; 907 clock-names = "se"; 908 clocks = <&gcc GCC_QUPV3_WRAP2_S5_CLK>; 909 interrupts = <GIC_SPI 587 IRQ_TYPE_LEVEL_HIGH>; 910 power-domains = <&rpmhpd RPMHPD_CX>; 911 operating-points-v2 = <&qup_opp_table_100mhz>; 912 dmas = <&gpi_dma2 0 5 QCOM_GPI_SPI>, 913 <&gpi_dma2 1 5 QCOM_GPI_SPI>; 914 dma-names = "tx", "rx"; 915 #address-cells = <1>; 916 #size-cells = <0>; 917 status = "disabled"; 918 }; 919 }; 920 921 gpi_dma0: dma-controller@900000 { 922 compatible = "qcom,sm8350-gpi-dma", "qcom,sm6350-gpi-dma"; 923 reg = <0 0x00900000 0 0x60000>; 924 interrupts = <GIC_SPI 244 IRQ_TYPE_LEVEL_HIGH>, 925 <GIC_SPI 245 IRQ_TYPE_LEVEL_HIGH>, 926 <GIC_SPI 246 IRQ_TYPE_LEVEL_HIGH>, 927 <GIC_SPI 247 IRQ_TYPE_LEVEL_HIGH>, 928 <GIC_SPI 248 IRQ_TYPE_LEVEL_HIGH>, 929 <GIC_SPI 249 IRQ_TYPE_LEVEL_HIGH>, 930 <GIC_SPI 250 IRQ_TYPE_LEVEL_HIGH>, 931 <GIC_SPI 251 IRQ_TYPE_LEVEL_HIGH>, 932 <GIC_SPI 252 IRQ_TYPE_LEVEL_HIGH>, 933 <GIC_SPI 253 IRQ_TYPE_LEVEL_HIGH>, 934 <GIC_SPI 254 IRQ_TYPE_LEVEL_HIGH>, 935 <GIC_SPI 255 IRQ_TYPE_LEVEL_HIGH>; 936 dma-channels = <12>; 937 dma-channel-mask = <0x7e>; 938 iommus = <&apps_smmu 0x5b6 0x0>; 939 #dma-cells = <3>; 940 status = "disabled"; 941 }; 942 943 qupv3_id_0: geniqup@9c0000 { 944 compatible = "qcom,geni-se-qup"; 945 reg = <0x0 0x009c0000 0x0 0x6000>; 946 clock-names = "m-ahb", "s-ahb"; 947 clocks = <&gcc GCC_QUPV3_WRAP_0_M_AHB_CLK>, 948 <&gcc GCC_QUPV3_WRAP_0_S_AHB_CLK>; 949 iommus = <&apps_smmu 0x5a3 0>; 950 #address-cells = <2>; 951 #size-cells = <2>; 952 ranges; 953 status = "disabled"; 954 955 i2c0: i2c@980000 { 956 compatible = "qcom,geni-i2c"; 957 reg = <0 0x00980000 0 0x4000>; 958 clock-names = "se"; 959 clocks = <&gcc GCC_QUPV3_WRAP0_S0_CLK>; 960 pinctrl-names = "default"; 961 pinctrl-0 = <&qup_i2c0_default>; 962 interrupts = <GIC_SPI 601 IRQ_TYPE_LEVEL_HIGH>; 963 dmas = <&gpi_dma0 0 0 QCOM_GPI_I2C>, 964 <&gpi_dma0 1 0 QCOM_GPI_I2C>; 965 dma-names = "tx", "rx"; 966 #address-cells = <1>; 967 #size-cells = <0>; 968 status = "disabled"; 969 }; 970 971 spi0: spi@980000 { 972 compatible = "qcom,geni-spi"; 973 reg = <0 0x00980000 0 0x4000>; 974 clock-names = "se"; 975 clocks = <&gcc GCC_QUPV3_WRAP0_S0_CLK>; 976 interrupts = <GIC_SPI 601 IRQ_TYPE_LEVEL_HIGH>; 977 power-domains = <&rpmhpd RPMHPD_CX>; 978 operating-points-v2 = <&qup_opp_table_100mhz>; 979 dmas = <&gpi_dma0 0 0 QCOM_GPI_SPI>, 980 <&gpi_dma0 1 0 QCOM_GPI_SPI>; 981 dma-names = "tx", "rx"; 982 #address-cells = <1>; 983 #size-cells = <0>; 984 status = "disabled"; 985 }; 986 987 i2c1: i2c@984000 { 988 compatible = "qcom,geni-i2c"; 989 reg = <0 0x00984000 0 0x4000>; 990 clock-names = "se"; 991 clocks = <&gcc GCC_QUPV3_WRAP0_S1_CLK>; 992 pinctrl-names = "default"; 993 pinctrl-0 = <&qup_i2c1_default>; 994 interrupts = <GIC_SPI 602 IRQ_TYPE_LEVEL_HIGH>; 995 dmas = <&gpi_dma0 0 1 QCOM_GPI_I2C>, 996 <&gpi_dma0 1 1 QCOM_GPI_I2C>; 997 dma-names = "tx", "rx"; 998 #address-cells = <1>; 999 #size-cells = <0>; 1000 status = "disabled"; 1001 }; 1002 1003 spi1: spi@984000 { 1004 compatible = "qcom,geni-spi"; 1005 reg = <0 0x00984000 0 0x4000>; 1006 clock-names = "se"; 1007 clocks = <&gcc GCC_QUPV3_WRAP0_S1_CLK>; 1008 interrupts = <GIC_SPI 602 IRQ_TYPE_LEVEL_HIGH>; 1009 power-domains = <&rpmhpd RPMHPD_CX>; 1010 operating-points-v2 = <&qup_opp_table_100mhz>; 1011 dmas = <&gpi_dma0 0 1 QCOM_GPI_SPI>, 1012 <&gpi_dma0 1 1 QCOM_GPI_SPI>; 1013 dma-names = "tx", "rx"; 1014 #address-cells = <1>; 1015 #size-cells = <0>; 1016 status = "disabled"; 1017 }; 1018 1019 i2c2: i2c@988000 { 1020 compatible = "qcom,geni-i2c"; 1021 reg = <0 0x00988000 0 0x4000>; 1022 clock-names = "se"; 1023 clocks = <&gcc GCC_QUPV3_WRAP0_S2_CLK>; 1024 pinctrl-names = "default"; 1025 pinctrl-0 = <&qup_i2c2_default>; 1026 interrupts = <GIC_SPI 603 IRQ_TYPE_LEVEL_HIGH>; 1027 dmas = <&gpi_dma0 0 2 QCOM_GPI_I2C>, 1028 <&gpi_dma0 1 2 QCOM_GPI_I2C>; 1029 dma-names = "tx", "rx"; 1030 #address-cells = <1>; 1031 #size-cells = <0>; 1032 status = "disabled"; 1033 }; 1034 1035 spi2: spi@988000 { 1036 compatible = "qcom,geni-spi"; 1037 reg = <0 0x00988000 0 0x4000>; 1038 clock-names = "se"; 1039 clocks = <&gcc GCC_QUPV3_WRAP0_S2_CLK>; 1040 interrupts = <GIC_SPI 603 IRQ_TYPE_LEVEL_HIGH>; 1041 power-domains = <&rpmhpd RPMHPD_CX>; 1042 operating-points-v2 = <&qup_opp_table_100mhz>; 1043 dmas = <&gpi_dma0 0 2 QCOM_GPI_SPI>, 1044 <&gpi_dma0 1 2 QCOM_GPI_SPI>; 1045 dma-names = "tx", "rx"; 1046 #address-cells = <1>; 1047 #size-cells = <0>; 1048 status = "disabled"; 1049 }; 1050 1051 uart2: serial@98c000 { 1052 compatible = "qcom,geni-debug-uart"; 1053 reg = <0 0x0098c000 0 0x4000>; 1054 clock-names = "se"; 1055 clocks = <&gcc GCC_QUPV3_WRAP0_S3_CLK>; 1056 pinctrl-names = "default"; 1057 pinctrl-0 = <&qup_uart3_default_state>; 1058 interrupts = <GIC_SPI 604 IRQ_TYPE_LEVEL_HIGH>; 1059 power-domains = <&rpmhpd RPMHPD_CX>; 1060 operating-points-v2 = <&qup_opp_table_100mhz>; 1061 status = "disabled"; 1062 }; 1063 1064 /* QUP no. 3 seems to be strictly SPI-only */ 1065 1066 spi3: spi@98c000 { 1067 compatible = "qcom,geni-spi"; 1068 reg = <0 0x0098c000 0 0x4000>; 1069 clock-names = "se"; 1070 clocks = <&gcc GCC_QUPV3_WRAP0_S3_CLK>; 1071 interrupts = <GIC_SPI 604 IRQ_TYPE_LEVEL_HIGH>; 1072 power-domains = <&rpmhpd RPMHPD_CX>; 1073 operating-points-v2 = <&qup_opp_table_100mhz>; 1074 dmas = <&gpi_dma0 0 3 QCOM_GPI_SPI>, 1075 <&gpi_dma0 1 3 QCOM_GPI_SPI>; 1076 dma-names = "tx", "rx"; 1077 #address-cells = <1>; 1078 #size-cells = <0>; 1079 status = "disabled"; 1080 }; 1081 1082 i2c4: i2c@990000 { 1083 compatible = "qcom,geni-i2c"; 1084 reg = <0 0x00990000 0 0x4000>; 1085 clock-names = "se"; 1086 clocks = <&gcc GCC_QUPV3_WRAP0_S4_CLK>; 1087 pinctrl-names = "default"; 1088 pinctrl-0 = <&qup_i2c4_default>; 1089 interrupts = <GIC_SPI 605 IRQ_TYPE_LEVEL_HIGH>; 1090 dmas = <&gpi_dma0 0 4 QCOM_GPI_I2C>, 1091 <&gpi_dma0 1 4 QCOM_GPI_I2C>; 1092 dma-names = "tx", "rx"; 1093 #address-cells = <1>; 1094 #size-cells = <0>; 1095 status = "disabled"; 1096 }; 1097 1098 spi4: spi@990000 { 1099 compatible = "qcom,geni-spi"; 1100 reg = <0 0x00990000 0 0x4000>; 1101 clock-names = "se"; 1102 clocks = <&gcc GCC_QUPV3_WRAP0_S4_CLK>; 1103 interrupts = <GIC_SPI 605 IRQ_TYPE_LEVEL_HIGH>; 1104 power-domains = <&rpmhpd RPMHPD_CX>; 1105 operating-points-v2 = <&qup_opp_table_100mhz>; 1106 dmas = <&gpi_dma0 0 4 QCOM_GPI_SPI>, 1107 <&gpi_dma0 1 4 QCOM_GPI_SPI>; 1108 dma-names = "tx", "rx"; 1109 #address-cells = <1>; 1110 #size-cells = <0>; 1111 status = "disabled"; 1112 }; 1113 1114 i2c5: i2c@994000 { 1115 compatible = "qcom,geni-i2c"; 1116 reg = <0 0x00994000 0 0x4000>; 1117 clock-names = "se"; 1118 clocks = <&gcc GCC_QUPV3_WRAP0_S5_CLK>; 1119 pinctrl-names = "default"; 1120 pinctrl-0 = <&qup_i2c5_default>; 1121 interrupts = <GIC_SPI 606 IRQ_TYPE_LEVEL_HIGH>; 1122 dmas = <&gpi_dma0 0 5 QCOM_GPI_I2C>, 1123 <&gpi_dma0 1 5 QCOM_GPI_I2C>; 1124 dma-names = "tx", "rx"; 1125 #address-cells = <1>; 1126 #size-cells = <0>; 1127 status = "disabled"; 1128 }; 1129 1130 spi5: spi@994000 { 1131 compatible = "qcom,geni-spi"; 1132 reg = <0 0x00994000 0 0x4000>; 1133 clock-names = "se"; 1134 clocks = <&gcc GCC_QUPV3_WRAP0_S5_CLK>; 1135 interrupts = <GIC_SPI 606 IRQ_TYPE_LEVEL_HIGH>; 1136 power-domains = <&rpmhpd RPMHPD_CX>; 1137 operating-points-v2 = <&qup_opp_table_100mhz>; 1138 dmas = <&gpi_dma0 0 5 QCOM_GPI_SPI>, 1139 <&gpi_dma0 1 5 QCOM_GPI_SPI>; 1140 dma-names = "tx", "rx"; 1141 #address-cells = <1>; 1142 #size-cells = <0>; 1143 status = "disabled"; 1144 }; 1145 1146 i2c6: i2c@998000 { 1147 compatible = "qcom,geni-i2c"; 1148 reg = <0 0x00998000 0 0x4000>; 1149 clock-names = "se"; 1150 clocks = <&gcc GCC_QUPV3_WRAP0_S6_CLK>; 1151 pinctrl-names = "default"; 1152 pinctrl-0 = <&qup_i2c6_default>; 1153 interrupts = <GIC_SPI 607 IRQ_TYPE_LEVEL_HIGH>; 1154 dmas = <&gpi_dma0 0 6 QCOM_GPI_I2C>, 1155 <&gpi_dma0 1 6 QCOM_GPI_I2C>; 1156 dma-names = "tx", "rx"; 1157 #address-cells = <1>; 1158 #size-cells = <0>; 1159 status = "disabled"; 1160 }; 1161 1162 spi6: spi@998000 { 1163 compatible = "qcom,geni-spi"; 1164 reg = <0 0x00998000 0 0x4000>; 1165 clock-names = "se"; 1166 clocks = <&gcc GCC_QUPV3_WRAP0_S6_CLK>; 1167 interrupts = <GIC_SPI 607 IRQ_TYPE_LEVEL_HIGH>; 1168 power-domains = <&rpmhpd RPMHPD_CX>; 1169 operating-points-v2 = <&qup_opp_table_100mhz>; 1170 dmas = <&gpi_dma0 0 6 QCOM_GPI_SPI>, 1171 <&gpi_dma0 1 6 QCOM_GPI_SPI>; 1172 dma-names = "tx", "rx"; 1173 #address-cells = <1>; 1174 #size-cells = <0>; 1175 status = "disabled"; 1176 }; 1177 1178 uart6: serial@998000 { 1179 compatible = "qcom,geni-uart"; 1180 reg = <0 0x00998000 0 0x4000>; 1181 clock-names = "se"; 1182 clocks = <&gcc GCC_QUPV3_WRAP0_S6_CLK>; 1183 pinctrl-names = "default"; 1184 pinctrl-0 = <&qup_uart6_default>; 1185 interrupts = <GIC_SPI 607 IRQ_TYPE_LEVEL_HIGH>; 1186 power-domains = <&rpmhpd RPMHPD_CX>; 1187 operating-points-v2 = <&qup_opp_table_100mhz>; 1188 status = "disabled"; 1189 }; 1190 1191 i2c7: i2c@99c000 { 1192 compatible = "qcom,geni-i2c"; 1193 reg = <0 0x0099c000 0 0x4000>; 1194 clock-names = "se"; 1195 clocks = <&gcc GCC_QUPV3_WRAP0_S7_CLK>; 1196 pinctrl-names = "default"; 1197 pinctrl-0 = <&qup_i2c7_default>; 1198 interrupts = <GIC_SPI 608 IRQ_TYPE_LEVEL_HIGH>; 1199 dmas = <&gpi_dma0 0 7 QCOM_GPI_I2C>, 1200 <&gpi_dma0 1 7 QCOM_GPI_I2C>; 1201 dma-names = "tx", "rx"; 1202 #address-cells = <1>; 1203 #size-cells = <0>; 1204 status = "disabled"; 1205 }; 1206 1207 spi7: spi@99c000 { 1208 compatible = "qcom,geni-spi"; 1209 reg = <0 0x0099c000 0 0x4000>; 1210 clock-names = "se"; 1211 clocks = <&gcc GCC_QUPV3_WRAP0_S7_CLK>; 1212 interrupts = <GIC_SPI 608 IRQ_TYPE_LEVEL_HIGH>; 1213 power-domains = <&rpmhpd RPMHPD_CX>; 1214 operating-points-v2 = <&qup_opp_table_100mhz>; 1215 dmas = <&gpi_dma0 0 7 QCOM_GPI_SPI>, 1216 <&gpi_dma0 1 7 QCOM_GPI_SPI>; 1217 dma-names = "tx", "rx"; 1218 #address-cells = <1>; 1219 #size-cells = <0>; 1220 status = "disabled"; 1221 }; 1222 }; 1223 1224 gpi_dma1: dma-controller@a00000 { 1225 compatible = "qcom,sm8350-gpi-dma", "qcom,sm6350-gpi-dma"; 1226 reg = <0 0x00a00000 0 0x60000>; 1227 interrupts = <GIC_SPI 279 IRQ_TYPE_LEVEL_HIGH>, 1228 <GIC_SPI 280 IRQ_TYPE_LEVEL_HIGH>, 1229 <GIC_SPI 281 IRQ_TYPE_LEVEL_HIGH>, 1230 <GIC_SPI 282 IRQ_TYPE_LEVEL_HIGH>, 1231 <GIC_SPI 283 IRQ_TYPE_LEVEL_HIGH>, 1232 <GIC_SPI 284 IRQ_TYPE_LEVEL_HIGH>, 1233 <GIC_SPI 293 IRQ_TYPE_LEVEL_HIGH>, 1234 <GIC_SPI 294 IRQ_TYPE_LEVEL_HIGH>, 1235 <GIC_SPI 295 IRQ_TYPE_LEVEL_HIGH>, 1236 <GIC_SPI 296 IRQ_TYPE_LEVEL_HIGH>, 1237 <GIC_SPI 297 IRQ_TYPE_LEVEL_HIGH>, 1238 <GIC_SPI 298 IRQ_TYPE_LEVEL_HIGH>; 1239 dma-channels = <12>; 1240 dma-channel-mask = <0xff>; 1241 iommus = <&apps_smmu 0x56 0x0>; 1242 #dma-cells = <3>; 1243 status = "disabled"; 1244 }; 1245 1246 qupv3_id_1: geniqup@ac0000 { 1247 compatible = "qcom,geni-se-qup"; 1248 reg = <0x0 0x00ac0000 0x0 0x6000>; 1249 clock-names = "m-ahb", "s-ahb"; 1250 clocks = <&gcc GCC_QUPV3_WRAP_1_M_AHB_CLK>, 1251 <&gcc GCC_QUPV3_WRAP_1_S_AHB_CLK>; 1252 iommus = <&apps_smmu 0x43 0>; 1253 #address-cells = <2>; 1254 #size-cells = <2>; 1255 ranges; 1256 status = "disabled"; 1257 1258 i2c8: i2c@a80000 { 1259 compatible = "qcom,geni-i2c"; 1260 reg = <0 0x00a80000 0 0x4000>; 1261 clock-names = "se"; 1262 clocks = <&gcc GCC_QUPV3_WRAP1_S0_CLK>; 1263 pinctrl-names = "default"; 1264 pinctrl-0 = <&qup_i2c8_default>; 1265 interrupts = <GIC_SPI 353 IRQ_TYPE_LEVEL_HIGH>; 1266 dmas = <&gpi_dma1 0 0 QCOM_GPI_I2C>, 1267 <&gpi_dma1 1 0 QCOM_GPI_I2C>; 1268 dma-names = "tx", "rx"; 1269 #address-cells = <1>; 1270 #size-cells = <0>; 1271 status = "disabled"; 1272 }; 1273 1274 spi8: spi@a80000 { 1275 compatible = "qcom,geni-spi"; 1276 reg = <0 0x00a80000 0 0x4000>; 1277 clock-names = "se"; 1278 clocks = <&gcc GCC_QUPV3_WRAP1_S0_CLK>; 1279 interrupts = <GIC_SPI 353 IRQ_TYPE_LEVEL_HIGH>; 1280 power-domains = <&rpmhpd RPMHPD_CX>; 1281 operating-points-v2 = <&qup_opp_table_120mhz>; 1282 dmas = <&gpi_dma1 0 0 QCOM_GPI_SPI>, 1283 <&gpi_dma1 1 0 QCOM_GPI_SPI>; 1284 dma-names = "tx", "rx"; 1285 #address-cells = <1>; 1286 #size-cells = <0>; 1287 status = "disabled"; 1288 }; 1289 1290 i2c9: i2c@a84000 { 1291 compatible = "qcom,geni-i2c"; 1292 reg = <0 0x00a84000 0 0x4000>; 1293 clock-names = "se"; 1294 clocks = <&gcc GCC_QUPV3_WRAP1_S1_CLK>; 1295 pinctrl-names = "default"; 1296 pinctrl-0 = <&qup_i2c9_default>; 1297 interrupts = <GIC_SPI 354 IRQ_TYPE_LEVEL_HIGH>; 1298 dmas = <&gpi_dma1 0 1 QCOM_GPI_I2C>, 1299 <&gpi_dma1 1 1 QCOM_GPI_I2C>; 1300 dma-names = "tx", "rx"; 1301 #address-cells = <1>; 1302 #size-cells = <0>; 1303 status = "disabled"; 1304 }; 1305 1306 spi9: spi@a84000 { 1307 compatible = "qcom,geni-spi"; 1308 reg = <0 0x00a84000 0 0x4000>; 1309 clock-names = "se"; 1310 clocks = <&gcc GCC_QUPV3_WRAP1_S1_CLK>; 1311 interrupts = <GIC_SPI 354 IRQ_TYPE_LEVEL_HIGH>; 1312 power-domains = <&rpmhpd RPMHPD_CX>; 1313 operating-points-v2 = <&qup_opp_table_100mhz>; 1314 dmas = <&gpi_dma1 0 1 QCOM_GPI_SPI>, 1315 <&gpi_dma1 1 1 QCOM_GPI_SPI>; 1316 dma-names = "tx", "rx"; 1317 #address-cells = <1>; 1318 #size-cells = <0>; 1319 status = "disabled"; 1320 }; 1321 1322 i2c10: i2c@a88000 { 1323 compatible = "qcom,geni-i2c"; 1324 reg = <0 0x00a88000 0 0x4000>; 1325 clock-names = "se"; 1326 clocks = <&gcc GCC_QUPV3_WRAP1_S2_CLK>; 1327 pinctrl-names = "default"; 1328 pinctrl-0 = <&qup_i2c10_default>; 1329 interrupts = <GIC_SPI 355 IRQ_TYPE_LEVEL_HIGH>; 1330 dmas = <&gpi_dma1 0 2 QCOM_GPI_I2C>, 1331 <&gpi_dma1 1 2 QCOM_GPI_I2C>; 1332 dma-names = "tx", "rx"; 1333 #address-cells = <1>; 1334 #size-cells = <0>; 1335 status = "disabled"; 1336 }; 1337 1338 spi10: spi@a88000 { 1339 compatible = "qcom,geni-spi"; 1340 reg = <0 0x00a88000 0 0x4000>; 1341 clock-names = "se"; 1342 clocks = <&gcc GCC_QUPV3_WRAP1_S2_CLK>; 1343 interrupts = <GIC_SPI 355 IRQ_TYPE_LEVEL_HIGH>; 1344 power-domains = <&rpmhpd RPMHPD_CX>; 1345 operating-points-v2 = <&qup_opp_table_100mhz>; 1346 dmas = <&gpi_dma1 0 2 QCOM_GPI_SPI>, 1347 <&gpi_dma1 1 2 QCOM_GPI_SPI>; 1348 dma-names = "tx", "rx"; 1349 #address-cells = <1>; 1350 #size-cells = <0>; 1351 status = "disabled"; 1352 }; 1353 1354 i2c11: i2c@a8c000 { 1355 compatible = "qcom,geni-i2c"; 1356 reg = <0 0x00a8c000 0 0x4000>; 1357 clock-names = "se"; 1358 clocks = <&gcc GCC_QUPV3_WRAP1_S3_CLK>; 1359 pinctrl-names = "default"; 1360 pinctrl-0 = <&qup_i2c11_default>; 1361 interrupts = <GIC_SPI 356 IRQ_TYPE_LEVEL_HIGH>; 1362 dmas = <&gpi_dma1 0 3 QCOM_GPI_I2C>, 1363 <&gpi_dma1 1 3 QCOM_GPI_I2C>; 1364 dma-names = "tx", "rx"; 1365 #address-cells = <1>; 1366 #size-cells = <0>; 1367 status = "disabled"; 1368 }; 1369 1370 spi11: spi@a8c000 { 1371 compatible = "qcom,geni-spi"; 1372 reg = <0 0x00a8c000 0 0x4000>; 1373 clock-names = "se"; 1374 clocks = <&gcc GCC_QUPV3_WRAP1_S3_CLK>; 1375 interrupts = <GIC_SPI 356 IRQ_TYPE_LEVEL_HIGH>; 1376 power-domains = <&rpmhpd RPMHPD_CX>; 1377 operating-points-v2 = <&qup_opp_table_100mhz>; 1378 dmas = <&gpi_dma1 0 3 QCOM_GPI_SPI>, 1379 <&gpi_dma1 1 3 QCOM_GPI_SPI>; 1380 dma-names = "tx", "rx"; 1381 #address-cells = <1>; 1382 #size-cells = <0>; 1383 status = "disabled"; 1384 }; 1385 1386 i2c12: i2c@a90000 { 1387 compatible = "qcom,geni-i2c"; 1388 reg = <0 0x00a90000 0 0x4000>; 1389 clock-names = "se"; 1390 clocks = <&gcc GCC_QUPV3_WRAP1_S4_CLK>; 1391 pinctrl-names = "default"; 1392 pinctrl-0 = <&qup_i2c12_default>; 1393 interrupts = <GIC_SPI 357 IRQ_TYPE_LEVEL_HIGH>; 1394 dmas = <&gpi_dma1 0 4 QCOM_GPI_I2C>, 1395 <&gpi_dma1 1 4 QCOM_GPI_I2C>; 1396 dma-names = "tx", "rx"; 1397 #address-cells = <1>; 1398 #size-cells = <0>; 1399 status = "disabled"; 1400 }; 1401 1402 spi12: spi@a90000 { 1403 compatible = "qcom,geni-spi"; 1404 reg = <0 0x00a90000 0 0x4000>; 1405 clock-names = "se"; 1406 clocks = <&gcc GCC_QUPV3_WRAP1_S4_CLK>; 1407 interrupts = <GIC_SPI 357 IRQ_TYPE_LEVEL_HIGH>; 1408 power-domains = <&rpmhpd RPMHPD_CX>; 1409 operating-points-v2 = <&qup_opp_table_100mhz>; 1410 dmas = <&gpi_dma1 0 4 QCOM_GPI_SPI>, 1411 <&gpi_dma1 1 4 QCOM_GPI_SPI>; 1412 dma-names = "tx", "rx"; 1413 #address-cells = <1>; 1414 #size-cells = <0>; 1415 status = "disabled"; 1416 }; 1417 1418 i2c13: i2c@a94000 { 1419 compatible = "qcom,geni-i2c"; 1420 reg = <0 0x00a94000 0 0x4000>; 1421 clock-names = "se"; 1422 clocks = <&gcc GCC_QUPV3_WRAP1_S5_CLK>; 1423 pinctrl-names = "default"; 1424 pinctrl-0 = <&qup_i2c13_default>; 1425 interrupts = <GIC_SPI 358 IRQ_TYPE_LEVEL_HIGH>; 1426 dmas = <&gpi_dma1 0 5 QCOM_GPI_I2C>, 1427 <&gpi_dma1 1 5 QCOM_GPI_I2C>; 1428 dma-names = "tx", "rx"; 1429 #address-cells = <1>; 1430 #size-cells = <0>; 1431 status = "disabled"; 1432 }; 1433 1434 spi13: spi@a94000 { 1435 compatible = "qcom,geni-spi"; 1436 reg = <0 0x00a94000 0 0x4000>; 1437 clock-names = "se"; 1438 clocks = <&gcc GCC_QUPV3_WRAP1_S5_CLK>; 1439 interrupts = <GIC_SPI 358 IRQ_TYPE_LEVEL_HIGH>; 1440 power-domains = <&rpmhpd RPMHPD_CX>; 1441 operating-points-v2 = <&qup_opp_table_100mhz>; 1442 dmas = <&gpi_dma1 0 5 QCOM_GPI_SPI>, 1443 <&gpi_dma1 1 5 QCOM_GPI_SPI>; 1444 dma-names = "tx", "rx"; 1445 #address-cells = <1>; 1446 #size-cells = <0>; 1447 status = "disabled"; 1448 }; 1449 }; 1450 1451 rng: rng@10d3000 { 1452 compatible = "qcom,prng-ee"; 1453 reg = <0 0x010d3000 0 0x1000>; 1454 clocks = <&rpmhcc RPMH_HWKM_CLK>; 1455 clock-names = "core"; 1456 }; 1457 1458 config_noc: interconnect@1500000 { 1459 compatible = "qcom,sm8350-config-noc"; 1460 reg = <0 0x01500000 0 0xa580>; 1461 #interconnect-cells = <2>; 1462 qcom,bcm-voters = <&apps_bcm_voter>; 1463 }; 1464 1465 mc_virt: interconnect@1580000 { 1466 compatible = "qcom,sm8350-mc-virt"; 1467 reg = <0 0x01580000 0 0x1000>; 1468 #interconnect-cells = <2>; 1469 qcom,bcm-voters = <&apps_bcm_voter>; 1470 }; 1471 1472 system_noc: interconnect@1680000 { 1473 compatible = "qcom,sm8350-system-noc"; 1474 reg = <0 0x01680000 0 0x1c200>; 1475 #interconnect-cells = <2>; 1476 qcom,bcm-voters = <&apps_bcm_voter>; 1477 }; 1478 1479 aggre1_noc: interconnect@16e0000 { 1480 compatible = "qcom,sm8350-aggre1-noc"; 1481 reg = <0 0x016e0000 0 0x1f180>; 1482 #interconnect-cells = <2>; 1483 qcom,bcm-voters = <&apps_bcm_voter>; 1484 }; 1485 1486 aggre2_noc: interconnect@1700000 { 1487 compatible = "qcom,sm8350-aggre2-noc"; 1488 reg = <0 0x01700000 0 0x33000>; 1489 #interconnect-cells = <2>; 1490 qcom,bcm-voters = <&apps_bcm_voter>; 1491 }; 1492 1493 mmss_noc: interconnect@1740000 { 1494 compatible = "qcom,sm8350-mmss-noc"; 1495 reg = <0 0x01740000 0 0x1f080>; 1496 #interconnect-cells = <2>; 1497 qcom,bcm-voters = <&apps_bcm_voter>; 1498 }; 1499 1500 pcie0: pci@1c00000 { 1501 compatible = "qcom,pcie-sm8350"; 1502 reg = <0 0x01c00000 0 0x3000>, 1503 <0 0x60000000 0 0xf1d>, 1504 <0 0x60000f20 0 0xa8>, 1505 <0 0x60001000 0 0x1000>, 1506 <0 0x60100000 0 0x100000>; 1507 reg-names = "parf", "dbi", "elbi", "atu", "config"; 1508 device_type = "pci"; 1509 linux,pci-domain = <0>; 1510 bus-range = <0x00 0xff>; 1511 num-lanes = <1>; 1512 1513 #address-cells = <3>; 1514 #size-cells = <2>; 1515 1516 ranges = <0x01000000 0x0 0x00000000 0x0 0x60200000 0x0 0x100000>, 1517 <0x02000000 0x0 0x60300000 0x0 0x60300000 0x0 0x3d00000>; 1518 1519 interrupts = <GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH>, 1520 <GIC_SPI 142 IRQ_TYPE_LEVEL_HIGH>, 1521 <GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH>, 1522 <GIC_SPI 144 IRQ_TYPE_LEVEL_HIGH>, 1523 <GIC_SPI 145 IRQ_TYPE_LEVEL_HIGH>, 1524 <GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>, 1525 <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>, 1526 <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>; 1527 interrupt-names = "msi0", "msi1", "msi2", "msi3", 1528 "msi4", "msi5", "msi6", "msi7"; 1529 #interrupt-cells = <1>; 1530 interrupt-map-mask = <0 0 0 0x7>; 1531 interrupt-map = <0 0 0 1 &intc 0 149 IRQ_TYPE_LEVEL_HIGH>, /* int_a */ 1532 <0 0 0 2 &intc 0 150 IRQ_TYPE_LEVEL_HIGH>, /* int_b */ 1533 <0 0 0 3 &intc 0 151 IRQ_TYPE_LEVEL_HIGH>, /* int_c */ 1534 <0 0 0 4 &intc 0 152 IRQ_TYPE_LEVEL_HIGH>; /* int_d */ 1535 1536 clocks = <&gcc GCC_PCIE_0_AUX_CLK>, 1537 <&gcc GCC_PCIE_0_CFG_AHB_CLK>, 1538 <&gcc GCC_PCIE_0_MSTR_AXI_CLK>, 1539 <&gcc GCC_PCIE_0_SLV_AXI_CLK>, 1540 <&gcc GCC_PCIE_0_SLV_Q2A_AXI_CLK>, 1541 <&gcc GCC_AGGRE_NOC_PCIE_TBU_CLK>, 1542 <&gcc GCC_DDRSS_PCIE_SF_TBU_CLK>, 1543 <&gcc GCC_AGGRE_NOC_PCIE_1_AXI_CLK>, 1544 <&gcc GCC_AGGRE_NOC_PCIE_0_AXI_CLK>; 1545 clock-names = "aux", 1546 "cfg", 1547 "bus_master", 1548 "bus_slave", 1549 "slave_q2a", 1550 "tbu", 1551 "ddrss_sf_tbu", 1552 "aggre1", 1553 "aggre0"; 1554 1555 iommu-map = <0x0 &apps_smmu 0x1c00 0x1>, 1556 <0x100 &apps_smmu 0x1c01 0x1>; 1557 1558 resets = <&gcc GCC_PCIE_0_BCR>; 1559 reset-names = "pci"; 1560 1561 power-domains = <&gcc PCIE_0_GDSC>; 1562 1563 phys = <&pcie0_phy>; 1564 phy-names = "pciephy"; 1565 1566 status = "disabled"; 1567 }; 1568 1569 pcie0_phy: phy@1c06000 { 1570 compatible = "qcom,sm8350-qmp-gen3x1-pcie-phy"; 1571 reg = <0 0x01c06000 0 0x2000>; 1572 clocks = <&gcc GCC_PCIE_0_AUX_CLK>, 1573 <&gcc GCC_PCIE_0_CFG_AHB_CLK>, 1574 <&gcc GCC_PCIE_0_CLKREF_EN>, 1575 <&gcc GCC_PCIE0_PHY_RCHNG_CLK>, 1576 <&gcc GCC_PCIE_0_PIPE_CLK>; 1577 clock-names = "aux", "cfg_ahb", "ref", "rchng", "pipe"; 1578 1579 resets = <&gcc GCC_PCIE_0_PHY_BCR>; 1580 reset-names = "phy"; 1581 1582 assigned-clocks = <&gcc GCC_PCIE0_PHY_RCHNG_CLK>; 1583 assigned-clock-rates = <100000000>; 1584 1585 #clock-cells = <0>; 1586 clock-output-names = "pcie_0_pipe_clk"; 1587 1588 #phy-cells = <0>; 1589 1590 status = "disabled"; 1591 }; 1592 1593 pcie1: pci@1c08000 { 1594 compatible = "qcom,pcie-sm8350"; 1595 reg = <0 0x01c08000 0 0x3000>, 1596 <0 0x40000000 0 0xf1d>, 1597 <0 0x40000f20 0 0xa8>, 1598 <0 0x40001000 0 0x1000>, 1599 <0 0x40100000 0 0x100000>; 1600 reg-names = "parf", "dbi", "elbi", "atu", "config"; 1601 device_type = "pci"; 1602 linux,pci-domain = <1>; 1603 bus-range = <0x00 0xff>; 1604 num-lanes = <2>; 1605 1606 #address-cells = <3>; 1607 #size-cells = <2>; 1608 1609 ranges = <0x01000000 0x0 0x00000000 0x0 0x40200000 0x0 0x100000>, 1610 <0x02000000 0x0 0x40300000 0x0 0x40300000 0x0 0x1fd00000>; 1611 1612 interrupts = <GIC_SPI 307 IRQ_TYPE_LEVEL_HIGH>; 1613 interrupt-names = "msi"; 1614 #interrupt-cells = <1>; 1615 interrupt-map-mask = <0 0 0 0x7>; 1616 interrupt-map = <0 0 0 1 &intc 0 434 IRQ_TYPE_LEVEL_HIGH>, /* int_a */ 1617 <0 0 0 2 &intc 0 435 IRQ_TYPE_LEVEL_HIGH>, /* int_b */ 1618 <0 0 0 3 &intc 0 438 IRQ_TYPE_LEVEL_HIGH>, /* int_c */ 1619 <0 0 0 4 &intc 0 439 IRQ_TYPE_LEVEL_HIGH>; /* int_d */ 1620 1621 clocks = <&gcc GCC_PCIE_1_AUX_CLK>, 1622 <&gcc GCC_PCIE_1_CFG_AHB_CLK>, 1623 <&gcc GCC_PCIE_1_MSTR_AXI_CLK>, 1624 <&gcc GCC_PCIE_1_SLV_AXI_CLK>, 1625 <&gcc GCC_PCIE_1_SLV_Q2A_AXI_CLK>, 1626 <&gcc GCC_AGGRE_NOC_PCIE_TBU_CLK>, 1627 <&gcc GCC_DDRSS_PCIE_SF_TBU_CLK>, 1628 <&gcc GCC_AGGRE_NOC_PCIE_1_AXI_CLK>; 1629 clock-names = "aux", 1630 "cfg", 1631 "bus_master", 1632 "bus_slave", 1633 "slave_q2a", 1634 "tbu", 1635 "ddrss_sf_tbu", 1636 "aggre1"; 1637 1638 iommu-map = <0x0 &apps_smmu 0x1c80 0x1>, 1639 <0x100 &apps_smmu 0x1c81 0x1>; 1640 1641 resets = <&gcc GCC_PCIE_1_BCR>; 1642 reset-names = "pci"; 1643 1644 power-domains = <&gcc PCIE_1_GDSC>; 1645 1646 phys = <&pcie1_phy>; 1647 phy-names = "pciephy"; 1648 1649 status = "disabled"; 1650 }; 1651 1652 pcie1_phy: phy@1c0e000 { 1653 compatible = "qcom,sm8350-qmp-gen3x2-pcie-phy"; 1654 reg = <0 0x01c0e000 0 0x2000>; 1655 clocks = <&gcc GCC_PCIE_1_AUX_CLK>, 1656 <&gcc GCC_PCIE_1_CFG_AHB_CLK>, 1657 <&gcc GCC_PCIE_1_CLKREF_EN>, 1658 <&gcc GCC_PCIE1_PHY_RCHNG_CLK>, 1659 <&gcc GCC_PCIE_1_PIPE_CLK>; 1660 clock-names = "aux", "cfg_ahb", "ref", "rchng", "pipe"; 1661 1662 resets = <&gcc GCC_PCIE_1_PHY_BCR>; 1663 reset-names = "phy"; 1664 1665 assigned-clocks = <&gcc GCC_PCIE1_PHY_RCHNG_CLK>; 1666 assigned-clock-rates = <100000000>; 1667 1668 #clock-cells = <0>; 1669 clock-output-names = "pcie_1_pipe_clk"; 1670 1671 #phy-cells = <0>; 1672 1673 status = "disabled"; 1674 }; 1675 1676 ufs_mem_hc: ufshc@1d84000 { 1677 compatible = "qcom,sm8350-ufshc", "qcom,ufshc", 1678 "jedec,ufs-2.0"; 1679 reg = <0 0x01d84000 0 0x3000>; 1680 interrupts = <GIC_SPI 265 IRQ_TYPE_LEVEL_HIGH>; 1681 phys = <&ufs_mem_phy_lanes>; 1682 phy-names = "ufsphy"; 1683 lanes-per-direction = <2>; 1684 #reset-cells = <1>; 1685 resets = <&gcc GCC_UFS_PHY_BCR>; 1686 reset-names = "rst"; 1687 1688 power-domains = <&gcc UFS_PHY_GDSC>; 1689 1690 iommus = <&apps_smmu 0xe0 0x0>; 1691 dma-coherent; 1692 1693 clock-names = 1694 "core_clk", 1695 "bus_aggr_clk", 1696 "iface_clk", 1697 "core_clk_unipro", 1698 "ref_clk", 1699 "tx_lane0_sync_clk", 1700 "rx_lane0_sync_clk", 1701 "rx_lane1_sync_clk"; 1702 clocks = 1703 <&gcc GCC_UFS_PHY_AXI_CLK>, 1704 <&gcc GCC_AGGRE_UFS_PHY_AXI_CLK>, 1705 <&gcc GCC_UFS_PHY_AHB_CLK>, 1706 <&gcc GCC_UFS_PHY_UNIPRO_CORE_CLK>, 1707 <&rpmhcc RPMH_CXO_CLK>, 1708 <&gcc GCC_UFS_PHY_TX_SYMBOL_0_CLK>, 1709 <&gcc GCC_UFS_PHY_RX_SYMBOL_0_CLK>, 1710 <&gcc GCC_UFS_PHY_RX_SYMBOL_1_CLK>; 1711 freq-table-hz = 1712 <75000000 300000000>, 1713 <0 0>, 1714 <0 0>, 1715 <75000000 300000000>, 1716 <0 0>, 1717 <0 0>, 1718 <0 0>, 1719 <0 0>; 1720 status = "disabled"; 1721 }; 1722 1723 ufs_mem_phy: phy@1d87000 { 1724 compatible = "qcom,sm8350-qmp-ufs-phy"; 1725 reg = <0 0x01d87000 0 0x1c4>; 1726 #address-cells = <2>; 1727 #size-cells = <2>; 1728 ranges; 1729 clock-names = "ref", 1730 "ref_aux"; 1731 clocks = <&rpmhcc RPMH_CXO_CLK>, 1732 <&gcc GCC_UFS_PHY_PHY_AUX_CLK>; 1733 1734 power-domains = <&gcc UFS_PHY_GDSC>; 1735 1736 resets = <&ufs_mem_hc 0>; 1737 reset-names = "ufsphy"; 1738 status = "disabled"; 1739 1740 ufs_mem_phy_lanes: phy@1d87400 { 1741 reg = <0 0x01d87400 0 0x188>, 1742 <0 0x01d87600 0 0x200>, 1743 <0 0x01d87c00 0 0x200>, 1744 <0 0x01d87800 0 0x188>, 1745 <0 0x01d87a00 0 0x200>; 1746 #clock-cells = <1>; 1747 #phy-cells = <0>; 1748 }; 1749 }; 1750 1751 cryptobam: dma-controller@1dc4000 { 1752 compatible = "qcom,bam-v1.7.4", "qcom,bam-v1.7.0"; 1753 reg = <0 0x01dc4000 0 0x24000>; 1754 interrupts = <GIC_SPI 272 IRQ_TYPE_LEVEL_HIGH>; 1755 #dma-cells = <1>; 1756 qcom,ee = <0>; 1757 qcom,controlled-remotely; 1758 iommus = <&apps_smmu 0x594 0x0011>, 1759 <&apps_smmu 0x596 0x0011>; 1760 /* FIXME: Probing BAM DMA causes some abort and system hang */ 1761 status = "fail"; 1762 }; 1763 1764 crypto: crypto@1dfa000 { 1765 compatible = "qcom,sm8350-qce", "qcom,sm8150-qce", "qcom,qce"; 1766 reg = <0 0x01dfa000 0 0x6000>; 1767 dmas = <&cryptobam 4>, <&cryptobam 5>; 1768 dma-names = "rx", "tx"; 1769 iommus = <&apps_smmu 0x594 0x0011>, 1770 <&apps_smmu 0x596 0x0011>; 1771 interconnects = <&aggre2_noc MASTER_CRYPTO 0 &mc_virt SLAVE_EBI1 0>; 1772 interconnect-names = "memory"; 1773 /* FIXME: dependency BAM DMA is disabled */ 1774 status = "disabled"; 1775 }; 1776 1777 ipa: ipa@1e40000 { 1778 compatible = "qcom,sm8350-ipa"; 1779 1780 iommus = <&apps_smmu 0x5c0 0x0>, 1781 <&apps_smmu 0x5c2 0x0>; 1782 reg = <0 0x01e40000 0 0x8000>, 1783 <0 0x01e50000 0 0x4b20>, 1784 <0 0x01e04000 0 0x23000>; 1785 reg-names = "ipa-reg", 1786 "ipa-shared", 1787 "gsi"; 1788 1789 interrupts-extended = <&intc GIC_SPI 655 IRQ_TYPE_EDGE_RISING>, 1790 <&intc GIC_SPI 432 IRQ_TYPE_LEVEL_HIGH>, 1791 <&ipa_smp2p_in 0 IRQ_TYPE_EDGE_RISING>, 1792 <&ipa_smp2p_in 1 IRQ_TYPE_EDGE_RISING>; 1793 interrupt-names = "ipa", 1794 "gsi", 1795 "ipa-clock-query", 1796 "ipa-setup-ready"; 1797 1798 clocks = <&rpmhcc RPMH_IPA_CLK>; 1799 clock-names = "core"; 1800 1801 interconnects = <&aggre2_noc MASTER_IPA 0 &mc_virt SLAVE_EBI1 0>, 1802 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_IPA_CFG 0>; 1803 interconnect-names = "memory", 1804 "config"; 1805 1806 qcom,qmp = <&aoss_qmp>; 1807 1808 qcom,smem-states = <&ipa_smp2p_out 0>, 1809 <&ipa_smp2p_out 1>; 1810 qcom,smem-state-names = "ipa-clock-enabled-valid", 1811 "ipa-clock-enabled"; 1812 1813 status = "disabled"; 1814 }; 1815 1816 tcsr_mutex: hwlock@1f40000 { 1817 compatible = "qcom,tcsr-mutex"; 1818 reg = <0x0 0x01f40000 0x0 0x40000>; 1819 #hwlock-cells = <1>; 1820 }; 1821 1822 adsp: remoteproc@3000000 { 1823 compatible = "qcom,sm8350-adsp-pas"; 1824 reg = <0x0 0x03000000 0x0 0x10000>; 1825 1826 interrupts-extended = <&pdc 6 IRQ_TYPE_EDGE_RISING>, 1827 <&smp2p_adsp_in 0 IRQ_TYPE_EDGE_RISING>, 1828 <&smp2p_adsp_in 1 IRQ_TYPE_EDGE_RISING>, 1829 <&smp2p_adsp_in 2 IRQ_TYPE_EDGE_RISING>, 1830 <&smp2p_adsp_in 3 IRQ_TYPE_EDGE_RISING>; 1831 interrupt-names = "wdog", "fatal", "ready", 1832 "handover", "stop-ack"; 1833 1834 clocks = <&rpmhcc RPMH_CXO_CLK>; 1835 clock-names = "xo"; 1836 1837 power-domains = <&rpmhpd RPMHPD_LCX>, 1838 <&rpmhpd RPMHPD_LMX>; 1839 power-domain-names = "lcx", "lmx"; 1840 1841 memory-region = <&pil_adsp_mem>; 1842 1843 qcom,qmp = <&aoss_qmp>; 1844 1845 qcom,smem-states = <&smp2p_adsp_out 0>; 1846 qcom,smem-state-names = "stop"; 1847 1848 status = "disabled"; 1849 1850 glink-edge { 1851 interrupts-extended = <&ipcc IPCC_CLIENT_LPASS 1852 IPCC_MPROC_SIGNAL_GLINK_QMP 1853 IRQ_TYPE_EDGE_RISING>; 1854 mboxes = <&ipcc IPCC_CLIENT_LPASS 1855 IPCC_MPROC_SIGNAL_GLINK_QMP>; 1856 1857 label = "lpass"; 1858 qcom,remote-pid = <2>; 1859 1860 apr { 1861 compatible = "qcom,apr-v2"; 1862 qcom,glink-channels = "apr_audio_svc"; 1863 qcom,domain = <APR_DOMAIN_ADSP>; 1864 #address-cells = <1>; 1865 #size-cells = <0>; 1866 1867 service@3 { 1868 reg = <APR_SVC_ADSP_CORE>; 1869 compatible = "qcom,q6core"; 1870 qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd"; 1871 }; 1872 1873 q6afe: service@4 { 1874 compatible = "qcom,q6afe"; 1875 reg = <APR_SVC_AFE>; 1876 qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd"; 1877 1878 q6afedai: dais { 1879 compatible = "qcom,q6afe-dais"; 1880 #address-cells = <1>; 1881 #size-cells = <0>; 1882 #sound-dai-cells = <1>; 1883 }; 1884 1885 q6afecc: clock-controller { 1886 compatible = "qcom,q6afe-clocks"; 1887 #clock-cells = <2>; 1888 }; 1889 }; 1890 1891 q6asm: service@7 { 1892 compatible = "qcom,q6asm"; 1893 reg = <APR_SVC_ASM>; 1894 qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd"; 1895 1896 q6asmdai: dais { 1897 compatible = "qcom,q6asm-dais"; 1898 #address-cells = <1>; 1899 #size-cells = <0>; 1900 #sound-dai-cells = <1>; 1901 iommus = <&apps_smmu 0x1801 0x0>; 1902 1903 dai@0 { 1904 reg = <0>; 1905 }; 1906 1907 dai@1 { 1908 reg = <1>; 1909 }; 1910 1911 dai@2 { 1912 reg = <2>; 1913 }; 1914 }; 1915 }; 1916 1917 q6adm: service@8 { 1918 compatible = "qcom,q6adm"; 1919 reg = <APR_SVC_ADM>; 1920 qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd"; 1921 1922 q6routing: routing { 1923 compatible = "qcom,q6adm-routing"; 1924 #sound-dai-cells = <0>; 1925 }; 1926 }; 1927 }; 1928 1929 fastrpc { 1930 compatible = "qcom,fastrpc"; 1931 qcom,glink-channels = "fastrpcglink-apps-dsp"; 1932 label = "adsp"; 1933 qcom,non-secure-domain; 1934 #address-cells = <1>; 1935 #size-cells = <0>; 1936 1937 compute-cb@3 { 1938 compatible = "qcom,fastrpc-compute-cb"; 1939 reg = <3>; 1940 iommus = <&apps_smmu 0x1803 0x0>; 1941 }; 1942 1943 compute-cb@4 { 1944 compatible = "qcom,fastrpc-compute-cb"; 1945 reg = <4>; 1946 iommus = <&apps_smmu 0x1804 0x0>; 1947 }; 1948 1949 compute-cb@5 { 1950 compatible = "qcom,fastrpc-compute-cb"; 1951 reg = <5>; 1952 iommus = <&apps_smmu 0x1805 0x0>; 1953 }; 1954 }; 1955 }; 1956 }; 1957 1958 lpass_tlmm: pinctrl@33c0000 { 1959 compatible = "qcom,sm8350-lpass-lpi-pinctrl"; 1960 reg = <0 0x033c0000 0 0x20000>, 1961 <0 0x03550000 0 0x10000>; 1962 1963 clocks = <&q6afecc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>, 1964 <&q6afecc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>; 1965 clock-names = "core", "audio"; 1966 1967 gpio-controller; 1968 #gpio-cells = <2>; 1969 gpio-ranges = <&lpass_tlmm 0 0 15>; 1970 }; 1971 1972 gpu: gpu@3d00000 { 1973 compatible = "qcom,adreno-660.1", "qcom,adreno"; 1974 1975 reg = <0 0x03d00000 0 0x40000>, 1976 <0 0x03d9e000 0 0x1000>, 1977 <0 0x03d61000 0 0x800>; 1978 reg-names = "kgsl_3d0_reg_memory", 1979 "cx_mem", 1980 "cx_dbgc"; 1981 1982 interrupts = <GIC_SPI 300 IRQ_TYPE_LEVEL_HIGH>; 1983 1984 iommus = <&adreno_smmu 0 0x400>, <&adreno_smmu 1 0x400>; 1985 1986 operating-points-v2 = <&gpu_opp_table>; 1987 1988 qcom,gmu = <&gmu>; 1989 1990 status = "disabled"; 1991 1992 zap-shader { 1993 memory-region = <&pil_gpu_mem>; 1994 }; 1995 1996 /* note: downstream checks gpu binning for 670 Mhz */ 1997 gpu_opp_table: opp-table { 1998 compatible = "operating-points-v2"; 1999 2000 opp-840000000 { 2001 opp-hz = /bits/ 64 <840000000>; 2002 opp-level = <RPMH_REGULATOR_LEVEL_TURBO_L1>; 2003 }; 2004 2005 opp-778000000 { 2006 opp-hz = /bits/ 64 <778000000>; 2007 opp-level = <RPMH_REGULATOR_LEVEL_TURBO>; 2008 }; 2009 2010 opp-738000000 { 2011 opp-hz = /bits/ 64 <738000000>; 2012 opp-level = <RPMH_REGULATOR_LEVEL_NOM_L1>; 2013 }; 2014 2015 opp-676000000 { 2016 opp-hz = /bits/ 64 <676000000>; 2017 opp-level = <RPMH_REGULATOR_LEVEL_NOM>; 2018 }; 2019 2020 opp-608000000 { 2021 opp-hz = /bits/ 64 <608000000>; 2022 opp-level = <RPMH_REGULATOR_LEVEL_SVS_L2>; 2023 }; 2024 2025 opp-540000000 { 2026 opp-hz = /bits/ 64 <540000000>; 2027 opp-level = <RPMH_REGULATOR_LEVEL_SVS_L1>; 2028 }; 2029 2030 opp-491000000 { 2031 opp-hz = /bits/ 64 <491000000>; 2032 opp-level = <RPMH_REGULATOR_LEVEL_SVS_L0>; 2033 }; 2034 2035 opp-443000000 { 2036 opp-hz = /bits/ 64 <443000000>; 2037 opp-level = <RPMH_REGULATOR_LEVEL_SVS>; 2038 }; 2039 2040 opp-379000000 { 2041 opp-hz = /bits/ 64 <379000000>; 2042 opp-level = <80 /* RPMH_REGULATOR_LEVEL_LOW_SVS_L1 */>; 2043 }; 2044 2045 opp-315000000 { 2046 opp-hz = /bits/ 64 <315000000>; 2047 opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS>; 2048 }; 2049 }; 2050 }; 2051 2052 gmu: gmu@3d6a000 { 2053 compatible = "qcom,adreno-gmu-660.1", "qcom,adreno-gmu"; 2054 2055 reg = <0 0x03d6a000 0 0x34000>, 2056 <0 0x03de0000 0 0x10000>, 2057 <0 0x0b290000 0 0x10000>; 2058 reg-names = "gmu", "rscc", "gmu_pdc"; 2059 2060 interrupts = <GIC_SPI 304 IRQ_TYPE_LEVEL_HIGH>, 2061 <GIC_SPI 305 IRQ_TYPE_LEVEL_HIGH>; 2062 interrupt-names = "hfi", "gmu"; 2063 2064 clocks = <&gpucc GPU_CC_CX_GMU_CLK>, 2065 <&gpucc GPU_CC_CXO_CLK>, 2066 <&gcc GCC_DDRSS_GPU_AXI_CLK>, 2067 <&gcc GCC_GPU_MEMNOC_GFX_CLK>, 2068 <&gpucc GPU_CC_AHB_CLK>, 2069 <&gpucc GPU_CC_HUB_CX_INT_CLK>, 2070 <&gpucc GPU_CC_HLOS1_VOTE_GPU_SMMU_CLK>; 2071 clock-names = "gmu", 2072 "cxo", 2073 "axi", 2074 "memnoc", 2075 "ahb", 2076 "hub", 2077 "smmu_vote"; 2078 2079 power-domains = <&gpucc GPU_CX_GDSC>, 2080 <&gpucc GPU_GX_GDSC>; 2081 power-domain-names = "cx", 2082 "gx"; 2083 2084 iommus = <&adreno_smmu 5 0x400>; 2085 2086 operating-points-v2 = <&gmu_opp_table>; 2087 2088 gmu_opp_table: opp-table { 2089 compatible = "operating-points-v2"; 2090 2091 opp-200000000 { 2092 opp-hz = /bits/ 64 <200000000>; 2093 opp-level = <RPMH_REGULATOR_LEVEL_MIN_SVS>; 2094 }; 2095 }; 2096 }; 2097 2098 gpucc: clock-controller@3d90000 { 2099 compatible = "qcom,sm8350-gpucc"; 2100 reg = <0 0x03d90000 0 0x9000>; 2101 clocks = <&rpmhcc RPMH_CXO_CLK>, 2102 <&gcc GCC_GPU_GPLL0_CLK_SRC>, 2103 <&gcc GCC_GPU_GPLL0_DIV_CLK_SRC>; 2104 clock-names = "bi_tcxo", 2105 "gcc_gpu_gpll0_clk_src", 2106 "gcc_gpu_gpll0_div_clk_src"; 2107 #clock-cells = <1>; 2108 #reset-cells = <1>; 2109 #power-domain-cells = <1>; 2110 }; 2111 2112 adreno_smmu: iommu@3da0000 { 2113 compatible = "qcom,sm8350-smmu-500", "qcom,adreno-smmu", 2114 "qcom,smmu-500", "arm,mmu-500"; 2115 reg = <0 0x03da0000 0 0x20000>; 2116 #iommu-cells = <2>; 2117 #global-interrupts = <2>; 2118 interrupts = <GIC_SPI 672 IRQ_TYPE_LEVEL_HIGH>, 2119 <GIC_SPI 673 IRQ_TYPE_LEVEL_HIGH>, 2120 <GIC_SPI 678 IRQ_TYPE_LEVEL_HIGH>, 2121 <GIC_SPI 679 IRQ_TYPE_LEVEL_HIGH>, 2122 <GIC_SPI 680 IRQ_TYPE_LEVEL_HIGH>, 2123 <GIC_SPI 681 IRQ_TYPE_LEVEL_HIGH>, 2124 <GIC_SPI 682 IRQ_TYPE_LEVEL_HIGH>, 2125 <GIC_SPI 683 IRQ_TYPE_LEVEL_HIGH>, 2126 <GIC_SPI 684 IRQ_TYPE_LEVEL_HIGH>, 2127 <GIC_SPI 685 IRQ_TYPE_LEVEL_HIGH>, 2128 <GIC_SPI 686 IRQ_TYPE_LEVEL_HIGH>, 2129 <GIC_SPI 687 IRQ_TYPE_LEVEL_HIGH>; 2130 2131 clocks = <&gcc GCC_GPU_MEMNOC_GFX_CLK>, 2132 <&gcc GCC_GPU_SNOC_DVM_GFX_CLK>, 2133 <&gpucc GPU_CC_AHB_CLK>, 2134 <&gpucc GPU_CC_HLOS1_VOTE_GPU_SMMU_CLK>, 2135 <&gpucc GPU_CC_CX_GMU_CLK>, 2136 <&gpucc GPU_CC_HUB_CX_INT_CLK>, 2137 <&gpucc GPU_CC_HUB_AON_CLK>; 2138 clock-names = "bus", 2139 "iface", 2140 "ahb", 2141 "hlos1_vote_gpu_smmu", 2142 "cx_gmu", 2143 "hub_cx_int", 2144 "hub_aon"; 2145 2146 power-domains = <&gpucc GPU_CX_GDSC>; 2147 dma-coherent; 2148 }; 2149 2150 lpass_ag_noc: interconnect@3c40000 { 2151 compatible = "qcom,sm8350-lpass-ag-noc"; 2152 reg = <0 0x03c40000 0 0xf080>; 2153 #interconnect-cells = <2>; 2154 qcom,bcm-voters = <&apps_bcm_voter>; 2155 }; 2156 2157 mpss: remoteproc@4080000 { 2158 compatible = "qcom,sm8350-mpss-pas"; 2159 reg = <0x0 0x04080000 0x0 0x10000>; 2160 2161 interrupts-extended = <&intc GIC_SPI 264 IRQ_TYPE_EDGE_RISING>, 2162 <&smp2p_modem_in 0 IRQ_TYPE_EDGE_RISING>, 2163 <&smp2p_modem_in 1 IRQ_TYPE_EDGE_RISING>, 2164 <&smp2p_modem_in 2 IRQ_TYPE_EDGE_RISING>, 2165 <&smp2p_modem_in 3 IRQ_TYPE_EDGE_RISING>, 2166 <&smp2p_modem_in 7 IRQ_TYPE_EDGE_RISING>; 2167 interrupt-names = "wdog", "fatal", "ready", "handover", 2168 "stop-ack", "shutdown-ack"; 2169 2170 clocks = <&rpmhcc RPMH_CXO_CLK>; 2171 clock-names = "xo"; 2172 2173 power-domains = <&rpmhpd RPMHPD_CX>, 2174 <&rpmhpd RPMHPD_MSS>; 2175 power-domain-names = "cx", "mss"; 2176 2177 interconnects = <&mc_virt MASTER_LLCC 0 &mc_virt SLAVE_EBI1 0>; 2178 2179 memory-region = <&pil_modem_mem>; 2180 2181 qcom,qmp = <&aoss_qmp>; 2182 2183 qcom,smem-states = <&smp2p_modem_out 0>; 2184 qcom,smem-state-names = "stop"; 2185 2186 status = "disabled"; 2187 2188 glink-edge { 2189 interrupts-extended = <&ipcc IPCC_CLIENT_MPSS 2190 IPCC_MPROC_SIGNAL_GLINK_QMP 2191 IRQ_TYPE_EDGE_RISING>; 2192 mboxes = <&ipcc IPCC_CLIENT_MPSS 2193 IPCC_MPROC_SIGNAL_GLINK_QMP>; 2194 label = "modem"; 2195 qcom,remote-pid = <1>; 2196 }; 2197 }; 2198 2199 slpi: remoteproc@5c00000 { 2200 compatible = "qcom,sm8350-slpi-pas"; 2201 reg = <0 0x05c00000 0 0x4000>; 2202 2203 interrupts-extended = <&pdc 9 IRQ_TYPE_EDGE_RISING>, 2204 <&smp2p_slpi_in 0 IRQ_TYPE_EDGE_RISING>, 2205 <&smp2p_slpi_in 1 IRQ_TYPE_EDGE_RISING>, 2206 <&smp2p_slpi_in 2 IRQ_TYPE_EDGE_RISING>, 2207 <&smp2p_slpi_in 3 IRQ_TYPE_EDGE_RISING>; 2208 interrupt-names = "wdog", "fatal", "ready", 2209 "handover", "stop-ack"; 2210 2211 clocks = <&rpmhcc RPMH_CXO_CLK>; 2212 clock-names = "xo"; 2213 2214 power-domains = <&rpmhpd RPMHPD_LCX>, 2215 <&rpmhpd RPMHPD_LMX>; 2216 power-domain-names = "lcx", "lmx"; 2217 2218 memory-region = <&pil_slpi_mem>; 2219 2220 qcom,qmp = <&aoss_qmp>; 2221 2222 qcom,smem-states = <&smp2p_slpi_out 0>; 2223 qcom,smem-state-names = "stop"; 2224 2225 status = "disabled"; 2226 2227 glink-edge { 2228 interrupts-extended = <&ipcc IPCC_CLIENT_SLPI 2229 IPCC_MPROC_SIGNAL_GLINK_QMP 2230 IRQ_TYPE_EDGE_RISING>; 2231 mboxes = <&ipcc IPCC_CLIENT_SLPI 2232 IPCC_MPROC_SIGNAL_GLINK_QMP>; 2233 2234 label = "slpi"; 2235 qcom,remote-pid = <3>; 2236 2237 fastrpc { 2238 compatible = "qcom,fastrpc"; 2239 qcom,glink-channels = "fastrpcglink-apps-dsp"; 2240 label = "sdsp"; 2241 qcom,non-secure-domain; 2242 #address-cells = <1>; 2243 #size-cells = <0>; 2244 2245 compute-cb@1 { 2246 compatible = "qcom,fastrpc-compute-cb"; 2247 reg = <1>; 2248 iommus = <&apps_smmu 0x0541 0x0>; 2249 }; 2250 2251 compute-cb@2 { 2252 compatible = "qcom,fastrpc-compute-cb"; 2253 reg = <2>; 2254 iommus = <&apps_smmu 0x0542 0x0>; 2255 }; 2256 2257 compute-cb@3 { 2258 compatible = "qcom,fastrpc-compute-cb"; 2259 reg = <3>; 2260 iommus = <&apps_smmu 0x0543 0x0>; 2261 /* note: shared-cb = <4> in downstream */ 2262 }; 2263 }; 2264 }; 2265 }; 2266 2267 sdhc_2: mmc@8804000 { 2268 compatible = "qcom,sm8350-sdhci", "qcom,sdhci-msm-v5"; 2269 reg = <0 0x08804000 0 0x1000>; 2270 2271 interrupts = <GIC_SPI 207 IRQ_TYPE_LEVEL_HIGH>, 2272 <GIC_SPI 223 IRQ_TYPE_LEVEL_HIGH>; 2273 interrupt-names = "hc_irq", "pwr_irq"; 2274 2275 clocks = <&gcc GCC_SDCC2_AHB_CLK>, 2276 <&gcc GCC_SDCC2_APPS_CLK>, 2277 <&rpmhcc RPMH_CXO_CLK>; 2278 clock-names = "iface", "core", "xo"; 2279 resets = <&gcc GCC_SDCC2_BCR>; 2280 interconnects = <&aggre2_noc MASTER_SDCC_2 0 &mc_virt SLAVE_EBI1 0>, 2281 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_SDCC_2 0>; 2282 interconnect-names = "sdhc-ddr","cpu-sdhc"; 2283 iommus = <&apps_smmu 0x4a0 0x0>; 2284 power-domains = <&rpmhpd RPMHPD_CX>; 2285 operating-points-v2 = <&sdhc2_opp_table>; 2286 bus-width = <4>; 2287 dma-coherent; 2288 2289 status = "disabled"; 2290 2291 sdhc2_opp_table: opp-table { 2292 compatible = "operating-points-v2"; 2293 2294 opp-100000000 { 2295 opp-hz = /bits/ 64 <100000000>; 2296 required-opps = <&rpmhpd_opp_low_svs>; 2297 }; 2298 2299 opp-202000000 { 2300 opp-hz = /bits/ 64 <202000000>; 2301 required-opps = <&rpmhpd_opp_svs_l1>; 2302 }; 2303 }; 2304 }; 2305 2306 usb_1_hsphy: phy@88e3000 { 2307 compatible = "qcom,sm8350-usb-hs-phy", 2308 "qcom,usb-snps-hs-7nm-phy"; 2309 reg = <0 0x088e3000 0 0x400>; 2310 status = "disabled"; 2311 #phy-cells = <0>; 2312 2313 clocks = <&rpmhcc RPMH_CXO_CLK>; 2314 clock-names = "ref"; 2315 2316 resets = <&gcc GCC_QUSB2PHY_PRIM_BCR>; 2317 }; 2318 2319 usb_2_hsphy: phy@88e4000 { 2320 compatible = "qcom,sm8250-usb-hs-phy", 2321 "qcom,usb-snps-hs-7nm-phy"; 2322 reg = <0 0x088e4000 0 0x400>; 2323 status = "disabled"; 2324 #phy-cells = <0>; 2325 2326 clocks = <&rpmhcc RPMH_CXO_CLK>; 2327 clock-names = "ref"; 2328 2329 resets = <&gcc GCC_QUSB2PHY_SEC_BCR>; 2330 }; 2331 2332 usb_1_qmpphy: phy@88e8000 { 2333 compatible = "qcom,sm8350-qmp-usb3-dp-phy"; 2334 reg = <0 0x088e8000 0 0x3000>; 2335 2336 clocks = <&gcc GCC_USB3_PRIM_PHY_AUX_CLK>, 2337 <&rpmhcc RPMH_CXO_CLK>, 2338 <&gcc GCC_USB3_PRIM_PHY_COM_AUX_CLK>, 2339 <&gcc GCC_USB3_PRIM_PHY_PIPE_CLK>; 2340 clock-names = "aux", "ref", "com_aux", "usb3_pipe"; 2341 2342 resets = <&gcc GCC_USB3_DP_PHY_PRIM_BCR>, 2343 <&gcc GCC_USB3_PHY_PRIM_BCR>; 2344 reset-names = "phy", "common"; 2345 2346 #clock-cells = <1>; 2347 #phy-cells = <1>; 2348 2349 status = "disabled"; 2350 2351 ports { 2352 #address-cells = <1>; 2353 #size-cells = <0>; 2354 2355 port@0 { 2356 reg = <0>; 2357 2358 usb_1_qmpphy_out: endpoint { 2359 }; 2360 }; 2361 2362 port@1 { 2363 reg = <1>; 2364 2365 usb_1_qmpphy_usb_ss_in: endpoint { 2366 }; 2367 }; 2368 2369 port@2 { 2370 reg = <2>; 2371 2372 usb_1_qmpphy_dp_in: endpoint { 2373 }; 2374 }; 2375 }; 2376 }; 2377 2378 usb_2_qmpphy: phy-wrapper@88eb000 { 2379 compatible = "qcom,sm8350-qmp-usb3-uni-phy"; 2380 reg = <0 0x088eb000 0 0x200>; 2381 status = "disabled"; 2382 #address-cells = <2>; 2383 #size-cells = <2>; 2384 ranges; 2385 2386 clocks = <&gcc GCC_USB3_SEC_PHY_AUX_CLK>, 2387 <&rpmhcc RPMH_CXO_CLK>, 2388 <&gcc GCC_USB3_SEC_CLKREF_EN>, 2389 <&gcc GCC_USB3_SEC_PHY_COM_AUX_CLK>; 2390 clock-names = "aux", "ref_clk_src", "ref", "com_aux"; 2391 2392 resets = <&gcc GCC_USB3PHY_PHY_SEC_BCR>, 2393 <&gcc GCC_USB3_PHY_SEC_BCR>; 2394 reset-names = "phy", "common"; 2395 2396 usb_2_ssphy: phy@88ebe00 { 2397 reg = <0 0x088ebe00 0 0x200>, 2398 <0 0x088ec000 0 0x200>, 2399 <0 0x088eb200 0 0x1100>; 2400 #phy-cells = <0>; 2401 #clock-cells = <0>; 2402 clocks = <&gcc GCC_USB3_SEC_PHY_PIPE_CLK>; 2403 clock-names = "pipe0"; 2404 clock-output-names = "usb3_uni_phy_pipe_clk_src"; 2405 }; 2406 }; 2407 2408 dc_noc: interconnect@90c0000 { 2409 compatible = "qcom,sm8350-dc-noc"; 2410 reg = <0 0x090c0000 0 0x4200>; 2411 #interconnect-cells = <2>; 2412 qcom,bcm-voters = <&apps_bcm_voter>; 2413 }; 2414 2415 gem_noc: interconnect@9100000 { 2416 compatible = "qcom,sm8350-gem-noc"; 2417 reg = <0 0x09100000 0 0xb4000>; 2418 #interconnect-cells = <2>; 2419 qcom,bcm-voters = <&apps_bcm_voter>; 2420 }; 2421 2422 system-cache-controller@9200000 { 2423 compatible = "qcom,sm8350-llcc"; 2424 reg = <0 0x09200000 0 0x58000>, <0 0x09280000 0 0x58000>, 2425 <0 0x09300000 0 0x58000>, <0 0x09380000 0 0x58000>, 2426 <0 0x09600000 0 0x58000>; 2427 reg-names = "llcc0_base", "llcc1_base", "llcc2_base", 2428 "llcc3_base", "llcc_broadcast_base"; 2429 }; 2430 2431 compute_noc: interconnect@a0c0000 { 2432 compatible = "qcom,sm8350-compute-noc"; 2433 reg = <0 0x0a0c0000 0 0xa180>; 2434 #interconnect-cells = <2>; 2435 qcom,bcm-voters = <&apps_bcm_voter>; 2436 }; 2437 2438 cdsp: remoteproc@a300000 { 2439 compatible = "qcom,sm8350-cdsp-pas"; 2440 reg = <0x0 0x0a300000 0x0 0x10000>; 2441 2442 interrupts-extended = <&intc GIC_SPI 578 IRQ_TYPE_EDGE_RISING>, 2443 <&smp2p_cdsp_in 0 IRQ_TYPE_EDGE_RISING>, 2444 <&smp2p_cdsp_in 1 IRQ_TYPE_EDGE_RISING>, 2445 <&smp2p_cdsp_in 2 IRQ_TYPE_EDGE_RISING>, 2446 <&smp2p_cdsp_in 3 IRQ_TYPE_EDGE_RISING>; 2447 interrupt-names = "wdog", "fatal", "ready", 2448 "handover", "stop-ack"; 2449 2450 clocks = <&rpmhcc RPMH_CXO_CLK>; 2451 clock-names = "xo"; 2452 2453 power-domains = <&rpmhpd RPMHPD_CX>, 2454 <&rpmhpd RPMHPD_MXC>; 2455 power-domain-names = "cx", "mxc"; 2456 2457 interconnects = <&compute_noc MASTER_CDSP_PROC 0 &mc_virt SLAVE_EBI1 0>; 2458 2459 memory-region = <&pil_cdsp_mem>; 2460 2461 qcom,qmp = <&aoss_qmp>; 2462 2463 qcom,smem-states = <&smp2p_cdsp_out 0>; 2464 qcom,smem-state-names = "stop"; 2465 2466 status = "disabled"; 2467 2468 glink-edge { 2469 interrupts-extended = <&ipcc IPCC_CLIENT_CDSP 2470 IPCC_MPROC_SIGNAL_GLINK_QMP 2471 IRQ_TYPE_EDGE_RISING>; 2472 mboxes = <&ipcc IPCC_CLIENT_CDSP 2473 IPCC_MPROC_SIGNAL_GLINK_QMP>; 2474 2475 label = "cdsp"; 2476 qcom,remote-pid = <5>; 2477 2478 fastrpc { 2479 compatible = "qcom,fastrpc"; 2480 qcom,glink-channels = "fastrpcglink-apps-dsp"; 2481 label = "cdsp"; 2482 qcom,non-secure-domain; 2483 #address-cells = <1>; 2484 #size-cells = <0>; 2485 2486 compute-cb@1 { 2487 compatible = "qcom,fastrpc-compute-cb"; 2488 reg = <1>; 2489 iommus = <&apps_smmu 0x2161 0x0400>, 2490 <&apps_smmu 0x1181 0x0420>; 2491 }; 2492 2493 compute-cb@2 { 2494 compatible = "qcom,fastrpc-compute-cb"; 2495 reg = <2>; 2496 iommus = <&apps_smmu 0x2162 0x0400>, 2497 <&apps_smmu 0x1182 0x0420>; 2498 }; 2499 2500 compute-cb@3 { 2501 compatible = "qcom,fastrpc-compute-cb"; 2502 reg = <3>; 2503 iommus = <&apps_smmu 0x2163 0x0400>, 2504 <&apps_smmu 0x1183 0x0420>; 2505 }; 2506 2507 compute-cb@4 { 2508 compatible = "qcom,fastrpc-compute-cb"; 2509 reg = <4>; 2510 iommus = <&apps_smmu 0x2164 0x0400>, 2511 <&apps_smmu 0x1184 0x0420>; 2512 }; 2513 2514 compute-cb@5 { 2515 compatible = "qcom,fastrpc-compute-cb"; 2516 reg = <5>; 2517 iommus = <&apps_smmu 0x2165 0x0400>, 2518 <&apps_smmu 0x1185 0x0420>; 2519 }; 2520 2521 compute-cb@6 { 2522 compatible = "qcom,fastrpc-compute-cb"; 2523 reg = <6>; 2524 iommus = <&apps_smmu 0x2166 0x0400>, 2525 <&apps_smmu 0x1186 0x0420>; 2526 }; 2527 2528 compute-cb@7 { 2529 compatible = "qcom,fastrpc-compute-cb"; 2530 reg = <7>; 2531 iommus = <&apps_smmu 0x2167 0x0400>, 2532 <&apps_smmu 0x1187 0x0420>; 2533 }; 2534 2535 compute-cb@8 { 2536 compatible = "qcom,fastrpc-compute-cb"; 2537 reg = <8>; 2538 iommus = <&apps_smmu 0x2168 0x0400>, 2539 <&apps_smmu 0x1188 0x0420>; 2540 }; 2541 2542 /* note: secure cb9 in downstream */ 2543 }; 2544 }; 2545 }; 2546 2547 usb_1: usb@a6f8800 { 2548 compatible = "qcom,sm8350-dwc3", "qcom,dwc3"; 2549 reg = <0 0x0a6f8800 0 0x400>; 2550 status = "disabled"; 2551 #address-cells = <2>; 2552 #size-cells = <2>; 2553 ranges; 2554 2555 clocks = <&gcc GCC_CFG_NOC_USB3_PRIM_AXI_CLK>, 2556 <&gcc GCC_USB30_PRIM_MASTER_CLK>, 2557 <&gcc GCC_AGGRE_USB3_PRIM_AXI_CLK>, 2558 <&gcc GCC_USB30_PRIM_SLEEP_CLK>, 2559 <&gcc GCC_USB30_PRIM_MOCK_UTMI_CLK>; 2560 clock-names = "cfg_noc", 2561 "core", 2562 "iface", 2563 "sleep", 2564 "mock_utmi"; 2565 2566 assigned-clocks = <&gcc GCC_USB30_PRIM_MOCK_UTMI_CLK>, 2567 <&gcc GCC_USB30_PRIM_MASTER_CLK>; 2568 assigned-clock-rates = <19200000>, <200000000>; 2569 2570 interrupts-extended = <&intc GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>, 2571 <&pdc 17 IRQ_TYPE_LEVEL_HIGH>, 2572 <&pdc 15 IRQ_TYPE_EDGE_BOTH>, 2573 <&pdc 14 IRQ_TYPE_EDGE_BOTH>; 2574 interrupt-names = "hs_phy_irq", 2575 "ss_phy_irq", 2576 "dm_hs_phy_irq", 2577 "dp_hs_phy_irq"; 2578 2579 power-domains = <&gcc USB30_PRIM_GDSC>; 2580 2581 resets = <&gcc GCC_USB30_PRIM_BCR>; 2582 2583 interconnects = <&aggre1_noc MASTER_USB3_0 0 &mc_virt SLAVE_EBI1 0>, 2584 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_USB3_0 0>; 2585 interconnect-names = "usb-ddr", "apps-usb"; 2586 2587 usb_1_dwc3: usb@a600000 { 2588 compatible = "snps,dwc3"; 2589 reg = <0 0x0a600000 0 0xcd00>; 2590 interrupts = <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>; 2591 iommus = <&apps_smmu 0x0 0x0>; 2592 snps,dis_u2_susphy_quirk; 2593 snps,dis_enblslpm_quirk; 2594 phys = <&usb_1_hsphy>, <&usb_1_qmpphy QMP_USB43DP_USB3_PHY>; 2595 phy-names = "usb2-phy", "usb3-phy"; 2596 2597 ports { 2598 #address-cells = <1>; 2599 #size-cells = <0>; 2600 2601 port@0 { 2602 reg = <0>; 2603 2604 usb_1_dwc3_hs: endpoint { 2605 }; 2606 }; 2607 2608 port@1 { 2609 reg = <1>; 2610 2611 usb_1_dwc3_ss: endpoint { 2612 }; 2613 }; 2614 }; 2615 }; 2616 }; 2617 2618 usb_2: usb@a8f8800 { 2619 compatible = "qcom,sm8350-dwc3", "qcom,dwc3"; 2620 reg = <0 0x0a8f8800 0 0x400>; 2621 status = "disabled"; 2622 #address-cells = <2>; 2623 #size-cells = <2>; 2624 ranges; 2625 2626 clocks = <&gcc GCC_CFG_NOC_USB3_SEC_AXI_CLK>, 2627 <&gcc GCC_USB30_SEC_MASTER_CLK>, 2628 <&gcc GCC_AGGRE_USB3_SEC_AXI_CLK>, 2629 <&gcc GCC_USB30_SEC_SLEEP_CLK>, 2630 <&gcc GCC_USB30_SEC_MOCK_UTMI_CLK>, 2631 <&gcc GCC_USB3_SEC_CLKREF_EN>; 2632 clock-names = "cfg_noc", 2633 "core", 2634 "iface", 2635 "sleep", 2636 "mock_utmi", 2637 "xo"; 2638 2639 assigned-clocks = <&gcc GCC_USB30_SEC_MOCK_UTMI_CLK>, 2640 <&gcc GCC_USB30_SEC_MASTER_CLK>; 2641 assigned-clock-rates = <19200000>, <200000000>; 2642 2643 interrupts-extended = <&intc GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>, 2644 <&pdc 16 IRQ_TYPE_LEVEL_HIGH>, 2645 <&pdc 13 IRQ_TYPE_EDGE_BOTH>, 2646 <&pdc 12 IRQ_TYPE_EDGE_BOTH>; 2647 interrupt-names = "hs_phy_irq", 2648 "ss_phy_irq", 2649 "dm_hs_phy_irq", 2650 "dp_hs_phy_irq"; 2651 2652 power-domains = <&gcc USB30_SEC_GDSC>; 2653 2654 resets = <&gcc GCC_USB30_SEC_BCR>; 2655 2656 interconnects = <&aggre1_noc MASTER_USB3_1 0 &mc_virt SLAVE_EBI1 0>, 2657 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_USB3_1 0>; 2658 interconnect-names = "usb-ddr", "apps-usb"; 2659 2660 usb_2_dwc3: usb@a800000 { 2661 compatible = "snps,dwc3"; 2662 reg = <0 0x0a800000 0 0xcd00>; 2663 interrupts = <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>; 2664 iommus = <&apps_smmu 0x20 0x0>; 2665 snps,dis_u2_susphy_quirk; 2666 snps,dis_enblslpm_quirk; 2667 phys = <&usb_2_hsphy>, <&usb_2_ssphy>; 2668 phy-names = "usb2-phy", "usb3-phy"; 2669 }; 2670 }; 2671 2672 mdss: display-subsystem@ae00000 { 2673 compatible = "qcom,sm8350-mdss"; 2674 reg = <0 0x0ae00000 0 0x1000>; 2675 reg-names = "mdss"; 2676 2677 interconnects = <&mmss_noc MASTER_MDP0 0 &mc_virt SLAVE_EBI1 0>, 2678 <&mmss_noc MASTER_MDP1 0 &mc_virt SLAVE_EBI1 0>; 2679 interconnect-names = "mdp0-mem", "mdp1-mem"; 2680 2681 power-domains = <&dispcc MDSS_GDSC>; 2682 resets = <&dispcc DISP_CC_MDSS_CORE_BCR>; 2683 2684 clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>, 2685 <&gcc GCC_DISP_HF_AXI_CLK>, 2686 <&gcc GCC_DISP_SF_AXI_CLK>, 2687 <&dispcc DISP_CC_MDSS_MDP_CLK>; 2688 clock-names = "iface", "bus", "nrt_bus", "core"; 2689 2690 interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>; 2691 interrupt-controller; 2692 #interrupt-cells = <1>; 2693 2694 iommus = <&apps_smmu 0x820 0x402>; 2695 2696 status = "disabled"; 2697 2698 #address-cells = <2>; 2699 #size-cells = <2>; 2700 ranges; 2701 2702 dpu_opp_table: opp-table { 2703 compatible = "operating-points-v2"; 2704 2705 /* TODO: opp-200000000 should work with 2706 * &rpmhpd_opp_low_svs, but one some of 2707 * sm8350_hdk boards reboot using this 2708 * opp. 2709 */ 2710 opp-200000000 { 2711 opp-hz = /bits/ 64 <200000000>; 2712 required-opps = <&rpmhpd_opp_svs>; 2713 }; 2714 2715 opp-300000000 { 2716 opp-hz = /bits/ 64 <300000000>; 2717 required-opps = <&rpmhpd_opp_svs>; 2718 }; 2719 2720 opp-345000000 { 2721 opp-hz = /bits/ 64 <345000000>; 2722 required-opps = <&rpmhpd_opp_svs_l1>; 2723 }; 2724 2725 opp-460000000 { 2726 opp-hz = /bits/ 64 <460000000>; 2727 required-opps = <&rpmhpd_opp_nom>; 2728 }; 2729 }; 2730 2731 mdss_mdp: display-controller@ae01000 { 2732 compatible = "qcom,sm8350-dpu"; 2733 reg = <0 0x0ae01000 0 0x8f000>, 2734 <0 0x0aeb0000 0 0x2008>; 2735 reg-names = "mdp", "vbif"; 2736 2737 clocks = <&gcc GCC_DISP_HF_AXI_CLK>, 2738 <&gcc GCC_DISP_SF_AXI_CLK>, 2739 <&dispcc DISP_CC_MDSS_AHB_CLK>, 2740 <&dispcc DISP_CC_MDSS_MDP_LUT_CLK>, 2741 <&dispcc DISP_CC_MDSS_MDP_CLK>, 2742 <&dispcc DISP_CC_MDSS_VSYNC_CLK>; 2743 clock-names = "bus", 2744 "nrt_bus", 2745 "iface", 2746 "lut", 2747 "core", 2748 "vsync"; 2749 2750 assigned-clocks = <&dispcc DISP_CC_MDSS_VSYNC_CLK>; 2751 assigned-clock-rates = <19200000>; 2752 2753 operating-points-v2 = <&dpu_opp_table>; 2754 power-domains = <&rpmhpd RPMHPD_MMCX>; 2755 2756 interrupt-parent = <&mdss>; 2757 interrupts = <0>; 2758 2759 ports { 2760 #address-cells = <1>; 2761 #size-cells = <0>; 2762 2763 port@0 { 2764 reg = <0>; 2765 dpu_intf1_out: endpoint { 2766 remote-endpoint = <&mdss_dsi0_in>; 2767 }; 2768 }; 2769 2770 port@1 { 2771 reg = <1>; 2772 dpu_intf2_out: endpoint { 2773 remote-endpoint = <&mdss_dsi1_in>; 2774 }; 2775 }; 2776 2777 port@2 { 2778 reg = <2>; 2779 dpu_intf0_out: endpoint { 2780 remote-endpoint = <&mdss_dp_in>; 2781 }; 2782 }; 2783 }; 2784 }; 2785 2786 mdss_dp: displayport-controller@ae90000 { 2787 compatible = "qcom,sm8350-dp"; 2788 reg = <0 0xae90000 0 0x200>, 2789 <0 0xae90200 0 0x200>, 2790 <0 0xae90400 0 0x600>, 2791 <0 0xae91000 0 0x400>, 2792 <0 0xae91400 0 0x400>; 2793 interrupt-parent = <&mdss>; 2794 interrupts = <12>; 2795 clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>, 2796 <&dispcc DISP_CC_MDSS_DP_AUX_CLK>, 2797 <&dispcc DISP_CC_MDSS_DP_LINK_CLK>, 2798 <&dispcc DISP_CC_MDSS_DP_LINK_INTF_CLK>, 2799 <&dispcc DISP_CC_MDSS_DP_PIXEL_CLK>; 2800 clock-names = "core_iface", 2801 "core_aux", 2802 "ctrl_link", 2803 "ctrl_link_iface", 2804 "stream_pixel"; 2805 2806 assigned-clocks = <&dispcc DISP_CC_MDSS_DP_LINK_CLK_SRC>, 2807 <&dispcc DISP_CC_MDSS_DP_PIXEL_CLK_SRC>; 2808 assigned-clock-parents = <&usb_1_qmpphy QMP_USB43DP_DP_LINK_CLK>, 2809 <&usb_1_qmpphy QMP_USB43DP_DP_VCO_DIV_CLK>; 2810 2811 phys = <&usb_1_qmpphy QMP_USB43DP_DP_PHY>; 2812 phy-names = "dp"; 2813 2814 #sound-dai-cells = <0>; 2815 2816 operating-points-v2 = <&dp_opp_table>; 2817 power-domains = <&rpmhpd RPMHPD_MMCX>; 2818 2819 status = "disabled"; 2820 2821 ports { 2822 #address-cells = <1>; 2823 #size-cells = <0>; 2824 2825 port@0 { 2826 reg = <0>; 2827 mdss_dp_in: endpoint { 2828 remote-endpoint = <&dpu_intf0_out>; 2829 }; 2830 }; 2831 }; 2832 2833 dp_opp_table: opp-table { 2834 compatible = "operating-points-v2"; 2835 2836 opp-160000000 { 2837 opp-hz = /bits/ 64 <160000000>; 2838 required-opps = <&rpmhpd_opp_low_svs>; 2839 }; 2840 2841 opp-270000000 { 2842 opp-hz = /bits/ 64 <270000000>; 2843 required-opps = <&rpmhpd_opp_svs>; 2844 }; 2845 2846 opp-540000000 { 2847 opp-hz = /bits/ 64 <540000000>; 2848 required-opps = <&rpmhpd_opp_svs_l1>; 2849 }; 2850 2851 opp-810000000 { 2852 opp-hz = /bits/ 64 <810000000>; 2853 required-opps = <&rpmhpd_opp_nom>; 2854 }; 2855 }; 2856 }; 2857 2858 mdss_dsi0: dsi@ae94000 { 2859 compatible = "qcom,sm8350-dsi-ctrl", "qcom,mdss-dsi-ctrl"; 2860 reg = <0 0x0ae94000 0 0x400>; 2861 reg-names = "dsi_ctrl"; 2862 2863 interrupt-parent = <&mdss>; 2864 interrupts = <4>; 2865 2866 clocks = <&dispcc DISP_CC_MDSS_BYTE0_CLK>, 2867 <&dispcc DISP_CC_MDSS_BYTE0_INTF_CLK>, 2868 <&dispcc DISP_CC_MDSS_PCLK0_CLK>, 2869 <&dispcc DISP_CC_MDSS_ESC0_CLK>, 2870 <&dispcc DISP_CC_MDSS_AHB_CLK>, 2871 <&gcc GCC_DISP_HF_AXI_CLK>; 2872 clock-names = "byte", 2873 "byte_intf", 2874 "pixel", 2875 "core", 2876 "iface", 2877 "bus"; 2878 2879 assigned-clocks = <&dispcc DISP_CC_MDSS_BYTE0_CLK_SRC>, 2880 <&dispcc DISP_CC_MDSS_PCLK0_CLK_SRC>; 2881 assigned-clock-parents = <&mdss_dsi0_phy 0>, 2882 <&mdss_dsi0_phy 1>; 2883 2884 operating-points-v2 = <&dsi0_opp_table>; 2885 power-domains = <&rpmhpd RPMHPD_MMCX>; 2886 2887 phys = <&mdss_dsi0_phy>; 2888 2889 #address-cells = <1>; 2890 #size-cells = <0>; 2891 2892 status = "disabled"; 2893 2894 dsi0_opp_table: opp-table { 2895 compatible = "operating-points-v2"; 2896 2897 /* TODO: opp-187500000 should work with 2898 * &rpmhpd_opp_low_svs, but one some of 2899 * sm8350_hdk boards reboot using this 2900 * opp. 2901 */ 2902 opp-187500000 { 2903 opp-hz = /bits/ 64 <187500000>; 2904 required-opps = <&rpmhpd_opp_svs>; 2905 }; 2906 2907 opp-300000000 { 2908 opp-hz = /bits/ 64 <300000000>; 2909 required-opps = <&rpmhpd_opp_svs>; 2910 }; 2911 2912 opp-358000000 { 2913 opp-hz = /bits/ 64 <358000000>; 2914 required-opps = <&rpmhpd_opp_svs_l1>; 2915 }; 2916 }; 2917 2918 ports { 2919 #address-cells = <1>; 2920 #size-cells = <0>; 2921 2922 port@0 { 2923 reg = <0>; 2924 mdss_dsi0_in: endpoint { 2925 remote-endpoint = <&dpu_intf1_out>; 2926 }; 2927 }; 2928 2929 port@1 { 2930 reg = <1>; 2931 mdss_dsi0_out: endpoint { 2932 }; 2933 }; 2934 }; 2935 }; 2936 2937 mdss_dsi0_phy: phy@ae94400 { 2938 compatible = "qcom,sm8350-dsi-phy-5nm"; 2939 reg = <0 0x0ae94400 0 0x200>, 2940 <0 0x0ae94600 0 0x280>, 2941 <0 0x0ae94900 0 0x27c>; 2942 reg-names = "dsi_phy", 2943 "dsi_phy_lane", 2944 "dsi_pll"; 2945 2946 #clock-cells = <1>; 2947 #phy-cells = <0>; 2948 2949 clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>, 2950 <&rpmhcc RPMH_CXO_CLK>; 2951 clock-names = "iface", "ref"; 2952 2953 status = "disabled"; 2954 }; 2955 2956 mdss_dsi1: dsi@ae96000 { 2957 compatible = "qcom,sm8350-dsi-ctrl", "qcom,mdss-dsi-ctrl"; 2958 reg = <0 0x0ae96000 0 0x400>; 2959 reg-names = "dsi_ctrl"; 2960 2961 interrupt-parent = <&mdss>; 2962 interrupts = <5>; 2963 2964 clocks = <&dispcc DISP_CC_MDSS_BYTE1_CLK>, 2965 <&dispcc DISP_CC_MDSS_BYTE1_INTF_CLK>, 2966 <&dispcc DISP_CC_MDSS_PCLK1_CLK>, 2967 <&dispcc DISP_CC_MDSS_ESC1_CLK>, 2968 <&dispcc DISP_CC_MDSS_AHB_CLK>, 2969 <&gcc GCC_DISP_HF_AXI_CLK>; 2970 clock-names = "byte", 2971 "byte_intf", 2972 "pixel", 2973 "core", 2974 "iface", 2975 "bus"; 2976 2977 assigned-clocks = <&dispcc DISP_CC_MDSS_BYTE1_CLK_SRC>, 2978 <&dispcc DISP_CC_MDSS_PCLK1_CLK_SRC>; 2979 assigned-clock-parents = <&mdss_dsi1_phy 0>, 2980 <&mdss_dsi1_phy 1>; 2981 2982 operating-points-v2 = <&dsi1_opp_table>; 2983 power-domains = <&rpmhpd RPMHPD_MMCX>; 2984 2985 phys = <&mdss_dsi1_phy>; 2986 2987 #address-cells = <1>; 2988 #size-cells = <0>; 2989 2990 status = "disabled"; 2991 2992 dsi1_opp_table: opp-table { 2993 compatible = "operating-points-v2"; 2994 2995 /* TODO: opp-187500000 should work with 2996 * &rpmhpd_opp_low_svs, but one some of 2997 * sm8350_hdk boards reboot using this 2998 * opp. 2999 */ 3000 opp-187500000 { 3001 opp-hz = /bits/ 64 <187500000>; 3002 required-opps = <&rpmhpd_opp_svs>; 3003 }; 3004 3005 opp-300000000 { 3006 opp-hz = /bits/ 64 <300000000>; 3007 required-opps = <&rpmhpd_opp_svs>; 3008 }; 3009 3010 opp-358000000 { 3011 opp-hz = /bits/ 64 <358000000>; 3012 required-opps = <&rpmhpd_opp_svs_l1>; 3013 }; 3014 }; 3015 3016 ports { 3017 #address-cells = <1>; 3018 #size-cells = <0>; 3019 3020 port@0 { 3021 reg = <0>; 3022 mdss_dsi1_in: endpoint { 3023 remote-endpoint = <&dpu_intf2_out>; 3024 }; 3025 }; 3026 3027 port@1 { 3028 reg = <1>; 3029 mdss_dsi1_out: endpoint { 3030 }; 3031 }; 3032 }; 3033 }; 3034 3035 mdss_dsi1_phy: phy@ae96400 { 3036 compatible = "qcom,sm8350-dsi-phy-5nm"; 3037 reg = <0 0x0ae96400 0 0x200>, 3038 <0 0x0ae96600 0 0x280>, 3039 <0 0x0ae96900 0 0x27c>; 3040 reg-names = "dsi_phy", 3041 "dsi_phy_lane", 3042 "dsi_pll"; 3043 3044 #clock-cells = <1>; 3045 #phy-cells = <0>; 3046 3047 clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>, 3048 <&rpmhcc RPMH_CXO_CLK>; 3049 clock-names = "iface", "ref"; 3050 3051 status = "disabled"; 3052 }; 3053 }; 3054 3055 dispcc: clock-controller@af00000 { 3056 compatible = "qcom,sm8350-dispcc"; 3057 reg = <0 0x0af00000 0 0x10000>; 3058 clocks = <&rpmhcc RPMH_CXO_CLK>, 3059 <&mdss_dsi0_phy 0>, <&mdss_dsi0_phy 1>, 3060 <&mdss_dsi1_phy 0>, <&mdss_dsi1_phy 1>, 3061 <&usb_1_qmpphy QMP_USB43DP_DP_LINK_CLK>, 3062 <&usb_1_qmpphy QMP_USB43DP_DP_VCO_DIV_CLK>; 3063 clock-names = "bi_tcxo", 3064 "dsi0_phy_pll_out_byteclk", 3065 "dsi0_phy_pll_out_dsiclk", 3066 "dsi1_phy_pll_out_byteclk", 3067 "dsi1_phy_pll_out_dsiclk", 3068 "dp_phy_pll_link_clk", 3069 "dp_phy_pll_vco_div_clk"; 3070 #clock-cells = <1>; 3071 #reset-cells = <1>; 3072 #power-domain-cells = <1>; 3073 3074 power-domains = <&rpmhpd RPMHPD_MMCX>; 3075 }; 3076 3077 pdc: interrupt-controller@b220000 { 3078 compatible = "qcom,sm8350-pdc", "qcom,pdc"; 3079 reg = <0 0x0b220000 0 0x30000>, <0 0x17c000f0 0 0x60>; 3080 qcom,pdc-ranges = <0 480 40>, <40 140 14>, <54 263 1>, <55 306 4>, 3081 <59 312 3>, <62 374 2>, <64 434 2>, <66 438 3>, 3082 <69 86 1>, <70 520 54>, <124 609 31>, <155 63 1>, 3083 <156 716 12>; 3084 #interrupt-cells = <2>; 3085 interrupt-parent = <&intc>; 3086 interrupt-controller; 3087 }; 3088 3089 tsens0: thermal-sensor@c263000 { 3090 compatible = "qcom,sm8350-tsens", "qcom,tsens-v2"; 3091 reg = <0 0x0c263000 0 0x1ff>, /* TM */ 3092 <0 0x0c222000 0 0x8>; /* SROT */ 3093 #qcom,sensors = <15>; 3094 interrupts-extended = <&pdc 26 IRQ_TYPE_LEVEL_HIGH>, 3095 <&pdc 28 IRQ_TYPE_LEVEL_HIGH>; 3096 interrupt-names = "uplow", "critical"; 3097 #thermal-sensor-cells = <1>; 3098 }; 3099 3100 tsens1: thermal-sensor@c265000 { 3101 compatible = "qcom,sm8350-tsens", "qcom,tsens-v2"; 3102 reg = <0 0x0c265000 0 0x1ff>, /* TM */ 3103 <0 0x0c223000 0 0x8>; /* SROT */ 3104 #qcom,sensors = <14>; 3105 interrupts-extended = <&pdc 27 IRQ_TYPE_LEVEL_HIGH>, 3106 <&pdc 29 IRQ_TYPE_LEVEL_HIGH>; 3107 interrupt-names = "uplow", "critical"; 3108 #thermal-sensor-cells = <1>; 3109 }; 3110 3111 aoss_qmp: power-management@c300000 { 3112 compatible = "qcom,sm8350-aoss-qmp", "qcom,aoss-qmp"; 3113 reg = <0 0x0c300000 0 0x400>; 3114 interrupts-extended = <&ipcc IPCC_CLIENT_AOP IPCC_MPROC_SIGNAL_GLINK_QMP 3115 IRQ_TYPE_EDGE_RISING>; 3116 mboxes = <&ipcc IPCC_CLIENT_AOP IPCC_MPROC_SIGNAL_GLINK_QMP>; 3117 3118 #clock-cells = <0>; 3119 }; 3120 3121 sram@c3f0000 { 3122 compatible = "qcom,rpmh-stats"; 3123 reg = <0 0x0c3f0000 0 0x400>; 3124 }; 3125 3126 spmi_bus: spmi@c440000 { 3127 compatible = "qcom,spmi-pmic-arb"; 3128 reg = <0x0 0x0c440000 0x0 0x1100>, 3129 <0x0 0x0c600000 0x0 0x2000000>, 3130 <0x0 0x0e600000 0x0 0x100000>, 3131 <0x0 0x0e700000 0x0 0xa0000>, 3132 <0x0 0x0c40a000 0x0 0x26000>; 3133 reg-names = "core", "chnls", "obsrvr", "intr", "cnfg"; 3134 interrupt-names = "periph_irq"; 3135 interrupts-extended = <&pdc 1 IRQ_TYPE_LEVEL_HIGH>; 3136 qcom,ee = <0>; 3137 qcom,channel = <0>; 3138 #address-cells = <2>; 3139 #size-cells = <0>; 3140 interrupt-controller; 3141 #interrupt-cells = <4>; 3142 }; 3143 3144 tlmm: pinctrl@f100000 { 3145 compatible = "qcom,sm8350-tlmm"; 3146 reg = <0 0x0f100000 0 0x300000>; 3147 interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>; 3148 gpio-controller; 3149 #gpio-cells = <2>; 3150 interrupt-controller; 3151 #interrupt-cells = <2>; 3152 gpio-ranges = <&tlmm 0 0 204>; 3153 wakeup-parent = <&pdc>; 3154 3155 sdc2_default_state: sdc2-default-state { 3156 clk-pins { 3157 pins = "sdc2_clk"; 3158 drive-strength = <16>; 3159 bias-disable; 3160 }; 3161 3162 cmd-pins { 3163 pins = "sdc2_cmd"; 3164 drive-strength = <16>; 3165 bias-pull-up; 3166 }; 3167 3168 data-pins { 3169 pins = "sdc2_data"; 3170 drive-strength = <16>; 3171 bias-pull-up; 3172 }; 3173 }; 3174 3175 sdc2_sleep_state: sdc2-sleep-state { 3176 clk-pins { 3177 pins = "sdc2_clk"; 3178 drive-strength = <2>; 3179 bias-disable; 3180 }; 3181 3182 cmd-pins { 3183 pins = "sdc2_cmd"; 3184 drive-strength = <2>; 3185 bias-pull-up; 3186 }; 3187 3188 data-pins { 3189 pins = "sdc2_data"; 3190 drive-strength = <2>; 3191 bias-pull-up; 3192 }; 3193 }; 3194 3195 qup_uart3_default_state: qup-uart3-default-state { 3196 rx-pins { 3197 pins = "gpio18"; 3198 function = "qup3"; 3199 }; 3200 tx-pins { 3201 pins = "gpio19"; 3202 function = "qup3"; 3203 }; 3204 }; 3205 3206 qup_uart6_default: qup-uart6-default-state { 3207 pins = "gpio30", "gpio31"; 3208 function = "qup6"; 3209 drive-strength = <2>; 3210 bias-disable; 3211 }; 3212 3213 qup_uart18_default: qup-uart18-default-state { 3214 pins = "gpio68", "gpio69"; 3215 function = "qup18"; 3216 drive-strength = <2>; 3217 bias-disable; 3218 }; 3219 3220 qup_i2c0_default: qup-i2c0-default-state { 3221 pins = "gpio4", "gpio5"; 3222 function = "qup0"; 3223 drive-strength = <2>; 3224 bias-pull-up; 3225 }; 3226 3227 qup_i2c1_default: qup-i2c1-default-state { 3228 pins = "gpio8", "gpio9"; 3229 function = "qup1"; 3230 drive-strength = <2>; 3231 bias-pull-up; 3232 }; 3233 3234 qup_i2c2_default: qup-i2c2-default-state { 3235 pins = "gpio12", "gpio13"; 3236 function = "qup2"; 3237 drive-strength = <2>; 3238 bias-pull-up; 3239 }; 3240 3241 qup_i2c4_default: qup-i2c4-default-state { 3242 pins = "gpio20", "gpio21"; 3243 function = "qup4"; 3244 drive-strength = <2>; 3245 bias-pull-up; 3246 }; 3247 3248 qup_i2c5_default: qup-i2c5-default-state { 3249 pins = "gpio24", "gpio25"; 3250 function = "qup5"; 3251 drive-strength = <2>; 3252 bias-pull-up; 3253 }; 3254 3255 qup_i2c6_default: qup-i2c6-default-state { 3256 pins = "gpio28", "gpio29"; 3257 function = "qup6"; 3258 drive-strength = <2>; 3259 bias-pull-up; 3260 }; 3261 3262 qup_i2c7_default: qup-i2c7-default-state { 3263 pins = "gpio32", "gpio33"; 3264 function = "qup7"; 3265 drive-strength = <2>; 3266 bias-disable; 3267 }; 3268 3269 qup_i2c8_default: qup-i2c8-default-state { 3270 pins = "gpio36", "gpio37"; 3271 function = "qup8"; 3272 drive-strength = <2>; 3273 bias-pull-up; 3274 }; 3275 3276 qup_i2c9_default: qup-i2c9-default-state { 3277 pins = "gpio40", "gpio41"; 3278 function = "qup9"; 3279 drive-strength = <2>; 3280 bias-pull-up; 3281 }; 3282 3283 qup_i2c10_default: qup-i2c10-default-state { 3284 pins = "gpio44", "gpio45"; 3285 function = "qup10"; 3286 drive-strength = <2>; 3287 bias-pull-up; 3288 }; 3289 3290 qup_i2c11_default: qup-i2c11-default-state { 3291 pins = "gpio48", "gpio49"; 3292 function = "qup11"; 3293 drive-strength = <2>; 3294 bias-pull-up; 3295 }; 3296 3297 qup_i2c12_default: qup-i2c12-default-state { 3298 pins = "gpio52", "gpio53"; 3299 function = "qup12"; 3300 drive-strength = <2>; 3301 bias-pull-up; 3302 }; 3303 3304 qup_i2c13_default: qup-i2c13-default-state { 3305 pins = "gpio0", "gpio1"; 3306 function = "qup13"; 3307 drive-strength = <2>; 3308 bias-pull-up; 3309 }; 3310 3311 qup_i2c14_default: qup-i2c14-default-state { 3312 pins = "gpio56", "gpio57"; 3313 function = "qup14"; 3314 drive-strength = <2>; 3315 bias-disable; 3316 }; 3317 3318 qup_i2c15_default: qup-i2c15-default-state { 3319 pins = "gpio60", "gpio61"; 3320 function = "qup15"; 3321 drive-strength = <2>; 3322 bias-disable; 3323 }; 3324 3325 qup_i2c16_default: qup-i2c16-default-state { 3326 pins = "gpio64", "gpio65"; 3327 function = "qup16"; 3328 drive-strength = <2>; 3329 bias-disable; 3330 }; 3331 3332 qup_i2c17_default: qup-i2c17-default-state { 3333 pins = "gpio72", "gpio73"; 3334 function = "qup17"; 3335 drive-strength = <2>; 3336 bias-disable; 3337 }; 3338 3339 qup_i2c19_default: qup-i2c19-default-state { 3340 pins = "gpio76", "gpio77"; 3341 function = "qup19"; 3342 drive-strength = <2>; 3343 bias-disable; 3344 }; 3345 }; 3346 3347 apps_smmu: iommu@15000000 { 3348 compatible = "qcom,sm8350-smmu-500", "arm,mmu-500"; 3349 reg = <0 0x15000000 0 0x100000>; 3350 #iommu-cells = <2>; 3351 #global-interrupts = <2>; 3352 interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>, 3353 <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>, 3354 <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>, 3355 <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>, 3356 <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>, 3357 <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>, 3358 <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>, 3359 <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>, 3360 <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>, 3361 <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>, 3362 <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>, 3363 <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>, 3364 <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>, 3365 <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>, 3366 <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>, 3367 <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>, 3368 <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>, 3369 <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>, 3370 <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>, 3371 <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>, 3372 <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>, 3373 <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>, 3374 <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>, 3375 <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>, 3376 <GIC_SPI 181 IRQ_TYPE_LEVEL_HIGH>, 3377 <GIC_SPI 182 IRQ_TYPE_LEVEL_HIGH>, 3378 <GIC_SPI 183 IRQ_TYPE_LEVEL_HIGH>, 3379 <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>, 3380 <GIC_SPI 185 IRQ_TYPE_LEVEL_HIGH>, 3381 <GIC_SPI 186 IRQ_TYPE_LEVEL_HIGH>, 3382 <GIC_SPI 187 IRQ_TYPE_LEVEL_HIGH>, 3383 <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>, 3384 <GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH>, 3385 <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>, 3386 <GIC_SPI 191 IRQ_TYPE_LEVEL_HIGH>, 3387 <GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH>, 3388 <GIC_SPI 315 IRQ_TYPE_LEVEL_HIGH>, 3389 <GIC_SPI 316 IRQ_TYPE_LEVEL_HIGH>, 3390 <GIC_SPI 317 IRQ_TYPE_LEVEL_HIGH>, 3391 <GIC_SPI 318 IRQ_TYPE_LEVEL_HIGH>, 3392 <GIC_SPI 319 IRQ_TYPE_LEVEL_HIGH>, 3393 <GIC_SPI 320 IRQ_TYPE_LEVEL_HIGH>, 3394 <GIC_SPI 321 IRQ_TYPE_LEVEL_HIGH>, 3395 <GIC_SPI 322 IRQ_TYPE_LEVEL_HIGH>, 3396 <GIC_SPI 323 IRQ_TYPE_LEVEL_HIGH>, 3397 <GIC_SPI 324 IRQ_TYPE_LEVEL_HIGH>, 3398 <GIC_SPI 325 IRQ_TYPE_LEVEL_HIGH>, 3399 <GIC_SPI 326 IRQ_TYPE_LEVEL_HIGH>, 3400 <GIC_SPI 327 IRQ_TYPE_LEVEL_HIGH>, 3401 <GIC_SPI 328 IRQ_TYPE_LEVEL_HIGH>, 3402 <GIC_SPI 329 IRQ_TYPE_LEVEL_HIGH>, 3403 <GIC_SPI 330 IRQ_TYPE_LEVEL_HIGH>, 3404 <GIC_SPI 331 IRQ_TYPE_LEVEL_HIGH>, 3405 <GIC_SPI 332 IRQ_TYPE_LEVEL_HIGH>, 3406 <GIC_SPI 333 IRQ_TYPE_LEVEL_HIGH>, 3407 <GIC_SPI 334 IRQ_TYPE_LEVEL_HIGH>, 3408 <GIC_SPI 335 IRQ_TYPE_LEVEL_HIGH>, 3409 <GIC_SPI 336 IRQ_TYPE_LEVEL_HIGH>, 3410 <GIC_SPI 337 IRQ_TYPE_LEVEL_HIGH>, 3411 <GIC_SPI 338 IRQ_TYPE_LEVEL_HIGH>, 3412 <GIC_SPI 339 IRQ_TYPE_LEVEL_HIGH>, 3413 <GIC_SPI 340 IRQ_TYPE_LEVEL_HIGH>, 3414 <GIC_SPI 341 IRQ_TYPE_LEVEL_HIGH>, 3415 <GIC_SPI 342 IRQ_TYPE_LEVEL_HIGH>, 3416 <GIC_SPI 343 IRQ_TYPE_LEVEL_HIGH>, 3417 <GIC_SPI 344 IRQ_TYPE_LEVEL_HIGH>, 3418 <GIC_SPI 345 IRQ_TYPE_LEVEL_HIGH>, 3419 <GIC_SPI 395 IRQ_TYPE_LEVEL_HIGH>, 3420 <GIC_SPI 396 IRQ_TYPE_LEVEL_HIGH>, 3421 <GIC_SPI 397 IRQ_TYPE_LEVEL_HIGH>, 3422 <GIC_SPI 398 IRQ_TYPE_LEVEL_HIGH>, 3423 <GIC_SPI 399 IRQ_TYPE_LEVEL_HIGH>, 3424 <GIC_SPI 400 IRQ_TYPE_LEVEL_HIGH>, 3425 <GIC_SPI 401 IRQ_TYPE_LEVEL_HIGH>, 3426 <GIC_SPI 402 IRQ_TYPE_LEVEL_HIGH>, 3427 <GIC_SPI 403 IRQ_TYPE_LEVEL_HIGH>, 3428 <GIC_SPI 404 IRQ_TYPE_LEVEL_HIGH>, 3429 <GIC_SPI 405 IRQ_TYPE_LEVEL_HIGH>, 3430 <GIC_SPI 406 IRQ_TYPE_LEVEL_HIGH>, 3431 <GIC_SPI 407 IRQ_TYPE_LEVEL_HIGH>, 3432 <GIC_SPI 408 IRQ_TYPE_LEVEL_HIGH>, 3433 <GIC_SPI 409 IRQ_TYPE_LEVEL_HIGH>, 3434 <GIC_SPI 412 IRQ_TYPE_LEVEL_HIGH>, 3435 <GIC_SPI 418 IRQ_TYPE_LEVEL_HIGH>, 3436 <GIC_SPI 419 IRQ_TYPE_LEVEL_HIGH>, 3437 <GIC_SPI 421 IRQ_TYPE_LEVEL_HIGH>, 3438 <GIC_SPI 423 IRQ_TYPE_LEVEL_HIGH>, 3439 <GIC_SPI 424 IRQ_TYPE_LEVEL_HIGH>, 3440 <GIC_SPI 425 IRQ_TYPE_LEVEL_HIGH>, 3441 <GIC_SPI 690 IRQ_TYPE_LEVEL_HIGH>, 3442 <GIC_SPI 691 IRQ_TYPE_LEVEL_HIGH>, 3443 <GIC_SPI 692 IRQ_TYPE_LEVEL_HIGH>, 3444 <GIC_SPI 693 IRQ_TYPE_LEVEL_HIGH>, 3445 <GIC_SPI 694 IRQ_TYPE_LEVEL_HIGH>, 3446 <GIC_SPI 695 IRQ_TYPE_LEVEL_HIGH>, 3447 <GIC_SPI 696 IRQ_TYPE_LEVEL_HIGH>, 3448 <GIC_SPI 697 IRQ_TYPE_LEVEL_HIGH>, 3449 <GIC_SPI 707 IRQ_TYPE_LEVEL_HIGH>; 3450 }; 3451 3452 intc: interrupt-controller@17a00000 { 3453 compatible = "arm,gic-v3"; 3454 #interrupt-cells = <3>; 3455 interrupt-controller; 3456 #redistributor-regions = <1>; 3457 redistributor-stride = <0 0x20000>; 3458 reg = <0x0 0x17a00000 0x0 0x10000>, /* GICD */ 3459 <0x0 0x17a60000 0x0 0x100000>; /* GICR * 8 */ 3460 interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>; 3461 }; 3462 3463 timer@17c20000 { 3464 compatible = "arm,armv7-timer-mem"; 3465 #address-cells = <1>; 3466 #size-cells = <1>; 3467 ranges = <0 0 0 0x20000000>; 3468 reg = <0x0 0x17c20000 0x0 0x1000>; 3469 clock-frequency = <19200000>; 3470 3471 frame@17c21000 { 3472 frame-number = <0>; 3473 interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>, 3474 <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>; 3475 reg = <0x17c21000 0x1000>, 3476 <0x17c22000 0x1000>; 3477 }; 3478 3479 frame@17c23000 { 3480 frame-number = <1>; 3481 interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>; 3482 reg = <0x17c23000 0x1000>; 3483 status = "disabled"; 3484 }; 3485 3486 frame@17c25000 { 3487 frame-number = <2>; 3488 interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>; 3489 reg = <0x17c25000 0x1000>; 3490 status = "disabled"; 3491 }; 3492 3493 frame@17c27000 { 3494 frame-number = <3>; 3495 interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>; 3496 reg = <0x17c27000 0x1000>; 3497 status = "disabled"; 3498 }; 3499 3500 frame@17c29000 { 3501 frame-number = <4>; 3502 interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>; 3503 reg = <0x17c29000 0x1000>; 3504 status = "disabled"; 3505 }; 3506 3507 frame@17c2b000 { 3508 frame-number = <5>; 3509 interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>; 3510 reg = <0x17c2b000 0x1000>; 3511 status = "disabled"; 3512 }; 3513 3514 frame@17c2d000 { 3515 frame-number = <6>; 3516 interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>; 3517 reg = <0x17c2d000 0x1000>; 3518 status = "disabled"; 3519 }; 3520 }; 3521 3522 apps_rsc: rsc@18200000 { 3523 label = "apps_rsc"; 3524 compatible = "qcom,rpmh-rsc"; 3525 reg = <0x0 0x18200000 0x0 0x10000>, 3526 <0x0 0x18210000 0x0 0x10000>, 3527 <0x0 0x18220000 0x0 0x10000>; 3528 reg-names = "drv-0", "drv-1", "drv-2"; 3529 interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>, 3530 <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>, 3531 <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>; 3532 qcom,tcs-offset = <0xd00>; 3533 qcom,drv-id = <2>; 3534 qcom,tcs-config = <ACTIVE_TCS 2>, <SLEEP_TCS 3>, 3535 <WAKE_TCS 3>, <CONTROL_TCS 0>; 3536 power-domains = <&CLUSTER_PD>; 3537 3538 rpmhcc: clock-controller { 3539 compatible = "qcom,sm8350-rpmh-clk"; 3540 #clock-cells = <1>; 3541 clock-names = "xo"; 3542 clocks = <&xo_board>; 3543 }; 3544 3545 rpmhpd: power-controller { 3546 compatible = "qcom,sm8350-rpmhpd"; 3547 #power-domain-cells = <1>; 3548 operating-points-v2 = <&rpmhpd_opp_table>; 3549 3550 rpmhpd_opp_table: opp-table { 3551 compatible = "operating-points-v2"; 3552 3553 rpmhpd_opp_ret: opp1 { 3554 opp-level = <RPMH_REGULATOR_LEVEL_RETENTION>; 3555 }; 3556 3557 rpmhpd_opp_min_svs: opp2 { 3558 opp-level = <RPMH_REGULATOR_LEVEL_MIN_SVS>; 3559 }; 3560 3561 rpmhpd_opp_low_svs: opp3 { 3562 opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS>; 3563 }; 3564 3565 rpmhpd_opp_svs: opp4 { 3566 opp-level = <RPMH_REGULATOR_LEVEL_SVS>; 3567 }; 3568 3569 rpmhpd_opp_svs_l1: opp5 { 3570 opp-level = <RPMH_REGULATOR_LEVEL_SVS_L1>; 3571 }; 3572 3573 rpmhpd_opp_nom: opp6 { 3574 opp-level = <RPMH_REGULATOR_LEVEL_NOM>; 3575 }; 3576 3577 rpmhpd_opp_nom_l1: opp7 { 3578 opp-level = <RPMH_REGULATOR_LEVEL_NOM_L1>; 3579 }; 3580 3581 rpmhpd_opp_nom_l2: opp8 { 3582 opp-level = <RPMH_REGULATOR_LEVEL_NOM_L2>; 3583 }; 3584 3585 rpmhpd_opp_turbo: opp9 { 3586 opp-level = <RPMH_REGULATOR_LEVEL_TURBO>; 3587 }; 3588 3589 rpmhpd_opp_turbo_l1: opp10 { 3590 opp-level = <RPMH_REGULATOR_LEVEL_TURBO_L1>; 3591 }; 3592 }; 3593 }; 3594 3595 apps_bcm_voter: bcm-voter { 3596 compatible = "qcom,bcm-voter"; 3597 }; 3598 }; 3599 3600 cpufreq_hw: cpufreq@18591000 { 3601 compatible = "qcom,sm8350-cpufreq-epss", "qcom,cpufreq-epss"; 3602 reg = <0 0x18591000 0 0x1000>, 3603 <0 0x18592000 0 0x1000>, 3604 <0 0x18593000 0 0x1000>; 3605 reg-names = "freq-domain0", "freq-domain1", "freq-domain2"; 3606 3607 interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>, 3608 <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>, 3609 <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>; 3610 interrupt-names = "dcvsh-irq-0", 3611 "dcvsh-irq-1", 3612 "dcvsh-irq-2"; 3613 3614 clocks = <&rpmhcc RPMH_CXO_CLK>, <&gcc GCC_GPLL0>; 3615 clock-names = "xo", "alternate"; 3616 3617 #freq-domain-cells = <1>; 3618 #clock-cells = <1>; 3619 }; 3620 }; 3621 3622 thermal_zones: thermal-zones { 3623 cpu0-thermal { 3624 polling-delay-passive = <250>; 3625 polling-delay = <1000>; 3626 3627 thermal-sensors = <&tsens0 1>; 3628 3629 trips { 3630 cpu0_alert0: trip-point0 { 3631 temperature = <90000>; 3632 hysteresis = <2000>; 3633 type = "passive"; 3634 }; 3635 3636 cpu0_alert1: trip-point1 { 3637 temperature = <95000>; 3638 hysteresis = <2000>; 3639 type = "passive"; 3640 }; 3641 3642 cpu0_crit: cpu-crit { 3643 temperature = <110000>; 3644 hysteresis = <1000>; 3645 type = "critical"; 3646 }; 3647 }; 3648 3649 cooling-maps { 3650 map0 { 3651 trip = <&cpu0_alert0>; 3652 cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3653 <&CPU1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3654 <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3655 <&CPU3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 3656 }; 3657 map1 { 3658 trip = <&cpu0_alert1>; 3659 cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3660 <&CPU1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3661 <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3662 <&CPU3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 3663 }; 3664 }; 3665 }; 3666 3667 cpu1-thermal { 3668 polling-delay-passive = <250>; 3669 polling-delay = <1000>; 3670 3671 thermal-sensors = <&tsens0 2>; 3672 3673 trips { 3674 cpu1_alert0: trip-point0 { 3675 temperature = <90000>; 3676 hysteresis = <2000>; 3677 type = "passive"; 3678 }; 3679 3680 cpu1_alert1: trip-point1 { 3681 temperature = <95000>; 3682 hysteresis = <2000>; 3683 type = "passive"; 3684 }; 3685 3686 cpu1_crit: cpu-crit { 3687 temperature = <110000>; 3688 hysteresis = <1000>; 3689 type = "critical"; 3690 }; 3691 }; 3692 3693 cooling-maps { 3694 map0 { 3695 trip = <&cpu1_alert0>; 3696 cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3697 <&CPU1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3698 <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3699 <&CPU3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 3700 }; 3701 map1 { 3702 trip = <&cpu1_alert1>; 3703 cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3704 <&CPU1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3705 <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3706 <&CPU3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 3707 }; 3708 }; 3709 }; 3710 3711 cpu2-thermal { 3712 polling-delay-passive = <250>; 3713 polling-delay = <1000>; 3714 3715 thermal-sensors = <&tsens0 3>; 3716 3717 trips { 3718 cpu2_alert0: trip-point0 { 3719 temperature = <90000>; 3720 hysteresis = <2000>; 3721 type = "passive"; 3722 }; 3723 3724 cpu2_alert1: trip-point1 { 3725 temperature = <95000>; 3726 hysteresis = <2000>; 3727 type = "passive"; 3728 }; 3729 3730 cpu2_crit: cpu-crit { 3731 temperature = <110000>; 3732 hysteresis = <1000>; 3733 type = "critical"; 3734 }; 3735 }; 3736 3737 cooling-maps { 3738 map0 { 3739 trip = <&cpu2_alert0>; 3740 cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3741 <&CPU1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3742 <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3743 <&CPU3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 3744 }; 3745 map1 { 3746 trip = <&cpu2_alert1>; 3747 cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3748 <&CPU1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3749 <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3750 <&CPU3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 3751 }; 3752 }; 3753 }; 3754 3755 cpu3-thermal { 3756 polling-delay-passive = <250>; 3757 polling-delay = <1000>; 3758 3759 thermal-sensors = <&tsens0 4>; 3760 3761 trips { 3762 cpu3_alert0: trip-point0 { 3763 temperature = <90000>; 3764 hysteresis = <2000>; 3765 type = "passive"; 3766 }; 3767 3768 cpu3_alert1: trip-point1 { 3769 temperature = <95000>; 3770 hysteresis = <2000>; 3771 type = "passive"; 3772 }; 3773 3774 cpu3_crit: cpu-crit { 3775 temperature = <110000>; 3776 hysteresis = <1000>; 3777 type = "critical"; 3778 }; 3779 }; 3780 3781 cooling-maps { 3782 map0 { 3783 trip = <&cpu3_alert0>; 3784 cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3785 <&CPU1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3786 <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3787 <&CPU3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 3788 }; 3789 map1 { 3790 trip = <&cpu3_alert1>; 3791 cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3792 <&CPU1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3793 <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3794 <&CPU3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 3795 }; 3796 }; 3797 }; 3798 3799 cpu4-top-thermal { 3800 polling-delay-passive = <250>; 3801 polling-delay = <1000>; 3802 3803 thermal-sensors = <&tsens0 7>; 3804 3805 trips { 3806 cpu4_top_alert0: trip-point0 { 3807 temperature = <90000>; 3808 hysteresis = <2000>; 3809 type = "passive"; 3810 }; 3811 3812 cpu4_top_alert1: trip-point1 { 3813 temperature = <95000>; 3814 hysteresis = <2000>; 3815 type = "passive"; 3816 }; 3817 3818 cpu4_top_crit: cpu-crit { 3819 temperature = <110000>; 3820 hysteresis = <1000>; 3821 type = "critical"; 3822 }; 3823 }; 3824 3825 cooling-maps { 3826 map0 { 3827 trip = <&cpu4_top_alert0>; 3828 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3829 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3830 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3831 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 3832 }; 3833 map1 { 3834 trip = <&cpu4_top_alert1>; 3835 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3836 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3837 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3838 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 3839 }; 3840 }; 3841 }; 3842 3843 cpu5-top-thermal { 3844 polling-delay-passive = <250>; 3845 polling-delay = <1000>; 3846 3847 thermal-sensors = <&tsens0 8>; 3848 3849 trips { 3850 cpu5_top_alert0: trip-point0 { 3851 temperature = <90000>; 3852 hysteresis = <2000>; 3853 type = "passive"; 3854 }; 3855 3856 cpu5_top_alert1: trip-point1 { 3857 temperature = <95000>; 3858 hysteresis = <2000>; 3859 type = "passive"; 3860 }; 3861 3862 cpu5_top_crit: cpu-crit { 3863 temperature = <110000>; 3864 hysteresis = <1000>; 3865 type = "critical"; 3866 }; 3867 }; 3868 3869 cooling-maps { 3870 map0 { 3871 trip = <&cpu5_top_alert0>; 3872 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3873 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3874 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3875 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 3876 }; 3877 map1 { 3878 trip = <&cpu5_top_alert1>; 3879 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3880 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3881 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3882 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 3883 }; 3884 }; 3885 }; 3886 3887 cpu6-top-thermal { 3888 polling-delay-passive = <250>; 3889 polling-delay = <1000>; 3890 3891 thermal-sensors = <&tsens0 9>; 3892 3893 trips { 3894 cpu6_top_alert0: trip-point0 { 3895 temperature = <90000>; 3896 hysteresis = <2000>; 3897 type = "passive"; 3898 }; 3899 3900 cpu6_top_alert1: trip-point1 { 3901 temperature = <95000>; 3902 hysteresis = <2000>; 3903 type = "passive"; 3904 }; 3905 3906 cpu6_top_crit: cpu-crit { 3907 temperature = <110000>; 3908 hysteresis = <1000>; 3909 type = "critical"; 3910 }; 3911 }; 3912 3913 cooling-maps { 3914 map0 { 3915 trip = <&cpu6_top_alert0>; 3916 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3917 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3918 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3919 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 3920 }; 3921 map1 { 3922 trip = <&cpu6_top_alert1>; 3923 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3924 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3925 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3926 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 3927 }; 3928 }; 3929 }; 3930 3931 cpu7-top-thermal { 3932 polling-delay-passive = <250>; 3933 polling-delay = <1000>; 3934 3935 thermal-sensors = <&tsens0 10>; 3936 3937 trips { 3938 cpu7_top_alert0: trip-point0 { 3939 temperature = <90000>; 3940 hysteresis = <2000>; 3941 type = "passive"; 3942 }; 3943 3944 cpu7_top_alert1: trip-point1 { 3945 temperature = <95000>; 3946 hysteresis = <2000>; 3947 type = "passive"; 3948 }; 3949 3950 cpu7_top_crit: cpu-crit { 3951 temperature = <110000>; 3952 hysteresis = <1000>; 3953 type = "critical"; 3954 }; 3955 }; 3956 3957 cooling-maps { 3958 map0 { 3959 trip = <&cpu7_top_alert0>; 3960 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3961 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3962 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3963 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 3964 }; 3965 map1 { 3966 trip = <&cpu7_top_alert1>; 3967 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3968 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3969 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3970 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 3971 }; 3972 }; 3973 }; 3974 3975 cpu4-bottom-thermal { 3976 polling-delay-passive = <250>; 3977 polling-delay = <1000>; 3978 3979 thermal-sensors = <&tsens0 11>; 3980 3981 trips { 3982 cpu4_bottom_alert0: trip-point0 { 3983 temperature = <90000>; 3984 hysteresis = <2000>; 3985 type = "passive"; 3986 }; 3987 3988 cpu4_bottom_alert1: trip-point1 { 3989 temperature = <95000>; 3990 hysteresis = <2000>; 3991 type = "passive"; 3992 }; 3993 3994 cpu4_bottom_crit: cpu-crit { 3995 temperature = <110000>; 3996 hysteresis = <1000>; 3997 type = "critical"; 3998 }; 3999 }; 4000 4001 cooling-maps { 4002 map0 { 4003 trip = <&cpu4_bottom_alert0>; 4004 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4005 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4006 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4007 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 4008 }; 4009 map1 { 4010 trip = <&cpu4_bottom_alert1>; 4011 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4012 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4013 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4014 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 4015 }; 4016 }; 4017 }; 4018 4019 cpu5-bottom-thermal { 4020 polling-delay-passive = <250>; 4021 polling-delay = <1000>; 4022 4023 thermal-sensors = <&tsens0 12>; 4024 4025 trips { 4026 cpu5_bottom_alert0: trip-point0 { 4027 temperature = <90000>; 4028 hysteresis = <2000>; 4029 type = "passive"; 4030 }; 4031 4032 cpu5_bottom_alert1: trip-point1 { 4033 temperature = <95000>; 4034 hysteresis = <2000>; 4035 type = "passive"; 4036 }; 4037 4038 cpu5_bottom_crit: cpu-crit { 4039 temperature = <110000>; 4040 hysteresis = <1000>; 4041 type = "critical"; 4042 }; 4043 }; 4044 4045 cooling-maps { 4046 map0 { 4047 trip = <&cpu5_bottom_alert0>; 4048 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4049 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4050 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4051 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 4052 }; 4053 map1 { 4054 trip = <&cpu5_bottom_alert1>; 4055 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4056 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4057 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4058 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 4059 }; 4060 }; 4061 }; 4062 4063 cpu6-bottom-thermal { 4064 polling-delay-passive = <250>; 4065 polling-delay = <1000>; 4066 4067 thermal-sensors = <&tsens0 13>; 4068 4069 trips { 4070 cpu6_bottom_alert0: trip-point0 { 4071 temperature = <90000>; 4072 hysteresis = <2000>; 4073 type = "passive"; 4074 }; 4075 4076 cpu6_bottom_alert1: trip-point1 { 4077 temperature = <95000>; 4078 hysteresis = <2000>; 4079 type = "passive"; 4080 }; 4081 4082 cpu6_bottom_crit: cpu-crit { 4083 temperature = <110000>; 4084 hysteresis = <1000>; 4085 type = "critical"; 4086 }; 4087 }; 4088 4089 cooling-maps { 4090 map0 { 4091 trip = <&cpu6_bottom_alert0>; 4092 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4093 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4094 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4095 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 4096 }; 4097 map1 { 4098 trip = <&cpu6_bottom_alert1>; 4099 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4100 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4101 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4102 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 4103 }; 4104 }; 4105 }; 4106 4107 cpu7-bottom-thermal { 4108 polling-delay-passive = <250>; 4109 polling-delay = <1000>; 4110 4111 thermal-sensors = <&tsens0 14>; 4112 4113 trips { 4114 cpu7_bottom_alert0: trip-point0 { 4115 temperature = <90000>; 4116 hysteresis = <2000>; 4117 type = "passive"; 4118 }; 4119 4120 cpu7_bottom_alert1: trip-point1 { 4121 temperature = <95000>; 4122 hysteresis = <2000>; 4123 type = "passive"; 4124 }; 4125 4126 cpu7_bottom_crit: cpu-crit { 4127 temperature = <110000>; 4128 hysteresis = <1000>; 4129 type = "critical"; 4130 }; 4131 }; 4132 4133 cooling-maps { 4134 map0 { 4135 trip = <&cpu7_bottom_alert0>; 4136 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4137 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4138 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4139 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 4140 }; 4141 map1 { 4142 trip = <&cpu7_bottom_alert1>; 4143 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4144 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4145 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4146 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 4147 }; 4148 }; 4149 }; 4150 4151 aoss0-thermal { 4152 polling-delay-passive = <250>; 4153 polling-delay = <1000>; 4154 4155 thermal-sensors = <&tsens0 0>; 4156 4157 trips { 4158 aoss0_alert0: trip-point0 { 4159 temperature = <90000>; 4160 hysteresis = <2000>; 4161 type = "hot"; 4162 }; 4163 }; 4164 }; 4165 4166 cluster0-thermal { 4167 polling-delay-passive = <250>; 4168 polling-delay = <1000>; 4169 4170 thermal-sensors = <&tsens0 5>; 4171 4172 trips { 4173 cluster0_alert0: trip-point0 { 4174 temperature = <90000>; 4175 hysteresis = <2000>; 4176 type = "hot"; 4177 }; 4178 cluster0_crit: cluster0_crit { 4179 temperature = <110000>; 4180 hysteresis = <2000>; 4181 type = "critical"; 4182 }; 4183 }; 4184 }; 4185 4186 cluster1-thermal { 4187 polling-delay-passive = <250>; 4188 polling-delay = <1000>; 4189 4190 thermal-sensors = <&tsens0 6>; 4191 4192 trips { 4193 cluster1_alert0: trip-point0 { 4194 temperature = <90000>; 4195 hysteresis = <2000>; 4196 type = "hot"; 4197 }; 4198 cluster1_crit: cluster1_crit { 4199 temperature = <110000>; 4200 hysteresis = <2000>; 4201 type = "critical"; 4202 }; 4203 }; 4204 }; 4205 4206 aoss1-thermal { 4207 polling-delay-passive = <250>; 4208 polling-delay = <1000>; 4209 4210 thermal-sensors = <&tsens1 0>; 4211 4212 trips { 4213 aoss1_alert0: trip-point0 { 4214 temperature = <90000>; 4215 hysteresis = <2000>; 4216 type = "hot"; 4217 }; 4218 }; 4219 }; 4220 4221 gpu-top-thermal { 4222 polling-delay-passive = <250>; 4223 polling-delay = <1000>; 4224 4225 thermal-sensors = <&tsens1 1>; 4226 4227 trips { 4228 gpu1_alert0: trip-point0 { 4229 temperature = <90000>; 4230 hysteresis = <1000>; 4231 type = "hot"; 4232 }; 4233 }; 4234 }; 4235 4236 gpu-bottom-thermal { 4237 polling-delay-passive = <250>; 4238 polling-delay = <1000>; 4239 4240 thermal-sensors = <&tsens1 2>; 4241 4242 trips { 4243 gpu2_alert0: trip-point0 { 4244 temperature = <90000>; 4245 hysteresis = <1000>; 4246 type = "hot"; 4247 }; 4248 }; 4249 }; 4250 4251 nspss1-thermal { 4252 polling-delay-passive = <250>; 4253 polling-delay = <1000>; 4254 4255 thermal-sensors = <&tsens1 3>; 4256 4257 trips { 4258 nspss1_alert0: trip-point0 { 4259 temperature = <90000>; 4260 hysteresis = <1000>; 4261 type = "hot"; 4262 }; 4263 }; 4264 }; 4265 4266 nspss2-thermal { 4267 polling-delay-passive = <250>; 4268 polling-delay = <1000>; 4269 4270 thermal-sensors = <&tsens1 4>; 4271 4272 trips { 4273 nspss2_alert0: trip-point0 { 4274 temperature = <90000>; 4275 hysteresis = <1000>; 4276 type = "hot"; 4277 }; 4278 }; 4279 }; 4280 4281 nspss3-thermal { 4282 polling-delay-passive = <250>; 4283 polling-delay = <1000>; 4284 4285 thermal-sensors = <&tsens1 5>; 4286 4287 trips { 4288 nspss3_alert0: trip-point0 { 4289 temperature = <90000>; 4290 hysteresis = <1000>; 4291 type = "hot"; 4292 }; 4293 }; 4294 }; 4295 4296 video-thermal { 4297 polling-delay-passive = <250>; 4298 polling-delay = <1000>; 4299 4300 thermal-sensors = <&tsens1 6>; 4301 4302 trips { 4303 video_alert0: trip-point0 { 4304 temperature = <90000>; 4305 hysteresis = <2000>; 4306 type = "hot"; 4307 }; 4308 }; 4309 }; 4310 4311 mem-thermal { 4312 polling-delay-passive = <250>; 4313 polling-delay = <1000>; 4314 4315 thermal-sensors = <&tsens1 7>; 4316 4317 trips { 4318 mem_alert0: trip-point0 { 4319 temperature = <90000>; 4320 hysteresis = <2000>; 4321 type = "hot"; 4322 }; 4323 }; 4324 }; 4325 4326 modem1-top-thermal { 4327 polling-delay-passive = <250>; 4328 polling-delay = <1000>; 4329 4330 thermal-sensors = <&tsens1 8>; 4331 4332 trips { 4333 modem1_alert0: trip-point0 { 4334 temperature = <90000>; 4335 hysteresis = <2000>; 4336 type = "hot"; 4337 }; 4338 }; 4339 }; 4340 4341 modem2-top-thermal { 4342 polling-delay-passive = <250>; 4343 polling-delay = <1000>; 4344 4345 thermal-sensors = <&tsens1 9>; 4346 4347 trips { 4348 modem2_alert0: trip-point0 { 4349 temperature = <90000>; 4350 hysteresis = <2000>; 4351 type = "hot"; 4352 }; 4353 }; 4354 }; 4355 4356 modem3-top-thermal { 4357 polling-delay-passive = <250>; 4358 polling-delay = <1000>; 4359 4360 thermal-sensors = <&tsens1 10>; 4361 4362 trips { 4363 modem3_alert0: trip-point0 { 4364 temperature = <90000>; 4365 hysteresis = <2000>; 4366 type = "hot"; 4367 }; 4368 }; 4369 }; 4370 4371 modem4-top-thermal { 4372 polling-delay-passive = <250>; 4373 polling-delay = <1000>; 4374 4375 thermal-sensors = <&tsens1 11>; 4376 4377 trips { 4378 modem4_alert0: trip-point0 { 4379 temperature = <90000>; 4380 hysteresis = <2000>; 4381 type = "hot"; 4382 }; 4383 }; 4384 }; 4385 4386 camera-top-thermal { 4387 polling-delay-passive = <250>; 4388 polling-delay = <1000>; 4389 4390 thermal-sensors = <&tsens1 12>; 4391 4392 trips { 4393 camera1_alert0: trip-point0 { 4394 temperature = <90000>; 4395 hysteresis = <2000>; 4396 type = "hot"; 4397 }; 4398 }; 4399 }; 4400 4401 cam-bottom-thermal { 4402 polling-delay-passive = <250>; 4403 polling-delay = <1000>; 4404 4405 thermal-sensors = <&tsens1 13>; 4406 4407 trips { 4408 camera2_alert0: trip-point0 { 4409 temperature = <90000>; 4410 hysteresis = <2000>; 4411 type = "hot"; 4412 }; 4413 }; 4414 }; 4415 }; 4416 4417 timer { 4418 compatible = "arm,armv8-timer"; 4419 interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>, 4420 <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>, 4421 <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>, 4422 <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>; 4423 }; 4424}; 4425