1// SPDX-License-Identifier: GPL-2.0 2/* 3 * SDM845 SoC device tree source 4 * 5 * Copyright (c) 2018, The Linux Foundation. All rights reserved. 6 */ 7 8#include <dt-bindings/clock/qcom,dispcc-sdm845.h> 9#include <dt-bindings/clock/qcom,gcc-sdm845.h> 10#include <dt-bindings/clock/qcom,gpucc-sdm845.h> 11#include <dt-bindings/clock/qcom,lpass-sdm845.h> 12#include <dt-bindings/clock/qcom,rpmh.h> 13#include <dt-bindings/clock/qcom,videocc-sdm845.h> 14#include <dt-bindings/interconnect/qcom,sdm845.h> 15#include <dt-bindings/interrupt-controller/arm-gic.h> 16#include <dt-bindings/phy/phy-qcom-qusb2.h> 17#include <dt-bindings/power/qcom-rpmpd.h> 18#include <dt-bindings/reset/qcom,sdm845-aoss.h> 19#include <dt-bindings/reset/qcom,sdm845-pdc.h> 20#include <dt-bindings/soc/qcom,rpmh-rsc.h> 21#include <dt-bindings/clock/qcom,gcc-sdm845.h> 22#include <dt-bindings/thermal/thermal.h> 23 24/ { 25 interrupt-parent = <&intc>; 26 27 #address-cells = <2>; 28 #size-cells = <2>; 29 30 aliases { 31 i2c0 = &i2c0; 32 i2c1 = &i2c1; 33 i2c2 = &i2c2; 34 i2c3 = &i2c3; 35 i2c4 = &i2c4; 36 i2c5 = &i2c5; 37 i2c6 = &i2c6; 38 i2c7 = &i2c7; 39 i2c8 = &i2c8; 40 i2c9 = &i2c9; 41 i2c10 = &i2c10; 42 i2c11 = &i2c11; 43 i2c12 = &i2c12; 44 i2c13 = &i2c13; 45 i2c14 = &i2c14; 46 i2c15 = &i2c15; 47 spi0 = &spi0; 48 spi1 = &spi1; 49 spi2 = &spi2; 50 spi3 = &spi3; 51 spi4 = &spi4; 52 spi5 = &spi5; 53 spi6 = &spi6; 54 spi7 = &spi7; 55 spi8 = &spi8; 56 spi9 = &spi9; 57 spi10 = &spi10; 58 spi11 = &spi11; 59 spi12 = &spi12; 60 spi13 = &spi13; 61 spi14 = &spi14; 62 spi15 = &spi15; 63 }; 64 65 chosen { }; 66 67 memory@80000000 { 68 device_type = "memory"; 69 /* We expect the bootloader to fill in the size */ 70 reg = <0 0x80000000 0 0>; 71 }; 72 73 reserved-memory { 74 #address-cells = <2>; 75 #size-cells = <2>; 76 ranges; 77 78 hyp_mem: memory@85700000 { 79 reg = <0 0x85700000 0 0x600000>; 80 no-map; 81 }; 82 83 xbl_mem: memory@85e00000 { 84 reg = <0 0x85e00000 0 0x100000>; 85 no-map; 86 }; 87 88 aop_mem: memory@85fc0000 { 89 reg = <0 0x85fc0000 0 0x20000>; 90 no-map; 91 }; 92 93 aop_cmd_db_mem: memory@85fe0000 { 94 compatible = "qcom,cmd-db"; 95 reg = <0x0 0x85fe0000 0 0x20000>; 96 no-map; 97 }; 98 99 smem_mem: memory@86000000 { 100 reg = <0x0 0x86000000 0 0x200000>; 101 no-map; 102 }; 103 104 tz_mem: memory@86200000 { 105 reg = <0 0x86200000 0 0x2d00000>; 106 no-map; 107 }; 108 109 rmtfs_mem: memory@88f00000 { 110 compatible = "qcom,rmtfs-mem"; 111 reg = <0 0x88f00000 0 0x200000>; 112 no-map; 113 114 qcom,client-id = <1>; 115 qcom,vmid = <15>; 116 }; 117 118 qseecom_mem: memory@8ab00000 { 119 reg = <0 0x8ab00000 0 0x1400000>; 120 no-map; 121 }; 122 123 camera_mem: memory@8bf00000 { 124 reg = <0 0x8bf00000 0 0x500000>; 125 no-map; 126 }; 127 128 ipa_fw_mem: memory@8c400000 { 129 reg = <0 0x8c400000 0 0x10000>; 130 no-map; 131 }; 132 133 ipa_gsi_mem: memory@8c410000 { 134 reg = <0 0x8c410000 0 0x5000>; 135 no-map; 136 }; 137 138 gpu_mem: memory@8c415000 { 139 reg = <0 0x8c415000 0 0x2000>; 140 no-map; 141 }; 142 143 adsp_mem: memory@8c500000 { 144 reg = <0 0x8c500000 0 0x1a00000>; 145 no-map; 146 }; 147 148 wlan_msa_mem: memory@8df00000 { 149 reg = <0 0x8df00000 0 0x100000>; 150 no-map; 151 }; 152 153 mpss_region: memory@8e000000 { 154 reg = <0 0x8e000000 0 0x7800000>; 155 no-map; 156 }; 157 158 venus_mem: memory@95800000 { 159 reg = <0 0x95800000 0 0x500000>; 160 no-map; 161 }; 162 163 cdsp_mem: memory@95d00000 { 164 reg = <0 0x95d00000 0 0x800000>; 165 no-map; 166 }; 167 168 mba_region: memory@96500000 { 169 reg = <0 0x96500000 0 0x200000>; 170 no-map; 171 }; 172 173 slpi_mem: memory@96700000 { 174 reg = <0 0x96700000 0 0x1400000>; 175 no-map; 176 }; 177 178 spss_mem: memory@97b00000 { 179 reg = <0 0x97b00000 0 0x100000>; 180 no-map; 181 }; 182 }; 183 184 cpus { 185 #address-cells = <2>; 186 #size-cells = <0>; 187 188 CPU0: cpu@0 { 189 device_type = "cpu"; 190 compatible = "qcom,kryo385"; 191 reg = <0x0 0x0>; 192 enable-method = "psci"; 193 cpu-idle-states = <&LITTLE_CPU_SLEEP_0 194 &LITTLE_CPU_SLEEP_1 195 &CLUSTER_SLEEP_0>; 196 capacity-dmips-mhz = <607>; 197 dynamic-power-coefficient = <100>; 198 qcom,freq-domain = <&cpufreq_hw 0>; 199 #cooling-cells = <2>; 200 next-level-cache = <&L2_0>; 201 L2_0: l2-cache { 202 compatible = "cache"; 203 next-level-cache = <&L3_0>; 204 L3_0: l3-cache { 205 compatible = "cache"; 206 }; 207 }; 208 }; 209 210 CPU1: cpu@100 { 211 device_type = "cpu"; 212 compatible = "qcom,kryo385"; 213 reg = <0x0 0x100>; 214 enable-method = "psci"; 215 cpu-idle-states = <&LITTLE_CPU_SLEEP_0 216 &LITTLE_CPU_SLEEP_1 217 &CLUSTER_SLEEP_0>; 218 capacity-dmips-mhz = <607>; 219 dynamic-power-coefficient = <100>; 220 qcom,freq-domain = <&cpufreq_hw 0>; 221 #cooling-cells = <2>; 222 next-level-cache = <&L2_100>; 223 L2_100: l2-cache { 224 compatible = "cache"; 225 next-level-cache = <&L3_0>; 226 }; 227 }; 228 229 CPU2: cpu@200 { 230 device_type = "cpu"; 231 compatible = "qcom,kryo385"; 232 reg = <0x0 0x200>; 233 enable-method = "psci"; 234 cpu-idle-states = <&LITTLE_CPU_SLEEP_0 235 &LITTLE_CPU_SLEEP_1 236 &CLUSTER_SLEEP_0>; 237 capacity-dmips-mhz = <607>; 238 dynamic-power-coefficient = <100>; 239 qcom,freq-domain = <&cpufreq_hw 0>; 240 #cooling-cells = <2>; 241 next-level-cache = <&L2_200>; 242 L2_200: l2-cache { 243 compatible = "cache"; 244 next-level-cache = <&L3_0>; 245 }; 246 }; 247 248 CPU3: cpu@300 { 249 device_type = "cpu"; 250 compatible = "qcom,kryo385"; 251 reg = <0x0 0x300>; 252 enable-method = "psci"; 253 cpu-idle-states = <&LITTLE_CPU_SLEEP_0 254 &LITTLE_CPU_SLEEP_1 255 &CLUSTER_SLEEP_0>; 256 capacity-dmips-mhz = <607>; 257 dynamic-power-coefficient = <100>; 258 qcom,freq-domain = <&cpufreq_hw 0>; 259 #cooling-cells = <2>; 260 next-level-cache = <&L2_300>; 261 L2_300: l2-cache { 262 compatible = "cache"; 263 next-level-cache = <&L3_0>; 264 }; 265 }; 266 267 CPU4: cpu@400 { 268 device_type = "cpu"; 269 compatible = "qcom,kryo385"; 270 reg = <0x0 0x400>; 271 enable-method = "psci"; 272 capacity-dmips-mhz = <1024>; 273 cpu-idle-states = <&BIG_CPU_SLEEP_0 274 &BIG_CPU_SLEEP_1 275 &CLUSTER_SLEEP_0>; 276 dynamic-power-coefficient = <396>; 277 qcom,freq-domain = <&cpufreq_hw 1>; 278 #cooling-cells = <2>; 279 next-level-cache = <&L2_400>; 280 L2_400: l2-cache { 281 compatible = "cache"; 282 next-level-cache = <&L3_0>; 283 }; 284 }; 285 286 CPU5: cpu@500 { 287 device_type = "cpu"; 288 compatible = "qcom,kryo385"; 289 reg = <0x0 0x500>; 290 enable-method = "psci"; 291 capacity-dmips-mhz = <1024>; 292 cpu-idle-states = <&BIG_CPU_SLEEP_0 293 &BIG_CPU_SLEEP_1 294 &CLUSTER_SLEEP_0>; 295 dynamic-power-coefficient = <396>; 296 qcom,freq-domain = <&cpufreq_hw 1>; 297 #cooling-cells = <2>; 298 next-level-cache = <&L2_500>; 299 L2_500: l2-cache { 300 compatible = "cache"; 301 next-level-cache = <&L3_0>; 302 }; 303 }; 304 305 CPU6: cpu@600 { 306 device_type = "cpu"; 307 compatible = "qcom,kryo385"; 308 reg = <0x0 0x600>; 309 enable-method = "psci"; 310 capacity-dmips-mhz = <1024>; 311 cpu-idle-states = <&BIG_CPU_SLEEP_0 312 &BIG_CPU_SLEEP_1 313 &CLUSTER_SLEEP_0>; 314 dynamic-power-coefficient = <396>; 315 qcom,freq-domain = <&cpufreq_hw 1>; 316 #cooling-cells = <2>; 317 next-level-cache = <&L2_600>; 318 L2_600: l2-cache { 319 compatible = "cache"; 320 next-level-cache = <&L3_0>; 321 }; 322 }; 323 324 CPU7: cpu@700 { 325 device_type = "cpu"; 326 compatible = "qcom,kryo385"; 327 reg = <0x0 0x700>; 328 enable-method = "psci"; 329 capacity-dmips-mhz = <1024>; 330 cpu-idle-states = <&BIG_CPU_SLEEP_0 331 &BIG_CPU_SLEEP_1 332 &CLUSTER_SLEEP_0>; 333 dynamic-power-coefficient = <396>; 334 qcom,freq-domain = <&cpufreq_hw 1>; 335 #cooling-cells = <2>; 336 next-level-cache = <&L2_700>; 337 L2_700: l2-cache { 338 compatible = "cache"; 339 next-level-cache = <&L3_0>; 340 }; 341 }; 342 343 cpu-map { 344 cluster0 { 345 core0 { 346 cpu = <&CPU0>; 347 }; 348 349 core1 { 350 cpu = <&CPU1>; 351 }; 352 353 core2 { 354 cpu = <&CPU2>; 355 }; 356 357 core3 { 358 cpu = <&CPU3>; 359 }; 360 361 core4 { 362 cpu = <&CPU4>; 363 }; 364 365 core5 { 366 cpu = <&CPU5>; 367 }; 368 369 core6 { 370 cpu = <&CPU6>; 371 }; 372 373 core7 { 374 cpu = <&CPU7>; 375 }; 376 }; 377 }; 378 379 idle-states { 380 entry-method = "psci"; 381 382 LITTLE_CPU_SLEEP_0: cpu-sleep-0-0 { 383 compatible = "arm,idle-state"; 384 idle-state-name = "little-power-down"; 385 arm,psci-suspend-param = <0x40000003>; 386 entry-latency-us = <350>; 387 exit-latency-us = <461>; 388 min-residency-us = <1890>; 389 local-timer-stop; 390 }; 391 392 LITTLE_CPU_SLEEP_1: cpu-sleep-0-1 { 393 compatible = "arm,idle-state"; 394 idle-state-name = "little-rail-power-down"; 395 arm,psci-suspend-param = <0x40000004>; 396 entry-latency-us = <360>; 397 exit-latency-us = <531>; 398 min-residency-us = <3934>; 399 local-timer-stop; 400 }; 401 402 BIG_CPU_SLEEP_0: cpu-sleep-1-0 { 403 compatible = "arm,idle-state"; 404 idle-state-name = "big-power-down"; 405 arm,psci-suspend-param = <0x40000003>; 406 entry-latency-us = <264>; 407 exit-latency-us = <621>; 408 min-residency-us = <952>; 409 local-timer-stop; 410 }; 411 412 BIG_CPU_SLEEP_1: cpu-sleep-1-1 { 413 compatible = "arm,idle-state"; 414 idle-state-name = "big-rail-power-down"; 415 arm,psci-suspend-param = <0x40000004>; 416 entry-latency-us = <702>; 417 exit-latency-us = <1061>; 418 min-residency-us = <4488>; 419 local-timer-stop; 420 }; 421 422 CLUSTER_SLEEP_0: cluster-sleep-0 { 423 compatible = "arm,idle-state"; 424 idle-state-name = "cluster-power-down"; 425 arm,psci-suspend-param = <0x400000F4>; 426 entry-latency-us = <3263>; 427 exit-latency-us = <6562>; 428 min-residency-us = <9987>; 429 local-timer-stop; 430 }; 431 }; 432 }; 433 434 pmu { 435 compatible = "arm,armv8-pmuv3"; 436 interrupts = <GIC_PPI 5 IRQ_TYPE_LEVEL_HIGH>; 437 }; 438 439 timer { 440 compatible = "arm,armv8-timer"; 441 interrupts = <GIC_PPI 1 IRQ_TYPE_LEVEL_LOW>, 442 <GIC_PPI 2 IRQ_TYPE_LEVEL_LOW>, 443 <GIC_PPI 3 IRQ_TYPE_LEVEL_LOW>, 444 <GIC_PPI 0 IRQ_TYPE_LEVEL_LOW>; 445 }; 446 447 clocks { 448 xo_board: xo-board { 449 compatible = "fixed-clock"; 450 #clock-cells = <0>; 451 clock-frequency = <38400000>; 452 clock-output-names = "xo_board"; 453 }; 454 455 sleep_clk: sleep-clk { 456 compatible = "fixed-clock"; 457 #clock-cells = <0>; 458 clock-frequency = <32764>; 459 }; 460 }; 461 462 firmware { 463 scm { 464 compatible = "qcom,scm-sdm845", "qcom,scm"; 465 }; 466 }; 467 468 adsp_pas: remoteproc-adsp { 469 compatible = "qcom,sdm845-adsp-pas"; 470 471 interrupts-extended = <&intc GIC_SPI 162 IRQ_TYPE_EDGE_RISING>, 472 <&adsp_smp2p_in 0 IRQ_TYPE_EDGE_RISING>, 473 <&adsp_smp2p_in 1 IRQ_TYPE_EDGE_RISING>, 474 <&adsp_smp2p_in 2 IRQ_TYPE_EDGE_RISING>, 475 <&adsp_smp2p_in 3 IRQ_TYPE_EDGE_RISING>; 476 interrupt-names = "wdog", "fatal", "ready", 477 "handover", "stop-ack"; 478 479 clocks = <&rpmhcc RPMH_CXO_CLK>; 480 clock-names = "xo"; 481 482 memory-region = <&adsp_mem>; 483 484 qcom,smem-states = <&adsp_smp2p_out 0>; 485 qcom,smem-state-names = "stop"; 486 487 status = "disabled"; 488 489 glink-edge { 490 interrupts = <GIC_SPI 156 IRQ_TYPE_EDGE_RISING>; 491 label = "lpass"; 492 qcom,remote-pid = <2>; 493 mboxes = <&apss_shared 8>; 494 fastrpc { 495 compatible = "qcom,fastrpc"; 496 qcom,glink-channels = "fastrpcglink-apps-dsp"; 497 label = "adsp"; 498 #address-cells = <1>; 499 #size-cells = <0>; 500 501 compute-cb@3 { 502 compatible = "qcom,fastrpc-compute-cb"; 503 reg = <3>; 504 iommus = <&apps_smmu 0x1823 0x0>; 505 }; 506 507 compute-cb@4 { 508 compatible = "qcom,fastrpc-compute-cb"; 509 reg = <4>; 510 iommus = <&apps_smmu 0x1824 0x0>; 511 }; 512 }; 513 }; 514 }; 515 516 cdsp_pas: remoteproc-cdsp { 517 compatible = "qcom,sdm845-cdsp-pas"; 518 519 interrupts-extended = <&intc GIC_SPI 578 IRQ_TYPE_EDGE_RISING>, 520 <&cdsp_smp2p_in 0 IRQ_TYPE_EDGE_RISING>, 521 <&cdsp_smp2p_in 1 IRQ_TYPE_EDGE_RISING>, 522 <&cdsp_smp2p_in 2 IRQ_TYPE_EDGE_RISING>, 523 <&cdsp_smp2p_in 3 IRQ_TYPE_EDGE_RISING>; 524 interrupt-names = "wdog", "fatal", "ready", 525 "handover", "stop-ack"; 526 527 clocks = <&rpmhcc RPMH_CXO_CLK>; 528 clock-names = "xo"; 529 530 memory-region = <&cdsp_mem>; 531 532 qcom,smem-states = <&cdsp_smp2p_out 0>; 533 qcom,smem-state-names = "stop"; 534 535 status = "disabled"; 536 537 glink-edge { 538 interrupts = <GIC_SPI 574 IRQ_TYPE_EDGE_RISING>; 539 label = "turing"; 540 qcom,remote-pid = <5>; 541 mboxes = <&apss_shared 4>; 542 fastrpc { 543 compatible = "qcom,fastrpc"; 544 qcom,glink-channels = "fastrpcglink-apps-dsp"; 545 label = "cdsp"; 546 #address-cells = <1>; 547 #size-cells = <0>; 548 549 compute-cb@1 { 550 compatible = "qcom,fastrpc-compute-cb"; 551 reg = <1>; 552 iommus = <&apps_smmu 0x1401 0x30>; 553 }; 554 555 compute-cb@2 { 556 compatible = "qcom,fastrpc-compute-cb"; 557 reg = <2>; 558 iommus = <&apps_smmu 0x1402 0x30>; 559 }; 560 561 compute-cb@3 { 562 compatible = "qcom,fastrpc-compute-cb"; 563 reg = <3>; 564 iommus = <&apps_smmu 0x1403 0x30>; 565 }; 566 567 compute-cb@4 { 568 compatible = "qcom,fastrpc-compute-cb"; 569 reg = <4>; 570 iommus = <&apps_smmu 0x1404 0x30>; 571 }; 572 573 compute-cb@5 { 574 compatible = "qcom,fastrpc-compute-cb"; 575 reg = <5>; 576 iommus = <&apps_smmu 0x1405 0x30>; 577 }; 578 579 compute-cb@6 { 580 compatible = "qcom,fastrpc-compute-cb"; 581 reg = <6>; 582 iommus = <&apps_smmu 0x1406 0x30>; 583 }; 584 585 compute-cb@7 { 586 compatible = "qcom,fastrpc-compute-cb"; 587 reg = <7>; 588 iommus = <&apps_smmu 0x1407 0x30>; 589 }; 590 591 compute-cb@8 { 592 compatible = "qcom,fastrpc-compute-cb"; 593 reg = <8>; 594 iommus = <&apps_smmu 0x1408 0x30>; 595 }; 596 }; 597 }; 598 }; 599 600 tcsr_mutex: hwlock { 601 compatible = "qcom,tcsr-mutex"; 602 syscon = <&tcsr_mutex_regs 0 0x1000>; 603 #hwlock-cells = <1>; 604 }; 605 606 smem { 607 compatible = "qcom,smem"; 608 memory-region = <&smem_mem>; 609 hwlocks = <&tcsr_mutex 3>; 610 }; 611 612 smp2p-cdsp { 613 compatible = "qcom,smp2p"; 614 qcom,smem = <94>, <432>; 615 616 interrupts = <GIC_SPI 576 IRQ_TYPE_EDGE_RISING>; 617 618 mboxes = <&apss_shared 6>; 619 620 qcom,local-pid = <0>; 621 qcom,remote-pid = <5>; 622 623 cdsp_smp2p_out: master-kernel { 624 qcom,entry-name = "master-kernel"; 625 #qcom,smem-state-cells = <1>; 626 }; 627 628 cdsp_smp2p_in: slave-kernel { 629 qcom,entry-name = "slave-kernel"; 630 631 interrupt-controller; 632 #interrupt-cells = <2>; 633 }; 634 }; 635 636 smp2p-lpass { 637 compatible = "qcom,smp2p"; 638 qcom,smem = <443>, <429>; 639 640 interrupts = <GIC_SPI 158 IRQ_TYPE_EDGE_RISING>; 641 642 mboxes = <&apss_shared 10>; 643 644 qcom,local-pid = <0>; 645 qcom,remote-pid = <2>; 646 647 adsp_smp2p_out: master-kernel { 648 qcom,entry-name = "master-kernel"; 649 #qcom,smem-state-cells = <1>; 650 }; 651 652 adsp_smp2p_in: slave-kernel { 653 qcom,entry-name = "slave-kernel"; 654 655 interrupt-controller; 656 #interrupt-cells = <2>; 657 }; 658 }; 659 660 smp2p-mpss { 661 compatible = "qcom,smp2p"; 662 qcom,smem = <435>, <428>; 663 interrupts = <GIC_SPI 451 IRQ_TYPE_EDGE_RISING>; 664 mboxes = <&apss_shared 14>; 665 qcom,local-pid = <0>; 666 qcom,remote-pid = <1>; 667 668 modem_smp2p_out: master-kernel { 669 qcom,entry-name = "master-kernel"; 670 #qcom,smem-state-cells = <1>; 671 }; 672 673 modem_smp2p_in: slave-kernel { 674 qcom,entry-name = "slave-kernel"; 675 interrupt-controller; 676 #interrupt-cells = <2>; 677 }; 678 }; 679 680 smp2p-slpi { 681 compatible = "qcom,smp2p"; 682 qcom,smem = <481>, <430>; 683 interrupts = <GIC_SPI 172 IRQ_TYPE_EDGE_RISING>; 684 mboxes = <&apss_shared 26>; 685 qcom,local-pid = <0>; 686 qcom,remote-pid = <3>; 687 688 slpi_smp2p_out: master-kernel { 689 qcom,entry-name = "master-kernel"; 690 #qcom,smem-state-cells = <1>; 691 }; 692 693 slpi_smp2p_in: slave-kernel { 694 qcom,entry-name = "slave-kernel"; 695 interrupt-controller; 696 #interrupt-cells = <2>; 697 }; 698 }; 699 700 psci { 701 compatible = "arm,psci-1.0"; 702 method = "smc"; 703 }; 704 705 soc: soc@0 { 706 #address-cells = <2>; 707 #size-cells = <2>; 708 ranges = <0 0 0 0 0x10 0>; 709 dma-ranges = <0 0 0 0 0x10 0>; 710 compatible = "simple-bus"; 711 712 gcc: clock-controller@100000 { 713 compatible = "qcom,gcc-sdm845"; 714 reg = <0 0x00100000 0 0x1f0000>; 715 #clock-cells = <1>; 716 #reset-cells = <1>; 717 #power-domain-cells = <1>; 718 }; 719 720 qfprom@784000 { 721 compatible = "qcom,qfprom"; 722 reg = <0 0x00784000 0 0x8ff>; 723 #address-cells = <1>; 724 #size-cells = <1>; 725 726 qusb2p_hstx_trim: hstx-trim-primary@1eb { 727 reg = <0x1eb 0x1>; 728 bits = <1 4>; 729 }; 730 731 qusb2s_hstx_trim: hstx-trim-secondary@1eb { 732 reg = <0x1eb 0x2>; 733 bits = <6 4>; 734 }; 735 }; 736 737 rng: rng@793000 { 738 compatible = "qcom,prng-ee"; 739 reg = <0 0x00793000 0 0x1000>; 740 clocks = <&gcc GCC_PRNG_AHB_CLK>; 741 clock-names = "core"; 742 }; 743 744 qupv3_id_0: geniqup@8c0000 { 745 compatible = "qcom,geni-se-qup"; 746 reg = <0 0x008c0000 0 0x6000>; 747 clock-names = "m-ahb", "s-ahb"; 748 clocks = <&gcc GCC_QUPV3_WRAP_0_M_AHB_CLK>, 749 <&gcc GCC_QUPV3_WRAP_0_S_AHB_CLK>; 750 #address-cells = <2>; 751 #size-cells = <2>; 752 ranges; 753 status = "disabled"; 754 755 i2c0: i2c@880000 { 756 compatible = "qcom,geni-i2c"; 757 reg = <0 0x00880000 0 0x4000>; 758 clock-names = "se"; 759 clocks = <&gcc GCC_QUPV3_WRAP0_S0_CLK>; 760 pinctrl-names = "default"; 761 pinctrl-0 = <&qup_i2c0_default>; 762 interrupts = <GIC_SPI 601 IRQ_TYPE_LEVEL_HIGH>; 763 #address-cells = <1>; 764 #size-cells = <0>; 765 status = "disabled"; 766 }; 767 768 spi0: spi@880000 { 769 compatible = "qcom,geni-spi"; 770 reg = <0 0x00880000 0 0x4000>; 771 clock-names = "se"; 772 clocks = <&gcc GCC_QUPV3_WRAP0_S0_CLK>; 773 pinctrl-names = "default"; 774 pinctrl-0 = <&qup_spi0_default>; 775 interrupts = <GIC_SPI 601 IRQ_TYPE_LEVEL_HIGH>; 776 #address-cells = <1>; 777 #size-cells = <0>; 778 status = "disabled"; 779 }; 780 781 uart0: serial@880000 { 782 compatible = "qcom,geni-uart"; 783 reg = <0 0x00880000 0 0x4000>; 784 clock-names = "se"; 785 clocks = <&gcc GCC_QUPV3_WRAP0_S0_CLK>; 786 pinctrl-names = "default"; 787 pinctrl-0 = <&qup_uart0_default>; 788 interrupts = <GIC_SPI 601 IRQ_TYPE_LEVEL_HIGH>; 789 status = "disabled"; 790 }; 791 792 i2c1: i2c@884000 { 793 compatible = "qcom,geni-i2c"; 794 reg = <0 0x00884000 0 0x4000>; 795 clock-names = "se"; 796 clocks = <&gcc GCC_QUPV3_WRAP0_S1_CLK>; 797 pinctrl-names = "default"; 798 pinctrl-0 = <&qup_i2c1_default>; 799 interrupts = <GIC_SPI 602 IRQ_TYPE_LEVEL_HIGH>; 800 #address-cells = <1>; 801 #size-cells = <0>; 802 status = "disabled"; 803 }; 804 805 spi1: spi@884000 { 806 compatible = "qcom,geni-spi"; 807 reg = <0 0x00884000 0 0x4000>; 808 clock-names = "se"; 809 clocks = <&gcc GCC_QUPV3_WRAP0_S1_CLK>; 810 pinctrl-names = "default"; 811 pinctrl-0 = <&qup_spi1_default>; 812 interrupts = <GIC_SPI 602 IRQ_TYPE_LEVEL_HIGH>; 813 #address-cells = <1>; 814 #size-cells = <0>; 815 status = "disabled"; 816 }; 817 818 uart1: serial@884000 { 819 compatible = "qcom,geni-uart"; 820 reg = <0 0x00884000 0 0x4000>; 821 clock-names = "se"; 822 clocks = <&gcc GCC_QUPV3_WRAP0_S1_CLK>; 823 pinctrl-names = "default"; 824 pinctrl-0 = <&qup_uart1_default>; 825 interrupts = <GIC_SPI 602 IRQ_TYPE_LEVEL_HIGH>; 826 status = "disabled"; 827 }; 828 829 i2c2: i2c@888000 { 830 compatible = "qcom,geni-i2c"; 831 reg = <0 0x00888000 0 0x4000>; 832 clock-names = "se"; 833 clocks = <&gcc GCC_QUPV3_WRAP0_S2_CLK>; 834 pinctrl-names = "default"; 835 pinctrl-0 = <&qup_i2c2_default>; 836 interrupts = <GIC_SPI 603 IRQ_TYPE_LEVEL_HIGH>; 837 #address-cells = <1>; 838 #size-cells = <0>; 839 status = "disabled"; 840 }; 841 842 spi2: spi@888000 { 843 compatible = "qcom,geni-spi"; 844 reg = <0 0x00888000 0 0x4000>; 845 clock-names = "se"; 846 clocks = <&gcc GCC_QUPV3_WRAP0_S2_CLK>; 847 pinctrl-names = "default"; 848 pinctrl-0 = <&qup_spi2_default>; 849 interrupts = <GIC_SPI 603 IRQ_TYPE_LEVEL_HIGH>; 850 #address-cells = <1>; 851 #size-cells = <0>; 852 status = "disabled"; 853 }; 854 855 uart2: serial@888000 { 856 compatible = "qcom,geni-uart"; 857 reg = <0 0x00888000 0 0x4000>; 858 clock-names = "se"; 859 clocks = <&gcc GCC_QUPV3_WRAP0_S2_CLK>; 860 pinctrl-names = "default"; 861 pinctrl-0 = <&qup_uart2_default>; 862 interrupts = <GIC_SPI 603 IRQ_TYPE_LEVEL_HIGH>; 863 status = "disabled"; 864 }; 865 866 i2c3: i2c@88c000 { 867 compatible = "qcom,geni-i2c"; 868 reg = <0 0x0088c000 0 0x4000>; 869 clock-names = "se"; 870 clocks = <&gcc GCC_QUPV3_WRAP0_S3_CLK>; 871 pinctrl-names = "default"; 872 pinctrl-0 = <&qup_i2c3_default>; 873 interrupts = <GIC_SPI 604 IRQ_TYPE_LEVEL_HIGH>; 874 #address-cells = <1>; 875 #size-cells = <0>; 876 status = "disabled"; 877 }; 878 879 spi3: spi@88c000 { 880 compatible = "qcom,geni-spi"; 881 reg = <0 0x0088c000 0 0x4000>; 882 clock-names = "se"; 883 clocks = <&gcc GCC_QUPV3_WRAP0_S3_CLK>; 884 pinctrl-names = "default"; 885 pinctrl-0 = <&qup_spi3_default>; 886 interrupts = <GIC_SPI 604 IRQ_TYPE_LEVEL_HIGH>; 887 #address-cells = <1>; 888 #size-cells = <0>; 889 status = "disabled"; 890 }; 891 892 uart3: serial@88c000 { 893 compatible = "qcom,geni-uart"; 894 reg = <0 0x0088c000 0 0x4000>; 895 clock-names = "se"; 896 clocks = <&gcc GCC_QUPV3_WRAP0_S3_CLK>; 897 pinctrl-names = "default"; 898 pinctrl-0 = <&qup_uart3_default>; 899 interrupts = <GIC_SPI 604 IRQ_TYPE_LEVEL_HIGH>; 900 status = "disabled"; 901 }; 902 903 i2c4: i2c@890000 { 904 compatible = "qcom,geni-i2c"; 905 reg = <0 0x00890000 0 0x4000>; 906 clock-names = "se"; 907 clocks = <&gcc GCC_QUPV3_WRAP0_S4_CLK>; 908 pinctrl-names = "default"; 909 pinctrl-0 = <&qup_i2c4_default>; 910 interrupts = <GIC_SPI 605 IRQ_TYPE_LEVEL_HIGH>; 911 #address-cells = <1>; 912 #size-cells = <0>; 913 status = "disabled"; 914 }; 915 916 spi4: spi@890000 { 917 compatible = "qcom,geni-spi"; 918 reg = <0 0x00890000 0 0x4000>; 919 clock-names = "se"; 920 clocks = <&gcc GCC_QUPV3_WRAP0_S4_CLK>; 921 pinctrl-names = "default"; 922 pinctrl-0 = <&qup_spi4_default>; 923 interrupts = <GIC_SPI 605 IRQ_TYPE_LEVEL_HIGH>; 924 #address-cells = <1>; 925 #size-cells = <0>; 926 status = "disabled"; 927 }; 928 929 uart4: serial@890000 { 930 compatible = "qcom,geni-uart"; 931 reg = <0 0x00890000 0 0x4000>; 932 clock-names = "se"; 933 clocks = <&gcc GCC_QUPV3_WRAP0_S4_CLK>; 934 pinctrl-names = "default"; 935 pinctrl-0 = <&qup_uart4_default>; 936 interrupts = <GIC_SPI 605 IRQ_TYPE_LEVEL_HIGH>; 937 status = "disabled"; 938 }; 939 940 i2c5: i2c@894000 { 941 compatible = "qcom,geni-i2c"; 942 reg = <0 0x00894000 0 0x4000>; 943 clock-names = "se"; 944 clocks = <&gcc GCC_QUPV3_WRAP0_S5_CLK>; 945 pinctrl-names = "default"; 946 pinctrl-0 = <&qup_i2c5_default>; 947 interrupts = <GIC_SPI 606 IRQ_TYPE_LEVEL_HIGH>; 948 #address-cells = <1>; 949 #size-cells = <0>; 950 status = "disabled"; 951 }; 952 953 spi5: spi@894000 { 954 compatible = "qcom,geni-spi"; 955 reg = <0 0x00894000 0 0x4000>; 956 clock-names = "se"; 957 clocks = <&gcc GCC_QUPV3_WRAP0_S5_CLK>; 958 pinctrl-names = "default"; 959 pinctrl-0 = <&qup_spi5_default>; 960 interrupts = <GIC_SPI 606 IRQ_TYPE_LEVEL_HIGH>; 961 #address-cells = <1>; 962 #size-cells = <0>; 963 status = "disabled"; 964 }; 965 966 uart5: serial@894000 { 967 compatible = "qcom,geni-uart"; 968 reg = <0 0x00894000 0 0x4000>; 969 clock-names = "se"; 970 clocks = <&gcc GCC_QUPV3_WRAP0_S5_CLK>; 971 pinctrl-names = "default"; 972 pinctrl-0 = <&qup_uart5_default>; 973 interrupts = <GIC_SPI 606 IRQ_TYPE_LEVEL_HIGH>; 974 status = "disabled"; 975 }; 976 977 i2c6: i2c@898000 { 978 compatible = "qcom,geni-i2c"; 979 reg = <0 0x00898000 0 0x4000>; 980 clock-names = "se"; 981 clocks = <&gcc GCC_QUPV3_WRAP0_S6_CLK>; 982 pinctrl-names = "default"; 983 pinctrl-0 = <&qup_i2c6_default>; 984 interrupts = <GIC_SPI 607 IRQ_TYPE_LEVEL_HIGH>; 985 #address-cells = <1>; 986 #size-cells = <0>; 987 status = "disabled"; 988 }; 989 990 spi6: spi@898000 { 991 compatible = "qcom,geni-spi"; 992 reg = <0 0x00898000 0 0x4000>; 993 clock-names = "se"; 994 clocks = <&gcc GCC_QUPV3_WRAP0_S6_CLK>; 995 pinctrl-names = "default"; 996 pinctrl-0 = <&qup_spi6_default>; 997 interrupts = <GIC_SPI 607 IRQ_TYPE_LEVEL_HIGH>; 998 #address-cells = <1>; 999 #size-cells = <0>; 1000 status = "disabled"; 1001 }; 1002 1003 uart6: serial@898000 { 1004 compatible = "qcom,geni-uart"; 1005 reg = <0 0x00898000 0 0x4000>; 1006 clock-names = "se"; 1007 clocks = <&gcc GCC_QUPV3_WRAP0_S6_CLK>; 1008 pinctrl-names = "default"; 1009 pinctrl-0 = <&qup_uart6_default>; 1010 interrupts = <GIC_SPI 607 IRQ_TYPE_LEVEL_HIGH>; 1011 status = "disabled"; 1012 }; 1013 1014 i2c7: i2c@89c000 { 1015 compatible = "qcom,geni-i2c"; 1016 reg = <0 0x0089c000 0 0x4000>; 1017 clock-names = "se"; 1018 clocks = <&gcc GCC_QUPV3_WRAP0_S7_CLK>; 1019 pinctrl-names = "default"; 1020 pinctrl-0 = <&qup_i2c7_default>; 1021 interrupts = <GIC_SPI 608 IRQ_TYPE_LEVEL_HIGH>; 1022 #address-cells = <1>; 1023 #size-cells = <0>; 1024 status = "disabled"; 1025 }; 1026 1027 spi7: spi@89c000 { 1028 compatible = "qcom,geni-spi"; 1029 reg = <0 0x0089c000 0 0x4000>; 1030 clock-names = "se"; 1031 clocks = <&gcc GCC_QUPV3_WRAP0_S7_CLK>; 1032 pinctrl-names = "default"; 1033 pinctrl-0 = <&qup_spi7_default>; 1034 interrupts = <GIC_SPI 608 IRQ_TYPE_LEVEL_HIGH>; 1035 #address-cells = <1>; 1036 #size-cells = <0>; 1037 status = "disabled"; 1038 }; 1039 1040 uart7: serial@89c000 { 1041 compatible = "qcom,geni-uart"; 1042 reg = <0 0x0089c000 0 0x4000>; 1043 clock-names = "se"; 1044 clocks = <&gcc GCC_QUPV3_WRAP0_S7_CLK>; 1045 pinctrl-names = "default"; 1046 pinctrl-0 = <&qup_uart7_default>; 1047 interrupts = <GIC_SPI 608 IRQ_TYPE_LEVEL_HIGH>; 1048 status = "disabled"; 1049 }; 1050 }; 1051 1052 qupv3_id_1: geniqup@ac0000 { 1053 compatible = "qcom,geni-se-qup"; 1054 reg = <0 0x00ac0000 0 0x6000>; 1055 clock-names = "m-ahb", "s-ahb"; 1056 clocks = <&gcc GCC_QUPV3_WRAP_1_M_AHB_CLK>, 1057 <&gcc GCC_QUPV3_WRAP_1_S_AHB_CLK>; 1058 #address-cells = <2>; 1059 #size-cells = <2>; 1060 ranges; 1061 status = "disabled"; 1062 1063 i2c8: i2c@a80000 { 1064 compatible = "qcom,geni-i2c"; 1065 reg = <0 0x00a80000 0 0x4000>; 1066 clock-names = "se"; 1067 clocks = <&gcc GCC_QUPV3_WRAP1_S0_CLK>; 1068 pinctrl-names = "default"; 1069 pinctrl-0 = <&qup_i2c8_default>; 1070 interrupts = <GIC_SPI 353 IRQ_TYPE_LEVEL_HIGH>; 1071 #address-cells = <1>; 1072 #size-cells = <0>; 1073 status = "disabled"; 1074 }; 1075 1076 spi8: spi@a80000 { 1077 compatible = "qcom,geni-spi"; 1078 reg = <0 0x00a80000 0 0x4000>; 1079 clock-names = "se"; 1080 clocks = <&gcc GCC_QUPV3_WRAP1_S0_CLK>; 1081 pinctrl-names = "default"; 1082 pinctrl-0 = <&qup_spi8_default>; 1083 interrupts = <GIC_SPI 353 IRQ_TYPE_LEVEL_HIGH>; 1084 #address-cells = <1>; 1085 #size-cells = <0>; 1086 status = "disabled"; 1087 }; 1088 1089 uart8: serial@a80000 { 1090 compatible = "qcom,geni-uart"; 1091 reg = <0 0x00a80000 0 0x4000>; 1092 clock-names = "se"; 1093 clocks = <&gcc GCC_QUPV3_WRAP1_S0_CLK>; 1094 pinctrl-names = "default"; 1095 pinctrl-0 = <&qup_uart8_default>; 1096 interrupts = <GIC_SPI 353 IRQ_TYPE_LEVEL_HIGH>; 1097 status = "disabled"; 1098 }; 1099 1100 i2c9: i2c@a84000 { 1101 compatible = "qcom,geni-i2c"; 1102 reg = <0 0x00a84000 0 0x4000>; 1103 clock-names = "se"; 1104 clocks = <&gcc GCC_QUPV3_WRAP1_S1_CLK>; 1105 pinctrl-names = "default"; 1106 pinctrl-0 = <&qup_i2c9_default>; 1107 interrupts = <GIC_SPI 354 IRQ_TYPE_LEVEL_HIGH>; 1108 #address-cells = <1>; 1109 #size-cells = <0>; 1110 status = "disabled"; 1111 }; 1112 1113 spi9: spi@a84000 { 1114 compatible = "qcom,geni-spi"; 1115 reg = <0 0x00a84000 0 0x4000>; 1116 clock-names = "se"; 1117 clocks = <&gcc GCC_QUPV3_WRAP1_S1_CLK>; 1118 pinctrl-names = "default"; 1119 pinctrl-0 = <&qup_spi9_default>; 1120 interrupts = <GIC_SPI 354 IRQ_TYPE_LEVEL_HIGH>; 1121 #address-cells = <1>; 1122 #size-cells = <0>; 1123 status = "disabled"; 1124 }; 1125 1126 uart9: serial@a84000 { 1127 compatible = "qcom,geni-debug-uart"; 1128 reg = <0 0x00a84000 0 0x4000>; 1129 clock-names = "se"; 1130 clocks = <&gcc GCC_QUPV3_WRAP1_S1_CLK>; 1131 pinctrl-names = "default"; 1132 pinctrl-0 = <&qup_uart9_default>; 1133 interrupts = <GIC_SPI 354 IRQ_TYPE_LEVEL_HIGH>; 1134 status = "disabled"; 1135 }; 1136 1137 i2c10: i2c@a88000 { 1138 compatible = "qcom,geni-i2c"; 1139 reg = <0 0x00a88000 0 0x4000>; 1140 clock-names = "se"; 1141 clocks = <&gcc GCC_QUPV3_WRAP1_S2_CLK>; 1142 pinctrl-names = "default"; 1143 pinctrl-0 = <&qup_i2c10_default>; 1144 interrupts = <GIC_SPI 355 IRQ_TYPE_LEVEL_HIGH>; 1145 #address-cells = <1>; 1146 #size-cells = <0>; 1147 status = "disabled"; 1148 }; 1149 1150 spi10: spi@a88000 { 1151 compatible = "qcom,geni-spi"; 1152 reg = <0 0x00a88000 0 0x4000>; 1153 clock-names = "se"; 1154 clocks = <&gcc GCC_QUPV3_WRAP1_S2_CLK>; 1155 pinctrl-names = "default"; 1156 pinctrl-0 = <&qup_spi10_default>; 1157 interrupts = <GIC_SPI 355 IRQ_TYPE_LEVEL_HIGH>; 1158 #address-cells = <1>; 1159 #size-cells = <0>; 1160 status = "disabled"; 1161 }; 1162 1163 uart10: serial@a88000 { 1164 compatible = "qcom,geni-uart"; 1165 reg = <0 0x00a88000 0 0x4000>; 1166 clock-names = "se"; 1167 clocks = <&gcc GCC_QUPV3_WRAP1_S2_CLK>; 1168 pinctrl-names = "default"; 1169 pinctrl-0 = <&qup_uart10_default>; 1170 interrupts = <GIC_SPI 355 IRQ_TYPE_LEVEL_HIGH>; 1171 status = "disabled"; 1172 }; 1173 1174 i2c11: i2c@a8c000 { 1175 compatible = "qcom,geni-i2c"; 1176 reg = <0 0x00a8c000 0 0x4000>; 1177 clock-names = "se"; 1178 clocks = <&gcc GCC_QUPV3_WRAP1_S3_CLK>; 1179 pinctrl-names = "default"; 1180 pinctrl-0 = <&qup_i2c11_default>; 1181 interrupts = <GIC_SPI 356 IRQ_TYPE_LEVEL_HIGH>; 1182 #address-cells = <1>; 1183 #size-cells = <0>; 1184 status = "disabled"; 1185 }; 1186 1187 spi11: spi@a8c000 { 1188 compatible = "qcom,geni-spi"; 1189 reg = <0 0x00a8c000 0 0x4000>; 1190 clock-names = "se"; 1191 clocks = <&gcc GCC_QUPV3_WRAP1_S3_CLK>; 1192 pinctrl-names = "default"; 1193 pinctrl-0 = <&qup_spi11_default>; 1194 interrupts = <GIC_SPI 356 IRQ_TYPE_LEVEL_HIGH>; 1195 #address-cells = <1>; 1196 #size-cells = <0>; 1197 status = "disabled"; 1198 }; 1199 1200 uart11: serial@a8c000 { 1201 compatible = "qcom,geni-uart"; 1202 reg = <0 0x00a8c000 0 0x4000>; 1203 clock-names = "se"; 1204 clocks = <&gcc GCC_QUPV3_WRAP1_S3_CLK>; 1205 pinctrl-names = "default"; 1206 pinctrl-0 = <&qup_uart11_default>; 1207 interrupts = <GIC_SPI 356 IRQ_TYPE_LEVEL_HIGH>; 1208 status = "disabled"; 1209 }; 1210 1211 i2c12: i2c@a90000 { 1212 compatible = "qcom,geni-i2c"; 1213 reg = <0 0x00a90000 0 0x4000>; 1214 clock-names = "se"; 1215 clocks = <&gcc GCC_QUPV3_WRAP1_S4_CLK>; 1216 pinctrl-names = "default"; 1217 pinctrl-0 = <&qup_i2c12_default>; 1218 interrupts = <GIC_SPI 357 IRQ_TYPE_LEVEL_HIGH>; 1219 #address-cells = <1>; 1220 #size-cells = <0>; 1221 status = "disabled"; 1222 }; 1223 1224 spi12: spi@a90000 { 1225 compatible = "qcom,geni-spi"; 1226 reg = <0 0x00a90000 0 0x4000>; 1227 clock-names = "se"; 1228 clocks = <&gcc GCC_QUPV3_WRAP1_S4_CLK>; 1229 pinctrl-names = "default"; 1230 pinctrl-0 = <&qup_spi12_default>; 1231 interrupts = <GIC_SPI 357 IRQ_TYPE_LEVEL_HIGH>; 1232 #address-cells = <1>; 1233 #size-cells = <0>; 1234 status = "disabled"; 1235 }; 1236 1237 uart12: serial@a90000 { 1238 compatible = "qcom,geni-uart"; 1239 reg = <0 0x00a90000 0 0x4000>; 1240 clock-names = "se"; 1241 clocks = <&gcc GCC_QUPV3_WRAP1_S4_CLK>; 1242 pinctrl-names = "default"; 1243 pinctrl-0 = <&qup_uart12_default>; 1244 interrupts = <GIC_SPI 357 IRQ_TYPE_LEVEL_HIGH>; 1245 status = "disabled"; 1246 }; 1247 1248 i2c13: i2c@a94000 { 1249 compatible = "qcom,geni-i2c"; 1250 reg = <0 0x00a94000 0 0x4000>; 1251 clock-names = "se"; 1252 clocks = <&gcc GCC_QUPV3_WRAP1_S5_CLK>; 1253 pinctrl-names = "default"; 1254 pinctrl-0 = <&qup_i2c13_default>; 1255 interrupts = <GIC_SPI 358 IRQ_TYPE_LEVEL_HIGH>; 1256 #address-cells = <1>; 1257 #size-cells = <0>; 1258 status = "disabled"; 1259 }; 1260 1261 spi13: spi@a94000 { 1262 compatible = "qcom,geni-spi"; 1263 reg = <0 0x00a94000 0 0x4000>; 1264 clock-names = "se"; 1265 clocks = <&gcc GCC_QUPV3_WRAP1_S5_CLK>; 1266 pinctrl-names = "default"; 1267 pinctrl-0 = <&qup_spi13_default>; 1268 interrupts = <GIC_SPI 358 IRQ_TYPE_LEVEL_HIGH>; 1269 #address-cells = <1>; 1270 #size-cells = <0>; 1271 status = "disabled"; 1272 }; 1273 1274 uart13: serial@a94000 { 1275 compatible = "qcom,geni-uart"; 1276 reg = <0 0x00a94000 0 0x4000>; 1277 clock-names = "se"; 1278 clocks = <&gcc GCC_QUPV3_WRAP1_S5_CLK>; 1279 pinctrl-names = "default"; 1280 pinctrl-0 = <&qup_uart13_default>; 1281 interrupts = <GIC_SPI 358 IRQ_TYPE_LEVEL_HIGH>; 1282 status = "disabled"; 1283 }; 1284 1285 i2c14: i2c@a98000 { 1286 compatible = "qcom,geni-i2c"; 1287 reg = <0 0x00a98000 0 0x4000>; 1288 clock-names = "se"; 1289 clocks = <&gcc GCC_QUPV3_WRAP1_S6_CLK>; 1290 pinctrl-names = "default"; 1291 pinctrl-0 = <&qup_i2c14_default>; 1292 interrupts = <GIC_SPI 359 IRQ_TYPE_LEVEL_HIGH>; 1293 #address-cells = <1>; 1294 #size-cells = <0>; 1295 status = "disabled"; 1296 }; 1297 1298 spi14: spi@a98000 { 1299 compatible = "qcom,geni-spi"; 1300 reg = <0 0x00a98000 0 0x4000>; 1301 clock-names = "se"; 1302 clocks = <&gcc GCC_QUPV3_WRAP1_S6_CLK>; 1303 pinctrl-names = "default"; 1304 pinctrl-0 = <&qup_spi14_default>; 1305 interrupts = <GIC_SPI 359 IRQ_TYPE_LEVEL_HIGH>; 1306 #address-cells = <1>; 1307 #size-cells = <0>; 1308 status = "disabled"; 1309 }; 1310 1311 uart14: serial@a98000 { 1312 compatible = "qcom,geni-uart"; 1313 reg = <0 0x00a98000 0 0x4000>; 1314 clock-names = "se"; 1315 clocks = <&gcc GCC_QUPV3_WRAP1_S6_CLK>; 1316 pinctrl-names = "default"; 1317 pinctrl-0 = <&qup_uart14_default>; 1318 interrupts = <GIC_SPI 359 IRQ_TYPE_LEVEL_HIGH>; 1319 status = "disabled"; 1320 }; 1321 1322 i2c15: i2c@a9c000 { 1323 compatible = "qcom,geni-i2c"; 1324 reg = <0 0x00a9c000 0 0x4000>; 1325 clock-names = "se"; 1326 clocks = <&gcc GCC_QUPV3_WRAP1_S7_CLK>; 1327 pinctrl-names = "default"; 1328 pinctrl-0 = <&qup_i2c15_default>; 1329 interrupts = <GIC_SPI 360 IRQ_TYPE_LEVEL_HIGH>; 1330 #address-cells = <1>; 1331 #size-cells = <0>; 1332 status = "disabled"; 1333 }; 1334 1335 spi15: spi@a9c000 { 1336 compatible = "qcom,geni-spi"; 1337 reg = <0 0x00a9c000 0 0x4000>; 1338 clock-names = "se"; 1339 clocks = <&gcc GCC_QUPV3_WRAP1_S7_CLK>; 1340 pinctrl-names = "default"; 1341 pinctrl-0 = <&qup_spi15_default>; 1342 interrupts = <GIC_SPI 360 IRQ_TYPE_LEVEL_HIGH>; 1343 #address-cells = <1>; 1344 #size-cells = <0>; 1345 status = "disabled"; 1346 }; 1347 1348 uart15: serial@a9c000 { 1349 compatible = "qcom,geni-uart"; 1350 reg = <0 0x00a9c000 0 0x4000>; 1351 clock-names = "se"; 1352 clocks = <&gcc GCC_QUPV3_WRAP1_S7_CLK>; 1353 pinctrl-names = "default"; 1354 pinctrl-0 = <&qup_uart15_default>; 1355 interrupts = <GIC_SPI 360 IRQ_TYPE_LEVEL_HIGH>; 1356 status = "disabled"; 1357 }; 1358 }; 1359 1360 cache-controller@1100000 { 1361 compatible = "qcom,sdm845-llcc"; 1362 reg = <0 0x01100000 0 0x200000>, <0 0x01300000 0 0x50000>; 1363 reg-names = "llcc_base", "llcc_broadcast_base"; 1364 interrupts = <GIC_SPI 582 IRQ_TYPE_LEVEL_HIGH>; 1365 }; 1366 1367 ufs_mem_hc: ufshc@1d84000 { 1368 compatible = "qcom,sdm845-ufshc", "qcom,ufshc", 1369 "jedec,ufs-2.0"; 1370 reg = <0 0x01d84000 0 0x2500>; 1371 interrupts = <GIC_SPI 265 IRQ_TYPE_LEVEL_HIGH>; 1372 phys = <&ufs_mem_phy_lanes>; 1373 phy-names = "ufsphy"; 1374 lanes-per-direction = <2>; 1375 power-domains = <&gcc UFS_PHY_GDSC>; 1376 #reset-cells = <1>; 1377 1378 iommus = <&apps_smmu 0x100 0xf>; 1379 1380 clock-names = 1381 "core_clk", 1382 "bus_aggr_clk", 1383 "iface_clk", 1384 "core_clk_unipro", 1385 "ref_clk", 1386 "tx_lane0_sync_clk", 1387 "rx_lane0_sync_clk", 1388 "rx_lane1_sync_clk"; 1389 clocks = 1390 <&gcc GCC_UFS_PHY_AXI_CLK>, 1391 <&gcc GCC_AGGRE_UFS_PHY_AXI_CLK>, 1392 <&gcc GCC_UFS_PHY_AHB_CLK>, 1393 <&gcc GCC_UFS_PHY_UNIPRO_CORE_CLK>, 1394 <&rpmhcc RPMH_CXO_CLK>, 1395 <&gcc GCC_UFS_PHY_TX_SYMBOL_0_CLK>, 1396 <&gcc GCC_UFS_PHY_RX_SYMBOL_0_CLK>, 1397 <&gcc GCC_UFS_PHY_RX_SYMBOL_1_CLK>; 1398 freq-table-hz = 1399 <50000000 200000000>, 1400 <0 0>, 1401 <0 0>, 1402 <37500000 150000000>, 1403 <0 0>, 1404 <0 0>, 1405 <0 0>, 1406 <0 0>; 1407 1408 status = "disabled"; 1409 }; 1410 1411 ufs_mem_phy: phy@1d87000 { 1412 compatible = "qcom,sdm845-qmp-ufs-phy"; 1413 reg = <0 0x01d87000 0 0x18c>; 1414 #address-cells = <2>; 1415 #size-cells = <2>; 1416 ranges; 1417 clock-names = "ref", 1418 "ref_aux"; 1419 clocks = <&gcc GCC_UFS_MEM_CLKREF_CLK>, 1420 <&gcc GCC_UFS_PHY_PHY_AUX_CLK>; 1421 1422 resets = <&ufs_mem_hc 0>; 1423 reset-names = "ufsphy"; 1424 status = "disabled"; 1425 1426 ufs_mem_phy_lanes: lanes@1d87400 { 1427 reg = <0 0x01d87400 0 0x108>, 1428 <0 0x01d87600 0 0x1e0>, 1429 <0 0x01d87c00 0 0x1dc>, 1430 <0 0x01d87800 0 0x108>, 1431 <0 0x01d87a00 0 0x1e0>; 1432 #phy-cells = <0>; 1433 }; 1434 }; 1435 1436 tcsr_mutex_regs: syscon@1f40000 { 1437 compatible = "syscon"; 1438 reg = <0 0x01f40000 0 0x40000>; 1439 }; 1440 1441 tlmm: pinctrl@3400000 { 1442 compatible = "qcom,sdm845-pinctrl"; 1443 reg = <0 0x03400000 0 0xc00000>; 1444 interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>; 1445 gpio-controller; 1446 #gpio-cells = <2>; 1447 interrupt-controller; 1448 #interrupt-cells = <2>; 1449 gpio-ranges = <&tlmm 0 0 150>; 1450 1451 qspi_clk: qspi-clk { 1452 pinmux { 1453 pins = "gpio95"; 1454 function = "qspi_clk"; 1455 }; 1456 }; 1457 1458 qspi_cs0: qspi-cs0 { 1459 pinmux { 1460 pins = "gpio90"; 1461 function = "qspi_cs"; 1462 }; 1463 }; 1464 1465 qspi_cs1: qspi-cs1 { 1466 pinmux { 1467 pins = "gpio89"; 1468 function = "qspi_cs"; 1469 }; 1470 }; 1471 1472 qspi_data01: qspi-data01 { 1473 pinmux-data { 1474 pins = "gpio91", "gpio92"; 1475 function = "qspi_data"; 1476 }; 1477 }; 1478 1479 qspi_data12: qspi-data12 { 1480 pinmux-data { 1481 pins = "gpio93", "gpio94"; 1482 function = "qspi_data"; 1483 }; 1484 }; 1485 1486 qup_i2c0_default: qup-i2c0-default { 1487 pinmux { 1488 pins = "gpio0", "gpio1"; 1489 function = "qup0"; 1490 }; 1491 }; 1492 1493 qup_i2c1_default: qup-i2c1-default { 1494 pinmux { 1495 pins = "gpio17", "gpio18"; 1496 function = "qup1"; 1497 }; 1498 }; 1499 1500 qup_i2c2_default: qup-i2c2-default { 1501 pinmux { 1502 pins = "gpio27", "gpio28"; 1503 function = "qup2"; 1504 }; 1505 }; 1506 1507 qup_i2c3_default: qup-i2c3-default { 1508 pinmux { 1509 pins = "gpio41", "gpio42"; 1510 function = "qup3"; 1511 }; 1512 }; 1513 1514 qup_i2c4_default: qup-i2c4-default { 1515 pinmux { 1516 pins = "gpio89", "gpio90"; 1517 function = "qup4"; 1518 }; 1519 }; 1520 1521 qup_i2c5_default: qup-i2c5-default { 1522 pinmux { 1523 pins = "gpio85", "gpio86"; 1524 function = "qup5"; 1525 }; 1526 }; 1527 1528 qup_i2c6_default: qup-i2c6-default { 1529 pinmux { 1530 pins = "gpio45", "gpio46"; 1531 function = "qup6"; 1532 }; 1533 }; 1534 1535 qup_i2c7_default: qup-i2c7-default { 1536 pinmux { 1537 pins = "gpio93", "gpio94"; 1538 function = "qup7"; 1539 }; 1540 }; 1541 1542 qup_i2c8_default: qup-i2c8-default { 1543 pinmux { 1544 pins = "gpio65", "gpio66"; 1545 function = "qup8"; 1546 }; 1547 }; 1548 1549 qup_i2c9_default: qup-i2c9-default { 1550 pinmux { 1551 pins = "gpio6", "gpio7"; 1552 function = "qup9"; 1553 }; 1554 }; 1555 1556 qup_i2c10_default: qup-i2c10-default { 1557 pinmux { 1558 pins = "gpio55", "gpio56"; 1559 function = "qup10"; 1560 }; 1561 }; 1562 1563 qup_i2c11_default: qup-i2c11-default { 1564 pinmux { 1565 pins = "gpio31", "gpio32"; 1566 function = "qup11"; 1567 }; 1568 }; 1569 1570 qup_i2c12_default: qup-i2c12-default { 1571 pinmux { 1572 pins = "gpio49", "gpio50"; 1573 function = "qup12"; 1574 }; 1575 }; 1576 1577 qup_i2c13_default: qup-i2c13-default { 1578 pinmux { 1579 pins = "gpio105", "gpio106"; 1580 function = "qup13"; 1581 }; 1582 }; 1583 1584 qup_i2c14_default: qup-i2c14-default { 1585 pinmux { 1586 pins = "gpio33", "gpio34"; 1587 function = "qup14"; 1588 }; 1589 }; 1590 1591 qup_i2c15_default: qup-i2c15-default { 1592 pinmux { 1593 pins = "gpio81", "gpio82"; 1594 function = "qup15"; 1595 }; 1596 }; 1597 1598 qup_spi0_default: qup-spi0-default { 1599 pinmux { 1600 pins = "gpio0", "gpio1", 1601 "gpio2", "gpio3"; 1602 function = "qup0"; 1603 }; 1604 }; 1605 1606 qup_spi1_default: qup-spi1-default { 1607 pinmux { 1608 pins = "gpio17", "gpio18", 1609 "gpio19", "gpio20"; 1610 function = "qup1"; 1611 }; 1612 }; 1613 1614 qup_spi2_default: qup-spi2-default { 1615 pinmux { 1616 pins = "gpio27", "gpio28", 1617 "gpio29", "gpio30"; 1618 function = "qup2"; 1619 }; 1620 }; 1621 1622 qup_spi3_default: qup-spi3-default { 1623 pinmux { 1624 pins = "gpio41", "gpio42", 1625 "gpio43", "gpio44"; 1626 function = "qup3"; 1627 }; 1628 }; 1629 1630 qup_spi4_default: qup-spi4-default { 1631 pinmux { 1632 pins = "gpio89", "gpio90", 1633 "gpio91", "gpio92"; 1634 function = "qup4"; 1635 }; 1636 }; 1637 1638 qup_spi5_default: qup-spi5-default { 1639 pinmux { 1640 pins = "gpio85", "gpio86", 1641 "gpio87", "gpio88"; 1642 function = "qup5"; 1643 }; 1644 }; 1645 1646 qup_spi6_default: qup-spi6-default { 1647 pinmux { 1648 pins = "gpio45", "gpio46", 1649 "gpio47", "gpio48"; 1650 function = "qup6"; 1651 }; 1652 }; 1653 1654 qup_spi7_default: qup-spi7-default { 1655 pinmux { 1656 pins = "gpio93", "gpio94", 1657 "gpio95", "gpio96"; 1658 function = "qup7"; 1659 }; 1660 }; 1661 1662 qup_spi8_default: qup-spi8-default { 1663 pinmux { 1664 pins = "gpio65", "gpio66", 1665 "gpio67", "gpio68"; 1666 function = "qup8"; 1667 }; 1668 }; 1669 1670 qup_spi9_default: qup-spi9-default { 1671 pinmux { 1672 pins = "gpio6", "gpio7", 1673 "gpio4", "gpio5"; 1674 function = "qup9"; 1675 }; 1676 }; 1677 1678 qup_spi10_default: qup-spi10-default { 1679 pinmux { 1680 pins = "gpio55", "gpio56", 1681 "gpio53", "gpio54"; 1682 function = "qup10"; 1683 }; 1684 }; 1685 1686 qup_spi11_default: qup-spi11-default { 1687 pinmux { 1688 pins = "gpio31", "gpio32", 1689 "gpio33", "gpio34"; 1690 function = "qup11"; 1691 }; 1692 }; 1693 1694 qup_spi12_default: qup-spi12-default { 1695 pinmux { 1696 pins = "gpio49", "gpio50", 1697 "gpio51", "gpio52"; 1698 function = "qup12"; 1699 }; 1700 }; 1701 1702 qup_spi13_default: qup-spi13-default { 1703 pinmux { 1704 pins = "gpio105", "gpio106", 1705 "gpio107", "gpio108"; 1706 function = "qup13"; 1707 }; 1708 }; 1709 1710 qup_spi14_default: qup-spi14-default { 1711 pinmux { 1712 pins = "gpio33", "gpio34", 1713 "gpio31", "gpio32"; 1714 function = "qup14"; 1715 }; 1716 }; 1717 1718 qup_spi15_default: qup-spi15-default { 1719 pinmux { 1720 pins = "gpio81", "gpio82", 1721 "gpio83", "gpio84"; 1722 function = "qup15"; 1723 }; 1724 }; 1725 1726 qup_uart0_default: qup-uart0-default { 1727 pinmux { 1728 pins = "gpio2", "gpio3"; 1729 function = "qup0"; 1730 }; 1731 }; 1732 1733 qup_uart1_default: qup-uart1-default { 1734 pinmux { 1735 pins = "gpio19", "gpio20"; 1736 function = "qup1"; 1737 }; 1738 }; 1739 1740 qup_uart2_default: qup-uart2-default { 1741 pinmux { 1742 pins = "gpio29", "gpio30"; 1743 function = "qup2"; 1744 }; 1745 }; 1746 1747 qup_uart3_default: qup-uart3-default { 1748 pinmux { 1749 pins = "gpio43", "gpio44"; 1750 function = "qup3"; 1751 }; 1752 }; 1753 1754 qup_uart4_default: qup-uart4-default { 1755 pinmux { 1756 pins = "gpio91", "gpio92"; 1757 function = "qup4"; 1758 }; 1759 }; 1760 1761 qup_uart5_default: qup-uart5-default { 1762 pinmux { 1763 pins = "gpio87", "gpio88"; 1764 function = "qup5"; 1765 }; 1766 }; 1767 1768 qup_uart6_default: qup-uart6-default { 1769 pinmux { 1770 pins = "gpio47", "gpio48"; 1771 function = "qup6"; 1772 }; 1773 }; 1774 1775 qup_uart7_default: qup-uart7-default { 1776 pinmux { 1777 pins = "gpio95", "gpio96"; 1778 function = "qup7"; 1779 }; 1780 }; 1781 1782 qup_uart8_default: qup-uart8-default { 1783 pinmux { 1784 pins = "gpio67", "gpio68"; 1785 function = "qup8"; 1786 }; 1787 }; 1788 1789 qup_uart9_default: qup-uart9-default { 1790 pinmux { 1791 pins = "gpio4", "gpio5"; 1792 function = "qup9"; 1793 }; 1794 }; 1795 1796 qup_uart10_default: qup-uart10-default { 1797 pinmux { 1798 pins = "gpio53", "gpio54"; 1799 function = "qup10"; 1800 }; 1801 }; 1802 1803 qup_uart11_default: qup-uart11-default { 1804 pinmux { 1805 pins = "gpio33", "gpio34"; 1806 function = "qup11"; 1807 }; 1808 }; 1809 1810 qup_uart12_default: qup-uart12-default { 1811 pinmux { 1812 pins = "gpio51", "gpio52"; 1813 function = "qup12"; 1814 }; 1815 }; 1816 1817 qup_uart13_default: qup-uart13-default { 1818 pinmux { 1819 pins = "gpio107", "gpio108"; 1820 function = "qup13"; 1821 }; 1822 }; 1823 1824 qup_uart14_default: qup-uart14-default { 1825 pinmux { 1826 pins = "gpio31", "gpio32"; 1827 function = "qup14"; 1828 }; 1829 }; 1830 1831 qup_uart15_default: qup-uart15-default { 1832 pinmux { 1833 pins = "gpio83", "gpio84"; 1834 function = "qup15"; 1835 }; 1836 }; 1837 }; 1838 1839 mss_pil: remoteproc@4080000 { 1840 compatible = "qcom,sdm845-mss-pil"; 1841 reg = <0 0x04080000 0 0x408>, <0 0x04180000 0 0x48>; 1842 reg-names = "qdsp6", "rmb"; 1843 1844 interrupts-extended = 1845 <&intc GIC_SPI 266 IRQ_TYPE_EDGE_RISING>, 1846 <&modem_smp2p_in 0 IRQ_TYPE_EDGE_RISING>, 1847 <&modem_smp2p_in 1 IRQ_TYPE_EDGE_RISING>, 1848 <&modem_smp2p_in 2 IRQ_TYPE_EDGE_RISING>, 1849 <&modem_smp2p_in 3 IRQ_TYPE_EDGE_RISING>, 1850 <&modem_smp2p_in 7 IRQ_TYPE_EDGE_RISING>; 1851 interrupt-names = "wdog", "fatal", "ready", 1852 "handover", "stop-ack", 1853 "shutdown-ack"; 1854 1855 clocks = <&gcc GCC_MSS_CFG_AHB_CLK>, 1856 <&gcc GCC_MSS_Q6_MEMNOC_AXI_CLK>, 1857 <&gcc GCC_BOOT_ROM_AHB_CLK>, 1858 <&gcc GCC_MSS_GPLL0_DIV_CLK_SRC>, 1859 <&gcc GCC_MSS_SNOC_AXI_CLK>, 1860 <&gcc GCC_MSS_MFAB_AXIS_CLK>, 1861 <&gcc GCC_PRNG_AHB_CLK>, 1862 <&rpmhcc RPMH_CXO_CLK>; 1863 clock-names = "iface", "bus", "mem", "gpll0_mss", 1864 "snoc_axi", "mnoc_axi", "prng", "xo"; 1865 1866 qcom,smem-states = <&modem_smp2p_out 0>; 1867 qcom,smem-state-names = "stop"; 1868 1869 resets = <&aoss_reset AOSS_CC_MSS_RESTART>, 1870 <&pdc_reset PDC_MODEM_SYNC_RESET>; 1871 reset-names = "mss_restart", "pdc_reset"; 1872 1873 qcom,halt-regs = <&tcsr_mutex_regs 0x23000 0x25000 0x24000>; 1874 1875 power-domains = <&aoss_qmp 2>, 1876 <&rpmhpd SDM845_CX>, 1877 <&rpmhpd SDM845_MX>, 1878 <&rpmhpd SDM845_MSS>; 1879 power-domain-names = "load_state", "cx", "mx", "mss"; 1880 1881 mba { 1882 memory-region = <&mba_region>; 1883 }; 1884 1885 mpss { 1886 memory-region = <&mpss_region>; 1887 }; 1888 1889 glink-edge { 1890 interrupts = <GIC_SPI 449 IRQ_TYPE_EDGE_RISING>; 1891 label = "modem"; 1892 qcom,remote-pid = <1>; 1893 mboxes = <&apss_shared 12>; 1894 }; 1895 }; 1896 1897 gpucc: clock-controller@5090000 { 1898 compatible = "qcom,sdm845-gpucc"; 1899 reg = <0 0x05090000 0 0x9000>; 1900 #clock-cells = <1>; 1901 #reset-cells = <1>; 1902 #power-domain-cells = <1>; 1903 clocks = <&rpmhcc RPMH_CXO_CLK>; 1904 clock-names = "xo"; 1905 }; 1906 1907 stm@6002000 { 1908 compatible = "arm,coresight-stm", "arm,primecell"; 1909 reg = <0 0x06002000 0 0x1000>, 1910 <0 0x16280000 0 0x180000>; 1911 reg-names = "stm-base", "stm-stimulus-base"; 1912 1913 clocks = <&aoss_qmp>; 1914 clock-names = "apb_pclk"; 1915 1916 out-ports { 1917 port { 1918 stm_out: endpoint { 1919 remote-endpoint = 1920 <&funnel0_in7>; 1921 }; 1922 }; 1923 }; 1924 }; 1925 1926 funnel@6041000 { 1927 compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 1928 reg = <0 0x06041000 0 0x1000>; 1929 1930 clocks = <&aoss_qmp>; 1931 clock-names = "apb_pclk"; 1932 1933 out-ports { 1934 port { 1935 funnel0_out: endpoint { 1936 remote-endpoint = 1937 <&merge_funnel_in0>; 1938 }; 1939 }; 1940 }; 1941 1942 in-ports { 1943 #address-cells = <1>; 1944 #size-cells = <0>; 1945 1946 port@7 { 1947 reg = <7>; 1948 funnel0_in7: endpoint { 1949 remote-endpoint = <&stm_out>; 1950 }; 1951 }; 1952 }; 1953 }; 1954 1955 funnel@6043000 { 1956 compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 1957 reg = <0 0x06043000 0 0x1000>; 1958 1959 clocks = <&aoss_qmp>; 1960 clock-names = "apb_pclk"; 1961 1962 out-ports { 1963 port { 1964 funnel2_out: endpoint { 1965 remote-endpoint = 1966 <&merge_funnel_in2>; 1967 }; 1968 }; 1969 }; 1970 1971 in-ports { 1972 #address-cells = <1>; 1973 #size-cells = <0>; 1974 1975 port@5 { 1976 reg = <5>; 1977 funnel2_in5: endpoint { 1978 remote-endpoint = 1979 <&apss_merge_funnel_out>; 1980 }; 1981 }; 1982 }; 1983 }; 1984 1985 funnel@6045000 { 1986 compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 1987 reg = <0 0x06045000 0 0x1000>; 1988 1989 clocks = <&aoss_qmp>; 1990 clock-names = "apb_pclk"; 1991 1992 out-ports { 1993 port { 1994 merge_funnel_out: endpoint { 1995 remote-endpoint = <&etf_in>; 1996 }; 1997 }; 1998 }; 1999 2000 in-ports { 2001 #address-cells = <1>; 2002 #size-cells = <0>; 2003 2004 port@0 { 2005 reg = <0>; 2006 merge_funnel_in0: endpoint { 2007 remote-endpoint = 2008 <&funnel0_out>; 2009 }; 2010 }; 2011 2012 port@2 { 2013 reg = <2>; 2014 merge_funnel_in2: endpoint { 2015 remote-endpoint = 2016 <&funnel2_out>; 2017 }; 2018 }; 2019 }; 2020 }; 2021 2022 replicator@6046000 { 2023 compatible = "arm,coresight-dynamic-replicator", "arm,primecell"; 2024 reg = <0 0x06046000 0 0x1000>; 2025 2026 clocks = <&aoss_qmp>; 2027 clock-names = "apb_pclk"; 2028 2029 out-ports { 2030 port { 2031 replicator_out: endpoint { 2032 remote-endpoint = <&etr_in>; 2033 }; 2034 }; 2035 }; 2036 2037 in-ports { 2038 port { 2039 replicator_in: endpoint { 2040 remote-endpoint = <&etf_out>; 2041 }; 2042 }; 2043 }; 2044 }; 2045 2046 etf@6047000 { 2047 compatible = "arm,coresight-tmc", "arm,primecell"; 2048 reg = <0 0x06047000 0 0x1000>; 2049 2050 clocks = <&aoss_qmp>; 2051 clock-names = "apb_pclk"; 2052 2053 out-ports { 2054 port { 2055 etf_out: endpoint { 2056 remote-endpoint = 2057 <&replicator_in>; 2058 }; 2059 }; 2060 }; 2061 2062 in-ports { 2063 #address-cells = <1>; 2064 #size-cells = <0>; 2065 2066 port@1 { 2067 reg = <1>; 2068 etf_in: endpoint { 2069 remote-endpoint = 2070 <&merge_funnel_out>; 2071 }; 2072 }; 2073 }; 2074 }; 2075 2076 etr@6048000 { 2077 compatible = "arm,coresight-tmc", "arm,primecell"; 2078 reg = <0 0x06048000 0 0x1000>; 2079 2080 clocks = <&aoss_qmp>; 2081 clock-names = "apb_pclk"; 2082 arm,scatter-gather; 2083 2084 in-ports { 2085 port { 2086 etr_in: endpoint { 2087 remote-endpoint = 2088 <&replicator_out>; 2089 }; 2090 }; 2091 }; 2092 }; 2093 2094 etm@7040000 { 2095 compatible = "arm,coresight-etm4x", "arm,primecell"; 2096 reg = <0 0x07040000 0 0x1000>; 2097 2098 cpu = <&CPU0>; 2099 2100 clocks = <&aoss_qmp>; 2101 clock-names = "apb_pclk"; 2102 2103 out-ports { 2104 port { 2105 etm0_out: endpoint { 2106 remote-endpoint = 2107 <&apss_funnel_in0>; 2108 }; 2109 }; 2110 }; 2111 }; 2112 2113 etm@7140000 { 2114 compatible = "arm,coresight-etm4x", "arm,primecell"; 2115 reg = <0 0x07140000 0 0x1000>; 2116 2117 cpu = <&CPU1>; 2118 2119 clocks = <&aoss_qmp>; 2120 clock-names = "apb_pclk"; 2121 2122 out-ports { 2123 port { 2124 etm1_out: endpoint { 2125 remote-endpoint = 2126 <&apss_funnel_in1>; 2127 }; 2128 }; 2129 }; 2130 }; 2131 2132 etm@7240000 { 2133 compatible = "arm,coresight-etm4x", "arm,primecell"; 2134 reg = <0 0x07240000 0 0x1000>; 2135 2136 cpu = <&CPU2>; 2137 2138 clocks = <&aoss_qmp>; 2139 clock-names = "apb_pclk"; 2140 2141 out-ports { 2142 port { 2143 etm2_out: endpoint { 2144 remote-endpoint = 2145 <&apss_funnel_in2>; 2146 }; 2147 }; 2148 }; 2149 }; 2150 2151 etm@7340000 { 2152 compatible = "arm,coresight-etm4x", "arm,primecell"; 2153 reg = <0 0x07340000 0 0x1000>; 2154 2155 cpu = <&CPU3>; 2156 2157 clocks = <&aoss_qmp>; 2158 clock-names = "apb_pclk"; 2159 2160 out-ports { 2161 port { 2162 etm3_out: endpoint { 2163 remote-endpoint = 2164 <&apss_funnel_in3>; 2165 }; 2166 }; 2167 }; 2168 }; 2169 2170 etm@7440000 { 2171 compatible = "arm,coresight-etm4x", "arm,primecell"; 2172 reg = <0 0x07440000 0 0x1000>; 2173 2174 cpu = <&CPU4>; 2175 2176 clocks = <&aoss_qmp>; 2177 clock-names = "apb_pclk"; 2178 2179 out-ports { 2180 port { 2181 etm4_out: endpoint { 2182 remote-endpoint = 2183 <&apss_funnel_in4>; 2184 }; 2185 }; 2186 }; 2187 }; 2188 2189 etm@7540000 { 2190 compatible = "arm,coresight-etm4x", "arm,primecell"; 2191 reg = <0 0x07540000 0 0x1000>; 2192 2193 cpu = <&CPU5>; 2194 2195 clocks = <&aoss_qmp>; 2196 clock-names = "apb_pclk"; 2197 2198 out-ports { 2199 port { 2200 etm5_out: endpoint { 2201 remote-endpoint = 2202 <&apss_funnel_in5>; 2203 }; 2204 }; 2205 }; 2206 }; 2207 2208 etm@7640000 { 2209 compatible = "arm,coresight-etm4x", "arm,primecell"; 2210 reg = <0 0x07640000 0 0x1000>; 2211 2212 cpu = <&CPU6>; 2213 2214 clocks = <&aoss_qmp>; 2215 clock-names = "apb_pclk"; 2216 2217 out-ports { 2218 port { 2219 etm6_out: endpoint { 2220 remote-endpoint = 2221 <&apss_funnel_in6>; 2222 }; 2223 }; 2224 }; 2225 }; 2226 2227 etm@7740000 { 2228 compatible = "arm,coresight-etm4x", "arm,primecell"; 2229 reg = <0 0x07740000 0 0x1000>; 2230 2231 cpu = <&CPU7>; 2232 2233 clocks = <&aoss_qmp>; 2234 clock-names = "apb_pclk"; 2235 2236 out-ports { 2237 port { 2238 etm7_out: endpoint { 2239 remote-endpoint = 2240 <&apss_funnel_in7>; 2241 }; 2242 }; 2243 }; 2244 }; 2245 2246 funnel@7800000 { /* APSS Funnel */ 2247 compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 2248 reg = <0 0x07800000 0 0x1000>; 2249 2250 clocks = <&aoss_qmp>; 2251 clock-names = "apb_pclk"; 2252 2253 out-ports { 2254 port { 2255 apss_funnel_out: endpoint { 2256 remote-endpoint = 2257 <&apss_merge_funnel_in>; 2258 }; 2259 }; 2260 }; 2261 2262 in-ports { 2263 #address-cells = <1>; 2264 #size-cells = <0>; 2265 2266 port@0 { 2267 reg = <0>; 2268 apss_funnel_in0: endpoint { 2269 remote-endpoint = 2270 <&etm0_out>; 2271 }; 2272 }; 2273 2274 port@1 { 2275 reg = <1>; 2276 apss_funnel_in1: endpoint { 2277 remote-endpoint = 2278 <&etm1_out>; 2279 }; 2280 }; 2281 2282 port@2 { 2283 reg = <2>; 2284 apss_funnel_in2: endpoint { 2285 remote-endpoint = 2286 <&etm2_out>; 2287 }; 2288 }; 2289 2290 port@3 { 2291 reg = <3>; 2292 apss_funnel_in3: endpoint { 2293 remote-endpoint = 2294 <&etm3_out>; 2295 }; 2296 }; 2297 2298 port@4 { 2299 reg = <4>; 2300 apss_funnel_in4: endpoint { 2301 remote-endpoint = 2302 <&etm4_out>; 2303 }; 2304 }; 2305 2306 port@5 { 2307 reg = <5>; 2308 apss_funnel_in5: endpoint { 2309 remote-endpoint = 2310 <&etm5_out>; 2311 }; 2312 }; 2313 2314 port@6 { 2315 reg = <6>; 2316 apss_funnel_in6: endpoint { 2317 remote-endpoint = 2318 <&etm6_out>; 2319 }; 2320 }; 2321 2322 port@7 { 2323 reg = <7>; 2324 apss_funnel_in7: endpoint { 2325 remote-endpoint = 2326 <&etm7_out>; 2327 }; 2328 }; 2329 }; 2330 }; 2331 2332 funnel@7810000 { 2333 compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 2334 reg = <0 0x07810000 0 0x1000>; 2335 2336 clocks = <&aoss_qmp>; 2337 clock-names = "apb_pclk"; 2338 2339 out-ports { 2340 port { 2341 apss_merge_funnel_out: endpoint { 2342 remote-endpoint = 2343 <&funnel2_in5>; 2344 }; 2345 }; 2346 }; 2347 2348 in-ports { 2349 port { 2350 apss_merge_funnel_in: endpoint { 2351 remote-endpoint = 2352 <&apss_funnel_out>; 2353 }; 2354 }; 2355 }; 2356 }; 2357 2358 sdhc_2: sdhci@8804000 { 2359 compatible = "qcom,sdm845-sdhci", "qcom,sdhci-msm-v5"; 2360 reg = <0 0x08804000 0 0x1000>; 2361 2362 interrupts = <GIC_SPI 204 IRQ_TYPE_LEVEL_HIGH>, 2363 <GIC_SPI 222 IRQ_TYPE_LEVEL_HIGH>; 2364 interrupt-names = "hc_irq", "pwr_irq"; 2365 2366 clocks = <&gcc GCC_SDCC2_AHB_CLK>, 2367 <&gcc GCC_SDCC2_APPS_CLK>; 2368 clock-names = "iface", "core"; 2369 iommus = <&apps_smmu 0xa0 0xf>; 2370 2371 status = "disabled"; 2372 }; 2373 2374 qspi: spi@88df000 { 2375 compatible = "qcom,sdm845-qspi", "qcom,qspi-v1"; 2376 reg = <0 0x088df000 0 0x600>; 2377 #address-cells = <1>; 2378 #size-cells = <0>; 2379 interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>; 2380 clocks = <&gcc GCC_QSPI_CNOC_PERIPH_AHB_CLK>, 2381 <&gcc GCC_QSPI_CORE_CLK>; 2382 clock-names = "iface", "core"; 2383 status = "disabled"; 2384 }; 2385 2386 usb_1_hsphy: phy@88e2000 { 2387 compatible = "qcom,sdm845-qusb2-phy"; 2388 reg = <0 0x088e2000 0 0x400>; 2389 status = "disabled"; 2390 #phy-cells = <0>; 2391 2392 clocks = <&gcc GCC_USB_PHY_CFG_AHB2PHY_CLK>, 2393 <&rpmhcc RPMH_CXO_CLK>; 2394 clock-names = "cfg_ahb", "ref"; 2395 2396 resets = <&gcc GCC_QUSB2PHY_PRIM_BCR>; 2397 2398 nvmem-cells = <&qusb2p_hstx_trim>; 2399 }; 2400 2401 usb_2_hsphy: phy@88e3000 { 2402 compatible = "qcom,sdm845-qusb2-phy"; 2403 reg = <0 0x088e3000 0 0x400>; 2404 status = "disabled"; 2405 #phy-cells = <0>; 2406 2407 clocks = <&gcc GCC_USB_PHY_CFG_AHB2PHY_CLK>, 2408 <&rpmhcc RPMH_CXO_CLK>; 2409 clock-names = "cfg_ahb", "ref"; 2410 2411 resets = <&gcc GCC_QUSB2PHY_SEC_BCR>; 2412 2413 nvmem-cells = <&qusb2s_hstx_trim>; 2414 }; 2415 2416 usb_1_qmpphy: phy@88e9000 { 2417 compatible = "qcom,sdm845-qmp-usb3-phy"; 2418 reg = <0 0x088e9000 0 0x18c>, 2419 <0 0x088e8000 0 0x10>; 2420 reg-names = "reg-base", "dp_com"; 2421 status = "disabled"; 2422 #clock-cells = <1>; 2423 #address-cells = <2>; 2424 #size-cells = <2>; 2425 ranges; 2426 2427 clocks = <&gcc GCC_USB3_PRIM_PHY_AUX_CLK>, 2428 <&gcc GCC_USB_PHY_CFG_AHB2PHY_CLK>, 2429 <&gcc GCC_USB3_PRIM_CLKREF_CLK>, 2430 <&gcc GCC_USB3_PRIM_PHY_COM_AUX_CLK>; 2431 clock-names = "aux", "cfg_ahb", "ref", "com_aux"; 2432 2433 resets = <&gcc GCC_USB3_DP_PHY_PRIM_BCR>, 2434 <&gcc GCC_USB3_PHY_PRIM_BCR>; 2435 reset-names = "phy", "common"; 2436 2437 usb_1_ssphy: lanes@88e9200 { 2438 reg = <0 0x088e9200 0 0x128>, 2439 <0 0x088e9400 0 0x200>, 2440 <0 0x088e9c00 0 0x218>, 2441 <0 0x088e9600 0 0x128>, 2442 <0 0x088e9800 0 0x200>, 2443 <0 0x088e9a00 0 0x100>; 2444 #phy-cells = <0>; 2445 clocks = <&gcc GCC_USB3_PRIM_PHY_PIPE_CLK>; 2446 clock-names = "pipe0"; 2447 clock-output-names = "usb3_phy_pipe_clk_src"; 2448 }; 2449 }; 2450 2451 usb_2_qmpphy: phy@88eb000 { 2452 compatible = "qcom,sdm845-qmp-usb3-uni-phy"; 2453 reg = <0 0x088eb000 0 0x18c>; 2454 status = "disabled"; 2455 #clock-cells = <1>; 2456 #address-cells = <2>; 2457 #size-cells = <2>; 2458 ranges; 2459 2460 clocks = <&gcc GCC_USB3_SEC_PHY_AUX_CLK>, 2461 <&gcc GCC_USB_PHY_CFG_AHB2PHY_CLK>, 2462 <&gcc GCC_USB3_SEC_CLKREF_CLK>, 2463 <&gcc GCC_USB3_SEC_PHY_COM_AUX_CLK>; 2464 clock-names = "aux", "cfg_ahb", "ref", "com_aux"; 2465 2466 resets = <&gcc GCC_USB3PHY_PHY_SEC_BCR>, 2467 <&gcc GCC_USB3_PHY_SEC_BCR>; 2468 reset-names = "phy", "common"; 2469 2470 usb_2_ssphy: lane@88eb200 { 2471 reg = <0 0x088eb200 0 0x128>, 2472 <0 0x088eb400 0 0x1fc>, 2473 <0 0x088eb800 0 0x218>, 2474 <0 0x088eb600 0 0x70>; 2475 #phy-cells = <0>; 2476 clocks = <&gcc GCC_USB3_SEC_PHY_PIPE_CLK>; 2477 clock-names = "pipe0"; 2478 clock-output-names = "usb3_uni_phy_pipe_clk_src"; 2479 }; 2480 }; 2481 2482 usb_1: usb@a6f8800 { 2483 compatible = "qcom,sdm845-dwc3", "qcom,dwc3"; 2484 reg = <0 0x0a6f8800 0 0x400>; 2485 status = "disabled"; 2486 #address-cells = <2>; 2487 #size-cells = <2>; 2488 ranges; 2489 dma-ranges; 2490 2491 clocks = <&gcc GCC_CFG_NOC_USB3_PRIM_AXI_CLK>, 2492 <&gcc GCC_USB30_PRIM_MASTER_CLK>, 2493 <&gcc GCC_AGGRE_USB3_PRIM_AXI_CLK>, 2494 <&gcc GCC_USB30_PRIM_MOCK_UTMI_CLK>, 2495 <&gcc GCC_USB30_PRIM_SLEEP_CLK>; 2496 clock-names = "cfg_noc", "core", "iface", "mock_utmi", 2497 "sleep"; 2498 2499 assigned-clocks = <&gcc GCC_USB30_PRIM_MOCK_UTMI_CLK>, 2500 <&gcc GCC_USB30_PRIM_MASTER_CLK>; 2501 assigned-clock-rates = <19200000>, <150000000>; 2502 2503 interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>, 2504 <GIC_SPI 486 IRQ_TYPE_LEVEL_HIGH>, 2505 <GIC_SPI 488 IRQ_TYPE_LEVEL_HIGH>, 2506 <GIC_SPI 489 IRQ_TYPE_LEVEL_HIGH>; 2507 interrupt-names = "hs_phy_irq", "ss_phy_irq", 2508 "dm_hs_phy_irq", "dp_hs_phy_irq"; 2509 2510 power-domains = <&gcc USB30_PRIM_GDSC>; 2511 2512 resets = <&gcc GCC_USB30_PRIM_BCR>; 2513 2514 usb_1_dwc3: dwc3@a600000 { 2515 compatible = "snps,dwc3"; 2516 reg = <0 0x0a600000 0 0xcd00>; 2517 interrupts = <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>; 2518 iommus = <&apps_smmu 0x740 0>; 2519 snps,dis_u2_susphy_quirk; 2520 snps,dis_enblslpm_quirk; 2521 phys = <&usb_1_hsphy>, <&usb_1_ssphy>; 2522 phy-names = "usb2-phy", "usb3-phy"; 2523 }; 2524 }; 2525 2526 usb_2: usb@a8f8800 { 2527 compatible = "qcom,sdm845-dwc3", "qcom,dwc3"; 2528 reg = <0 0x0a8f8800 0 0x400>; 2529 status = "disabled"; 2530 #address-cells = <2>; 2531 #size-cells = <2>; 2532 ranges; 2533 dma-ranges; 2534 2535 clocks = <&gcc GCC_CFG_NOC_USB3_SEC_AXI_CLK>, 2536 <&gcc GCC_USB30_SEC_MASTER_CLK>, 2537 <&gcc GCC_AGGRE_USB3_SEC_AXI_CLK>, 2538 <&gcc GCC_USB30_SEC_MOCK_UTMI_CLK>, 2539 <&gcc GCC_USB30_SEC_SLEEP_CLK>; 2540 clock-names = "cfg_noc", "core", "iface", "mock_utmi", 2541 "sleep"; 2542 2543 assigned-clocks = <&gcc GCC_USB30_SEC_MOCK_UTMI_CLK>, 2544 <&gcc GCC_USB30_SEC_MASTER_CLK>; 2545 assigned-clock-rates = <19200000>, <150000000>; 2546 2547 interrupts = <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>, 2548 <GIC_SPI 487 IRQ_TYPE_LEVEL_HIGH>, 2549 <GIC_SPI 490 IRQ_TYPE_LEVEL_HIGH>, 2550 <GIC_SPI 491 IRQ_TYPE_LEVEL_HIGH>; 2551 interrupt-names = "hs_phy_irq", "ss_phy_irq", 2552 "dm_hs_phy_irq", "dp_hs_phy_irq"; 2553 2554 power-domains = <&gcc USB30_SEC_GDSC>; 2555 2556 resets = <&gcc GCC_USB30_SEC_BCR>; 2557 2558 usb_2_dwc3: dwc3@a800000 { 2559 compatible = "snps,dwc3"; 2560 reg = <0 0x0a800000 0 0xcd00>; 2561 interrupts = <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>; 2562 iommus = <&apps_smmu 0x760 0>; 2563 snps,dis_u2_susphy_quirk; 2564 snps,dis_enblslpm_quirk; 2565 phys = <&usb_2_hsphy>, <&usb_2_ssphy>; 2566 phy-names = "usb2-phy", "usb3-phy"; 2567 }; 2568 }; 2569 2570 video-codec@aa00000 { 2571 compatible = "qcom,sdm845-venus"; 2572 reg = <0 0x0aa00000 0 0xff000>; 2573 interrupts = <GIC_SPI 174 IRQ_TYPE_LEVEL_HIGH>; 2574 power-domains = <&videocc VENUS_GDSC>; 2575 clocks = <&videocc VIDEO_CC_VENUS_CTL_CORE_CLK>, 2576 <&videocc VIDEO_CC_VENUS_AHB_CLK>, 2577 <&videocc VIDEO_CC_VENUS_CTL_AXI_CLK>; 2578 clock-names = "core", "iface", "bus"; 2579 iommus = <&apps_smmu 0x10a0 0x8>, 2580 <&apps_smmu 0x10b0 0x0>; 2581 memory-region = <&venus_mem>; 2582 2583 video-core0 { 2584 compatible = "venus-decoder"; 2585 clocks = <&videocc VIDEO_CC_VCODEC0_CORE_CLK>, 2586 <&videocc VIDEO_CC_VCODEC0_AXI_CLK>; 2587 clock-names = "core", "bus"; 2588 power-domains = <&videocc VCODEC0_GDSC>; 2589 }; 2590 2591 video-core1 { 2592 compatible = "venus-encoder"; 2593 clocks = <&videocc VIDEO_CC_VCODEC1_CORE_CLK>, 2594 <&videocc VIDEO_CC_VCODEC1_AXI_CLK>; 2595 clock-names = "core", "bus"; 2596 power-domains = <&videocc VCODEC1_GDSC>; 2597 }; 2598 }; 2599 2600 videocc: clock-controller@ab00000 { 2601 compatible = "qcom,sdm845-videocc"; 2602 reg = <0 0x0ab00000 0 0x10000>; 2603 #clock-cells = <1>; 2604 #power-domain-cells = <1>; 2605 #reset-cells = <1>; 2606 }; 2607 2608 mdss: mdss@ae00000 { 2609 compatible = "qcom,sdm845-mdss"; 2610 reg = <0 0x0ae00000 0 0x1000>; 2611 reg-names = "mdss"; 2612 2613 power-domains = <&dispcc MDSS_GDSC>; 2614 2615 clocks = <&gcc GCC_DISP_AHB_CLK>, 2616 <&gcc GCC_DISP_AXI_CLK>, 2617 <&dispcc DISP_CC_MDSS_MDP_CLK>; 2618 clock-names = "iface", "bus", "core"; 2619 2620 assigned-clocks = <&dispcc DISP_CC_MDSS_MDP_CLK>; 2621 assigned-clock-rates = <300000000>; 2622 2623 interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>; 2624 interrupt-controller; 2625 #interrupt-cells = <1>; 2626 2627 iommus = <&apps_smmu 0x880 0x8>, 2628 <&apps_smmu 0xc80 0x8>; 2629 2630 status = "disabled"; 2631 2632 #address-cells = <2>; 2633 #size-cells = <2>; 2634 ranges; 2635 2636 mdss_mdp: mdp@ae01000 { 2637 compatible = "qcom,sdm845-dpu"; 2638 reg = <0 0x0ae01000 0 0x8f000>, 2639 <0 0x0aeb0000 0 0x2008>; 2640 reg-names = "mdp", "vbif"; 2641 2642 clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>, 2643 <&dispcc DISP_CC_MDSS_AXI_CLK>, 2644 <&dispcc DISP_CC_MDSS_MDP_CLK>, 2645 <&dispcc DISP_CC_MDSS_VSYNC_CLK>; 2646 clock-names = "iface", "bus", "core", "vsync"; 2647 2648 assigned-clocks = <&dispcc DISP_CC_MDSS_MDP_CLK>, 2649 <&dispcc DISP_CC_MDSS_VSYNC_CLK>; 2650 assigned-clock-rates = <300000000>, 2651 <19200000>; 2652 2653 interrupt-parent = <&mdss>; 2654 interrupts = <0 IRQ_TYPE_LEVEL_HIGH>; 2655 2656 status = "disabled"; 2657 2658 ports { 2659 #address-cells = <1>; 2660 #size-cells = <0>; 2661 2662 port@0 { 2663 reg = <0>; 2664 dpu_intf1_out: endpoint { 2665 remote-endpoint = <&dsi0_in>; 2666 }; 2667 }; 2668 2669 port@1 { 2670 reg = <1>; 2671 dpu_intf2_out: endpoint { 2672 remote-endpoint = <&dsi1_in>; 2673 }; 2674 }; 2675 }; 2676 }; 2677 2678 dsi0: dsi@ae94000 { 2679 compatible = "qcom,mdss-dsi-ctrl"; 2680 reg = <0 0x0ae94000 0 0x400>; 2681 reg-names = "dsi_ctrl"; 2682 2683 interrupt-parent = <&mdss>; 2684 interrupts = <4 IRQ_TYPE_LEVEL_HIGH>; 2685 2686 clocks = <&dispcc DISP_CC_MDSS_BYTE0_CLK>, 2687 <&dispcc DISP_CC_MDSS_BYTE0_INTF_CLK>, 2688 <&dispcc DISP_CC_MDSS_PCLK0_CLK>, 2689 <&dispcc DISP_CC_MDSS_ESC0_CLK>, 2690 <&dispcc DISP_CC_MDSS_AHB_CLK>, 2691 <&dispcc DISP_CC_MDSS_AXI_CLK>; 2692 clock-names = "byte", 2693 "byte_intf", 2694 "pixel", 2695 "core", 2696 "iface", 2697 "bus"; 2698 2699 phys = <&dsi0_phy>; 2700 phy-names = "dsi"; 2701 2702 status = "disabled"; 2703 2704 ports { 2705 #address-cells = <1>; 2706 #size-cells = <0>; 2707 2708 port@0 { 2709 reg = <0>; 2710 dsi0_in: endpoint { 2711 remote-endpoint = <&dpu_intf1_out>; 2712 }; 2713 }; 2714 2715 port@1 { 2716 reg = <1>; 2717 dsi0_out: endpoint { 2718 }; 2719 }; 2720 }; 2721 }; 2722 2723 dsi0_phy: dsi-phy@ae94400 { 2724 compatible = "qcom,dsi-phy-10nm"; 2725 reg = <0 0x0ae94400 0 0x200>, 2726 <0 0x0ae94600 0 0x280>, 2727 <0 0x0ae94a00 0 0x1e0>; 2728 reg-names = "dsi_phy", 2729 "dsi_phy_lane", 2730 "dsi_pll"; 2731 2732 #clock-cells = <1>; 2733 #phy-cells = <0>; 2734 2735 clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>, 2736 <&rpmhcc RPMH_CXO_CLK>; 2737 clock-names = "iface", "ref"; 2738 2739 status = "disabled"; 2740 }; 2741 2742 dsi1: dsi@ae96000 { 2743 compatible = "qcom,mdss-dsi-ctrl"; 2744 reg = <0 0x0ae96000 0 0x400>; 2745 reg-names = "dsi_ctrl"; 2746 2747 interrupt-parent = <&mdss>; 2748 interrupts = <5 IRQ_TYPE_LEVEL_HIGH>; 2749 2750 clocks = <&dispcc DISP_CC_MDSS_BYTE1_CLK>, 2751 <&dispcc DISP_CC_MDSS_BYTE1_INTF_CLK>, 2752 <&dispcc DISP_CC_MDSS_PCLK1_CLK>, 2753 <&dispcc DISP_CC_MDSS_ESC1_CLK>, 2754 <&dispcc DISP_CC_MDSS_AHB_CLK>, 2755 <&dispcc DISP_CC_MDSS_AXI_CLK>; 2756 clock-names = "byte", 2757 "byte_intf", 2758 "pixel", 2759 "core", 2760 "iface", 2761 "bus"; 2762 2763 phys = <&dsi1_phy>; 2764 phy-names = "dsi"; 2765 2766 status = "disabled"; 2767 2768 ports { 2769 #address-cells = <1>; 2770 #size-cells = <0>; 2771 2772 port@0 { 2773 reg = <0>; 2774 dsi1_in: endpoint { 2775 remote-endpoint = <&dpu_intf2_out>; 2776 }; 2777 }; 2778 2779 port@1 { 2780 reg = <1>; 2781 dsi1_out: endpoint { 2782 }; 2783 }; 2784 }; 2785 }; 2786 2787 dsi1_phy: dsi-phy@ae96400 { 2788 compatible = "qcom,dsi-phy-10nm"; 2789 reg = <0 0x0ae96400 0 0x200>, 2790 <0 0x0ae96600 0 0x280>, 2791 <0 0x0ae96a00 0 0x10e>; 2792 reg-names = "dsi_phy", 2793 "dsi_phy_lane", 2794 "dsi_pll"; 2795 2796 #clock-cells = <1>; 2797 #phy-cells = <0>; 2798 2799 clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>, 2800 <&rpmhcc RPMH_CXO_CLK>; 2801 clock-names = "iface", "ref"; 2802 2803 status = "disabled"; 2804 }; 2805 }; 2806 2807 gpu@5000000 { 2808 compatible = "qcom,adreno-630.2", "qcom,adreno"; 2809 #stream-id-cells = <16>; 2810 2811 reg = <0 0x5000000 0 0x40000>, <0 0x509e000 0 0x10>; 2812 reg-names = "kgsl_3d0_reg_memory", "cx_mem"; 2813 2814 /* 2815 * Look ma, no clocks! The GPU clocks and power are 2816 * controlled entirely by the GMU 2817 */ 2818 2819 interrupts = <GIC_SPI 300 IRQ_TYPE_LEVEL_HIGH>; 2820 2821 iommus = <&adreno_smmu 0>; 2822 2823 operating-points-v2 = <&gpu_opp_table>; 2824 2825 qcom,gmu = <&gmu>; 2826 2827 zap-shader { 2828 memory-region = <&gpu_mem>; 2829 }; 2830 2831 gpu_opp_table: opp-table { 2832 compatible = "operating-points-v2"; 2833 2834 opp-710000000 { 2835 opp-hz = /bits/ 64 <710000000>; 2836 opp-level = <RPMH_REGULATOR_LEVEL_TURBO_L1>; 2837 }; 2838 2839 opp-675000000 { 2840 opp-hz = /bits/ 64 <675000000>; 2841 opp-level = <RPMH_REGULATOR_LEVEL_TURBO>; 2842 }; 2843 2844 opp-596000000 { 2845 opp-hz = /bits/ 64 <596000000>; 2846 opp-level = <RPMH_REGULATOR_LEVEL_NOM_L1>; 2847 }; 2848 2849 opp-520000000 { 2850 opp-hz = /bits/ 64 <520000000>; 2851 opp-level = <RPMH_REGULATOR_LEVEL_NOM>; 2852 }; 2853 2854 opp-414000000 { 2855 opp-hz = /bits/ 64 <414000000>; 2856 opp-level = <RPMH_REGULATOR_LEVEL_SVS_L1>; 2857 }; 2858 2859 opp-342000000 { 2860 opp-hz = /bits/ 64 <342000000>; 2861 opp-level = <RPMH_REGULATOR_LEVEL_SVS>; 2862 }; 2863 2864 opp-257000000 { 2865 opp-hz = /bits/ 64 <257000000>; 2866 opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS>; 2867 }; 2868 }; 2869 }; 2870 2871 adreno_smmu: iommu@5040000 { 2872 compatible = "qcom,sdm845-smmu-v2", "qcom,smmu-v2"; 2873 reg = <0 0x5040000 0 0x10000>; 2874 #iommu-cells = <1>; 2875 #global-interrupts = <2>; 2876 interrupts = <GIC_SPI 229 IRQ_TYPE_LEVEL_HIGH>, 2877 <GIC_SPI 231 IRQ_TYPE_LEVEL_HIGH>, 2878 <GIC_SPI 364 IRQ_TYPE_EDGE_RISING>, 2879 <GIC_SPI 365 IRQ_TYPE_EDGE_RISING>, 2880 <GIC_SPI 366 IRQ_TYPE_EDGE_RISING>, 2881 <GIC_SPI 367 IRQ_TYPE_EDGE_RISING>, 2882 <GIC_SPI 368 IRQ_TYPE_EDGE_RISING>, 2883 <GIC_SPI 369 IRQ_TYPE_EDGE_RISING>, 2884 <GIC_SPI 370 IRQ_TYPE_EDGE_RISING>, 2885 <GIC_SPI 371 IRQ_TYPE_EDGE_RISING>; 2886 clocks = <&gcc GCC_GPU_MEMNOC_GFX_CLK>, 2887 <&gcc GCC_GPU_CFG_AHB_CLK>; 2888 clock-names = "bus", "iface"; 2889 2890 power-domains = <&gpucc GPU_CX_GDSC>; 2891 }; 2892 2893 gmu: gmu@506a000 { 2894 compatible="qcom,adreno-gmu-630.2", "qcom,adreno-gmu"; 2895 2896 reg = <0 0x506a000 0 0x30000>, 2897 <0 0xb280000 0 0x10000>, 2898 <0 0xb480000 0 0x10000>; 2899 reg-names = "gmu", "gmu_pdc", "gmu_pdc_seq"; 2900 2901 interrupts = <GIC_SPI 304 IRQ_TYPE_LEVEL_HIGH>, 2902 <GIC_SPI 305 IRQ_TYPE_LEVEL_HIGH>; 2903 interrupt-names = "hfi", "gmu"; 2904 2905 clocks = <&gpucc GPU_CC_CX_GMU_CLK>, 2906 <&gpucc GPU_CC_CXO_CLK>, 2907 <&gcc GCC_DDRSS_GPU_AXI_CLK>, 2908 <&gcc GCC_GPU_MEMNOC_GFX_CLK>; 2909 clock-names = "gmu", "cxo", "axi", "memnoc"; 2910 2911 power-domains = <&gpucc GPU_CX_GDSC>, 2912 <&gpucc GPU_GX_GDSC>; 2913 power-domain-names = "cx", "gx"; 2914 2915 iommus = <&adreno_smmu 5>; 2916 2917 operating-points-v2 = <&gmu_opp_table>; 2918 2919 gmu_opp_table: opp-table { 2920 compatible = "operating-points-v2"; 2921 2922 opp-400000000 { 2923 opp-hz = /bits/ 64 <400000000>; 2924 opp-level = <RPMH_REGULATOR_LEVEL_SVS>; 2925 }; 2926 2927 opp-200000000 { 2928 opp-hz = /bits/ 64 <200000000>; 2929 opp-level = <RPMH_REGULATOR_LEVEL_MIN_SVS>; 2930 }; 2931 }; 2932 }; 2933 2934 dispcc: clock-controller@af00000 { 2935 compatible = "qcom,sdm845-dispcc"; 2936 reg = <0 0x0af00000 0 0x10000>; 2937 #clock-cells = <1>; 2938 #reset-cells = <1>; 2939 #power-domain-cells = <1>; 2940 }; 2941 2942 pdc_reset: reset-controller@b2e0000 { 2943 compatible = "qcom,sdm845-pdc-global"; 2944 reg = <0 0x0b2e0000 0 0x20000>; 2945 #reset-cells = <1>; 2946 }; 2947 2948 tsens0: thermal-sensor@c263000 { 2949 compatible = "qcom,sdm845-tsens", "qcom,tsens-v2"; 2950 reg = <0 0x0c263000 0 0x1ff>, /* TM */ 2951 <0 0x0c222000 0 0x1ff>; /* SROT */ 2952 #qcom,sensors = <13>; 2953 #thermal-sensor-cells = <1>; 2954 }; 2955 2956 tsens1: thermal-sensor@c265000 { 2957 compatible = "qcom,sdm845-tsens", "qcom,tsens-v2"; 2958 reg = <0 0x0c265000 0 0x1ff>, /* TM */ 2959 <0 0x0c223000 0 0x1ff>; /* SROT */ 2960 #qcom,sensors = <8>; 2961 #thermal-sensor-cells = <1>; 2962 }; 2963 2964 aoss_reset: reset-controller@c2a0000 { 2965 compatible = "qcom,sdm845-aoss-cc"; 2966 reg = <0 0x0c2a0000 0 0x31000>; 2967 #reset-cells = <1>; 2968 }; 2969 2970 aoss_qmp: qmp@c300000 { 2971 compatible = "qcom,sdm845-aoss-qmp"; 2972 reg = <0 0x0c300000 0 0x100000>; 2973 interrupts = <GIC_SPI 389 IRQ_TYPE_EDGE_RISING>; 2974 mboxes = <&apss_shared 0>; 2975 2976 #clock-cells = <0>; 2977 #power-domain-cells = <1>; 2978 2979 cx_cdev: cx { 2980 #cooling-cells = <2>; 2981 }; 2982 2983 ebi_cdev: ebi { 2984 #cooling-cells = <2>; 2985 }; 2986 }; 2987 2988 spmi_bus: spmi@c440000 { 2989 compatible = "qcom,spmi-pmic-arb"; 2990 reg = <0 0x0c440000 0 0x1100>, 2991 <0 0x0c600000 0 0x2000000>, 2992 <0 0x0e600000 0 0x100000>, 2993 <0 0x0e700000 0 0xa0000>, 2994 <0 0x0c40a000 0 0x26000>; 2995 reg-names = "core", "chnls", "obsrvr", "intr", "cnfg"; 2996 interrupt-names = "periph_irq"; 2997 interrupts = <GIC_SPI 481 IRQ_TYPE_LEVEL_HIGH>; 2998 qcom,ee = <0>; 2999 qcom,channel = <0>; 3000 #address-cells = <2>; 3001 #size-cells = <0>; 3002 interrupt-controller; 3003 #interrupt-cells = <4>; 3004 cell-index = <0>; 3005 }; 3006 3007 apps_smmu: iommu@15000000 { 3008 compatible = "qcom,sdm845-smmu-500", "arm,mmu-500"; 3009 reg = <0 0x15000000 0 0x80000>; 3010 #iommu-cells = <2>; 3011 #global-interrupts = <1>; 3012 interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>, 3013 <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>, 3014 <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>, 3015 <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>, 3016 <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>, 3017 <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>, 3018 <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>, 3019 <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>, 3020 <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>, 3021 <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>, 3022 <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>, 3023 <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>, 3024 <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>, 3025 <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>, 3026 <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>, 3027 <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>, 3028 <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>, 3029 <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>, 3030 <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>, 3031 <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>, 3032 <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>, 3033 <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>, 3034 <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>, 3035 <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>, 3036 <GIC_SPI 181 IRQ_TYPE_LEVEL_HIGH>, 3037 <GIC_SPI 182 IRQ_TYPE_LEVEL_HIGH>, 3038 <GIC_SPI 183 IRQ_TYPE_LEVEL_HIGH>, 3039 <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>, 3040 <GIC_SPI 185 IRQ_TYPE_LEVEL_HIGH>, 3041 <GIC_SPI 186 IRQ_TYPE_LEVEL_HIGH>, 3042 <GIC_SPI 187 IRQ_TYPE_LEVEL_HIGH>, 3043 <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>, 3044 <GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH>, 3045 <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>, 3046 <GIC_SPI 191 IRQ_TYPE_LEVEL_HIGH>, 3047 <GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH>, 3048 <GIC_SPI 315 IRQ_TYPE_LEVEL_HIGH>, 3049 <GIC_SPI 316 IRQ_TYPE_LEVEL_HIGH>, 3050 <GIC_SPI 317 IRQ_TYPE_LEVEL_HIGH>, 3051 <GIC_SPI 318 IRQ_TYPE_LEVEL_HIGH>, 3052 <GIC_SPI 319 IRQ_TYPE_LEVEL_HIGH>, 3053 <GIC_SPI 320 IRQ_TYPE_LEVEL_HIGH>, 3054 <GIC_SPI 321 IRQ_TYPE_LEVEL_HIGH>, 3055 <GIC_SPI 322 IRQ_TYPE_LEVEL_HIGH>, 3056 <GIC_SPI 323 IRQ_TYPE_LEVEL_HIGH>, 3057 <GIC_SPI 324 IRQ_TYPE_LEVEL_HIGH>, 3058 <GIC_SPI 325 IRQ_TYPE_LEVEL_HIGH>, 3059 <GIC_SPI 326 IRQ_TYPE_LEVEL_HIGH>, 3060 <GIC_SPI 327 IRQ_TYPE_LEVEL_HIGH>, 3061 <GIC_SPI 328 IRQ_TYPE_LEVEL_HIGH>, 3062 <GIC_SPI 329 IRQ_TYPE_LEVEL_HIGH>, 3063 <GIC_SPI 330 IRQ_TYPE_LEVEL_HIGH>, 3064 <GIC_SPI 331 IRQ_TYPE_LEVEL_HIGH>, 3065 <GIC_SPI 332 IRQ_TYPE_LEVEL_HIGH>, 3066 <GIC_SPI 333 IRQ_TYPE_LEVEL_HIGH>, 3067 <GIC_SPI 334 IRQ_TYPE_LEVEL_HIGH>, 3068 <GIC_SPI 335 IRQ_TYPE_LEVEL_HIGH>, 3069 <GIC_SPI 336 IRQ_TYPE_LEVEL_HIGH>, 3070 <GIC_SPI 337 IRQ_TYPE_LEVEL_HIGH>, 3071 <GIC_SPI 338 IRQ_TYPE_LEVEL_HIGH>, 3072 <GIC_SPI 339 IRQ_TYPE_LEVEL_HIGH>, 3073 <GIC_SPI 340 IRQ_TYPE_LEVEL_HIGH>, 3074 <GIC_SPI 341 IRQ_TYPE_LEVEL_HIGH>, 3075 <GIC_SPI 342 IRQ_TYPE_LEVEL_HIGH>, 3076 <GIC_SPI 343 IRQ_TYPE_LEVEL_HIGH>; 3077 }; 3078 3079 lpasscc: clock-controller@17014000 { 3080 compatible = "qcom,sdm845-lpasscc"; 3081 reg = <0 0x17014000 0 0x1f004>, <0 0x17300000 0 0x200>; 3082 reg-names = "cc", "qdsp6ss"; 3083 #clock-cells = <1>; 3084 status = "disabled"; 3085 }; 3086 3087 apss_shared: mailbox@17990000 { 3088 compatible = "qcom,sdm845-apss-shared"; 3089 reg = <0 0x17990000 0 0x1000>; 3090 #mbox-cells = <1>; 3091 }; 3092 3093 apps_rsc: rsc@179c0000 { 3094 label = "apps_rsc"; 3095 compatible = "qcom,rpmh-rsc"; 3096 reg = <0 0x179c0000 0 0x10000>, 3097 <0 0x179d0000 0 0x10000>, 3098 <0 0x179e0000 0 0x10000>; 3099 reg-names = "drv-0", "drv-1", "drv-2"; 3100 interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>, 3101 <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>, 3102 <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>; 3103 qcom,tcs-offset = <0xd00>; 3104 qcom,drv-id = <2>; 3105 qcom,tcs-config = <ACTIVE_TCS 2>, 3106 <SLEEP_TCS 3>, 3107 <WAKE_TCS 3>, 3108 <CONTROL_TCS 1>; 3109 3110 rpmhcc: clock-controller { 3111 compatible = "qcom,sdm845-rpmh-clk"; 3112 #clock-cells = <1>; 3113 clock-names = "xo"; 3114 clocks = <&xo_board>; 3115 }; 3116 3117 rpmhpd: power-controller { 3118 compatible = "qcom,sdm845-rpmhpd"; 3119 #power-domain-cells = <1>; 3120 operating-points-v2 = <&rpmhpd_opp_table>; 3121 3122 rpmhpd_opp_table: opp-table { 3123 compatible = "operating-points-v2"; 3124 3125 rpmhpd_opp_ret: opp1 { 3126 opp-level = <RPMH_REGULATOR_LEVEL_RETENTION>; 3127 }; 3128 3129 rpmhpd_opp_min_svs: opp2 { 3130 opp-level = <RPMH_REGULATOR_LEVEL_MIN_SVS>; 3131 }; 3132 3133 rpmhpd_opp_low_svs: opp3 { 3134 opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS>; 3135 }; 3136 3137 rpmhpd_opp_svs: opp4 { 3138 opp-level = <RPMH_REGULATOR_LEVEL_SVS>; 3139 }; 3140 3141 rpmhpd_opp_svs_l1: opp5 { 3142 opp-level = <RPMH_REGULATOR_LEVEL_SVS_L1>; 3143 }; 3144 3145 rpmhpd_opp_nom: opp6 { 3146 opp-level = <RPMH_REGULATOR_LEVEL_NOM>; 3147 }; 3148 3149 rpmhpd_opp_nom_l1: opp7 { 3150 opp-level = <RPMH_REGULATOR_LEVEL_NOM_L1>; 3151 }; 3152 3153 rpmhpd_opp_nom_l2: opp8 { 3154 opp-level = <RPMH_REGULATOR_LEVEL_NOM_L2>; 3155 }; 3156 3157 rpmhpd_opp_turbo: opp9 { 3158 opp-level = <RPMH_REGULATOR_LEVEL_TURBO>; 3159 }; 3160 3161 rpmhpd_opp_turbo_l1: opp10 { 3162 opp-level = <RPMH_REGULATOR_LEVEL_TURBO_L1>; 3163 }; 3164 }; 3165 }; 3166 3167 rsc_hlos: interconnect { 3168 compatible = "qcom,sdm845-rsc-hlos"; 3169 #interconnect-cells = <1>; 3170 }; 3171 }; 3172 3173 intc: interrupt-controller@17a00000 { 3174 compatible = "arm,gic-v3"; 3175 #address-cells = <2>; 3176 #size-cells = <2>; 3177 ranges; 3178 #interrupt-cells = <3>; 3179 interrupt-controller; 3180 reg = <0 0x17a00000 0 0x10000>, /* GICD */ 3181 <0 0x17a60000 0 0x100000>; /* GICR * 8 */ 3182 interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>; 3183 3184 gic-its@17a40000 { 3185 compatible = "arm,gic-v3-its"; 3186 msi-controller; 3187 #msi-cells = <1>; 3188 reg = <0 0x17a40000 0 0x20000>; 3189 status = "disabled"; 3190 }; 3191 }; 3192 3193 timer@17c90000 { 3194 #address-cells = <2>; 3195 #size-cells = <2>; 3196 ranges; 3197 compatible = "arm,armv7-timer-mem"; 3198 reg = <0 0x17c90000 0 0x1000>; 3199 3200 frame@17ca0000 { 3201 frame-number = <0>; 3202 interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>, 3203 <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>; 3204 reg = <0 0x17ca0000 0 0x1000>, 3205 <0 0x17cb0000 0 0x1000>; 3206 }; 3207 3208 frame@17cc0000 { 3209 frame-number = <1>; 3210 interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>; 3211 reg = <0 0x17cc0000 0 0x1000>; 3212 status = "disabled"; 3213 }; 3214 3215 frame@17cd0000 { 3216 frame-number = <2>; 3217 interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>; 3218 reg = <0 0x17cd0000 0 0x1000>; 3219 status = "disabled"; 3220 }; 3221 3222 frame@17ce0000 { 3223 frame-number = <3>; 3224 interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>; 3225 reg = <0 0x17ce0000 0 0x1000>; 3226 status = "disabled"; 3227 }; 3228 3229 frame@17cf0000 { 3230 frame-number = <4>; 3231 interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>; 3232 reg = <0 0x17cf0000 0 0x1000>; 3233 status = "disabled"; 3234 }; 3235 3236 frame@17d00000 { 3237 frame-number = <5>; 3238 interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>; 3239 reg = <0 0x17d00000 0 0x1000>; 3240 status = "disabled"; 3241 }; 3242 3243 frame@17d10000 { 3244 frame-number = <6>; 3245 interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>; 3246 reg = <0 0x17d10000 0 0x1000>; 3247 status = "disabled"; 3248 }; 3249 }; 3250 3251 cpufreq_hw: cpufreq@17d43000 { 3252 compatible = "qcom,cpufreq-hw"; 3253 reg = <0 0x17d43000 0 0x1400>, <0 0x17d45800 0 0x1400>; 3254 reg-names = "freq-domain0", "freq-domain1"; 3255 3256 clocks = <&rpmhcc RPMH_CXO_CLK>, <&gcc GPLL0>; 3257 clock-names = "xo", "alternate"; 3258 3259 #freq-domain-cells = <1>; 3260 }; 3261 3262 wifi: wifi@18800000 { 3263 compatible = "qcom,wcn3990-wifi"; 3264 status = "disabled"; 3265 reg = <0 0x18800000 0 0x800000>; 3266 reg-names = "membase"; 3267 memory-region = <&wlan_msa_mem>; 3268 clock-names = "cxo_ref_clk_pin"; 3269 clocks = <&rpmhcc RPMH_RF_CLK2>; 3270 interrupts = 3271 <GIC_SPI 414 IRQ_TYPE_LEVEL_HIGH>, 3272 <GIC_SPI 415 IRQ_TYPE_LEVEL_HIGH>, 3273 <GIC_SPI 416 IRQ_TYPE_LEVEL_HIGH>, 3274 <GIC_SPI 417 IRQ_TYPE_LEVEL_HIGH>, 3275 <GIC_SPI 418 IRQ_TYPE_LEVEL_HIGH>, 3276 <GIC_SPI 419 IRQ_TYPE_LEVEL_HIGH>, 3277 <GIC_SPI 420 IRQ_TYPE_LEVEL_HIGH>, 3278 <GIC_SPI 421 IRQ_TYPE_LEVEL_HIGH>, 3279 <GIC_SPI 422 IRQ_TYPE_LEVEL_HIGH>, 3280 <GIC_SPI 423 IRQ_TYPE_LEVEL_HIGH>, 3281 <GIC_SPI 424 IRQ_TYPE_LEVEL_HIGH>, 3282 <GIC_SPI 425 IRQ_TYPE_LEVEL_HIGH>; 3283 iommus = <&apps_smmu 0x0040 0x1>; 3284 }; 3285 }; 3286 3287 thermal-zones { 3288 cpu0-thermal { 3289 polling-delay-passive = <250>; 3290 polling-delay = <1000>; 3291 3292 thermal-sensors = <&tsens0 1>; 3293 3294 trips { 3295 cpu0_alert0: trip-point0 { 3296 temperature = <90000>; 3297 hysteresis = <2000>; 3298 type = "passive"; 3299 }; 3300 3301 cpu0_alert1: trip-point1 { 3302 temperature = <95000>; 3303 hysteresis = <2000>; 3304 type = "passive"; 3305 }; 3306 3307 cpu0_crit: cpu_crit { 3308 temperature = <110000>; 3309 hysteresis = <1000>; 3310 type = "critical"; 3311 }; 3312 }; 3313 3314 cooling-maps { 3315 map0 { 3316 trip = <&cpu0_alert0>; 3317 cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3318 <&CPU1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3319 <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3320 <&CPU3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 3321 }; 3322 map1 { 3323 trip = <&cpu0_alert1>; 3324 cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3325 <&CPU1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3326 <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3327 <&CPU3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 3328 }; 3329 }; 3330 }; 3331 3332 cpu1-thermal { 3333 polling-delay-passive = <250>; 3334 polling-delay = <1000>; 3335 3336 thermal-sensors = <&tsens0 2>; 3337 3338 trips { 3339 cpu1_alert0: trip-point0 { 3340 temperature = <90000>; 3341 hysteresis = <2000>; 3342 type = "passive"; 3343 }; 3344 3345 cpu1_alert1: trip-point1 { 3346 temperature = <95000>; 3347 hysteresis = <2000>; 3348 type = "passive"; 3349 }; 3350 3351 cpu1_crit: cpu_crit { 3352 temperature = <110000>; 3353 hysteresis = <1000>; 3354 type = "critical"; 3355 }; 3356 }; 3357 3358 cooling-maps { 3359 map0 { 3360 trip = <&cpu1_alert0>; 3361 cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3362 <&CPU1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3363 <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3364 <&CPU3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 3365 }; 3366 map1 { 3367 trip = <&cpu1_alert1>; 3368 cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3369 <&CPU1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3370 <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3371 <&CPU3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 3372 }; 3373 }; 3374 }; 3375 3376 cpu2-thermal { 3377 polling-delay-passive = <250>; 3378 polling-delay = <1000>; 3379 3380 thermal-sensors = <&tsens0 3>; 3381 3382 trips { 3383 cpu2_alert0: trip-point0 { 3384 temperature = <90000>; 3385 hysteresis = <2000>; 3386 type = "passive"; 3387 }; 3388 3389 cpu2_alert1: trip-point1 { 3390 temperature = <95000>; 3391 hysteresis = <2000>; 3392 type = "passive"; 3393 }; 3394 3395 cpu2_crit: cpu_crit { 3396 temperature = <110000>; 3397 hysteresis = <1000>; 3398 type = "critical"; 3399 }; 3400 }; 3401 3402 cooling-maps { 3403 map0 { 3404 trip = <&cpu2_alert0>; 3405 cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3406 <&CPU1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3407 <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3408 <&CPU3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 3409 }; 3410 map1 { 3411 trip = <&cpu2_alert1>; 3412 cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3413 <&CPU1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3414 <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3415 <&CPU3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 3416 }; 3417 }; 3418 }; 3419 3420 cpu3-thermal { 3421 polling-delay-passive = <250>; 3422 polling-delay = <1000>; 3423 3424 thermal-sensors = <&tsens0 4>; 3425 3426 trips { 3427 cpu3_alert0: trip-point0 { 3428 temperature = <90000>; 3429 hysteresis = <2000>; 3430 type = "passive"; 3431 }; 3432 3433 cpu3_alert1: trip-point1 { 3434 temperature = <95000>; 3435 hysteresis = <2000>; 3436 type = "passive"; 3437 }; 3438 3439 cpu3_crit: cpu_crit { 3440 temperature = <110000>; 3441 hysteresis = <1000>; 3442 type = "critical"; 3443 }; 3444 }; 3445 3446 cooling-maps { 3447 map0 { 3448 trip = <&cpu3_alert0>; 3449 cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3450 <&CPU1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3451 <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3452 <&CPU3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 3453 }; 3454 map1 { 3455 trip = <&cpu3_alert1>; 3456 cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3457 <&CPU1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3458 <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3459 <&CPU3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 3460 }; 3461 }; 3462 }; 3463 3464 cpu4-thermal { 3465 polling-delay-passive = <250>; 3466 polling-delay = <1000>; 3467 3468 thermal-sensors = <&tsens0 7>; 3469 3470 trips { 3471 cpu4_alert0: trip-point0 { 3472 temperature = <90000>; 3473 hysteresis = <2000>; 3474 type = "passive"; 3475 }; 3476 3477 cpu4_alert1: trip-point1 { 3478 temperature = <95000>; 3479 hysteresis = <2000>; 3480 type = "passive"; 3481 }; 3482 3483 cpu4_crit: cpu_crit { 3484 temperature = <110000>; 3485 hysteresis = <1000>; 3486 type = "critical"; 3487 }; 3488 }; 3489 3490 cooling-maps { 3491 map0 { 3492 trip = <&cpu4_alert0>; 3493 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3494 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3495 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3496 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 3497 }; 3498 map1 { 3499 trip = <&cpu4_alert1>; 3500 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3501 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3502 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3503 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 3504 }; 3505 }; 3506 }; 3507 3508 cpu5-thermal { 3509 polling-delay-passive = <250>; 3510 polling-delay = <1000>; 3511 3512 thermal-sensors = <&tsens0 8>; 3513 3514 trips { 3515 cpu5_alert0: trip-point0 { 3516 temperature = <90000>; 3517 hysteresis = <2000>; 3518 type = "passive"; 3519 }; 3520 3521 cpu5_alert1: trip-point1 { 3522 temperature = <95000>; 3523 hysteresis = <2000>; 3524 type = "passive"; 3525 }; 3526 3527 cpu5_crit: cpu_crit { 3528 temperature = <110000>; 3529 hysteresis = <1000>; 3530 type = "critical"; 3531 }; 3532 }; 3533 3534 cooling-maps { 3535 map0 { 3536 trip = <&cpu5_alert0>; 3537 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3538 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3539 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3540 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 3541 }; 3542 map1 { 3543 trip = <&cpu5_alert1>; 3544 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3545 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3546 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3547 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 3548 }; 3549 }; 3550 }; 3551 3552 cpu6-thermal { 3553 polling-delay-passive = <250>; 3554 polling-delay = <1000>; 3555 3556 thermal-sensors = <&tsens0 9>; 3557 3558 trips { 3559 cpu6_alert0: trip-point0 { 3560 temperature = <90000>; 3561 hysteresis = <2000>; 3562 type = "passive"; 3563 }; 3564 3565 cpu6_alert1: trip-point1 { 3566 temperature = <95000>; 3567 hysteresis = <2000>; 3568 type = "passive"; 3569 }; 3570 3571 cpu6_crit: cpu_crit { 3572 temperature = <110000>; 3573 hysteresis = <1000>; 3574 type = "critical"; 3575 }; 3576 }; 3577 3578 cooling-maps { 3579 map0 { 3580 trip = <&cpu6_alert0>; 3581 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3582 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3583 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3584 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 3585 }; 3586 map1 { 3587 trip = <&cpu6_alert1>; 3588 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3589 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3590 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3591 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 3592 }; 3593 }; 3594 }; 3595 3596 cpu7-thermal { 3597 polling-delay-passive = <250>; 3598 polling-delay = <1000>; 3599 3600 thermal-sensors = <&tsens0 10>; 3601 3602 trips { 3603 cpu7_alert0: trip-point0 { 3604 temperature = <90000>; 3605 hysteresis = <2000>; 3606 type = "passive"; 3607 }; 3608 3609 cpu7_alert1: trip-point1 { 3610 temperature = <95000>; 3611 hysteresis = <2000>; 3612 type = "passive"; 3613 }; 3614 3615 cpu7_crit: cpu_crit { 3616 temperature = <110000>; 3617 hysteresis = <1000>; 3618 type = "critical"; 3619 }; 3620 }; 3621 3622 cooling-maps { 3623 map0 { 3624 trip = <&cpu7_alert0>; 3625 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3626 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3627 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3628 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 3629 }; 3630 map1 { 3631 trip = <&cpu7_alert1>; 3632 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3633 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3634 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 3635 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 3636 }; 3637 }; 3638 }; 3639 3640 aoss0-thermal { 3641 polling-delay-passive = <250>; 3642 polling-delay = <1000>; 3643 3644 thermal-sensors = <&tsens0 0>; 3645 3646 trips { 3647 aoss0_alert0: trip-point0 { 3648 temperature = <90000>; 3649 hysteresis = <2000>; 3650 type = "hot"; 3651 }; 3652 }; 3653 }; 3654 3655 cluster0-thermal { 3656 polling-delay-passive = <250>; 3657 polling-delay = <1000>; 3658 3659 thermal-sensors = <&tsens0 5>; 3660 3661 trips { 3662 cluster0_alert0: trip-point0 { 3663 temperature = <90000>; 3664 hysteresis = <2000>; 3665 type = "hot"; 3666 }; 3667 cluster0_crit: cluster0_crit { 3668 temperature = <110000>; 3669 hysteresis = <2000>; 3670 type = "critical"; 3671 }; 3672 }; 3673 }; 3674 3675 cluster1-thermal { 3676 polling-delay-passive = <250>; 3677 polling-delay = <1000>; 3678 3679 thermal-sensors = <&tsens0 6>; 3680 3681 trips { 3682 cluster1_alert0: trip-point0 { 3683 temperature = <90000>; 3684 hysteresis = <2000>; 3685 type = "hot"; 3686 }; 3687 cluster1_crit: cluster1_crit { 3688 temperature = <110000>; 3689 hysteresis = <2000>; 3690 type = "critical"; 3691 }; 3692 }; 3693 }; 3694 3695 gpu-thermal-top { 3696 polling-delay-passive = <250>; 3697 polling-delay = <1000>; 3698 3699 thermal-sensors = <&tsens0 11>; 3700 3701 trips { 3702 gpu1_alert0: trip-point0 { 3703 temperature = <90000>; 3704 hysteresis = <2000>; 3705 type = "hot"; 3706 }; 3707 }; 3708 }; 3709 3710 gpu-thermal-bottom { 3711 polling-delay-passive = <250>; 3712 polling-delay = <1000>; 3713 3714 thermal-sensors = <&tsens0 12>; 3715 3716 trips { 3717 gpu2_alert0: trip-point0 { 3718 temperature = <90000>; 3719 hysteresis = <2000>; 3720 type = "hot"; 3721 }; 3722 }; 3723 }; 3724 3725 aoss1-thermal { 3726 polling-delay-passive = <250>; 3727 polling-delay = <1000>; 3728 3729 thermal-sensors = <&tsens1 0>; 3730 3731 trips { 3732 aoss1_alert0: trip-point0 { 3733 temperature = <90000>; 3734 hysteresis = <2000>; 3735 type = "hot"; 3736 }; 3737 }; 3738 }; 3739 3740 q6-modem-thermal { 3741 polling-delay-passive = <250>; 3742 polling-delay = <1000>; 3743 3744 thermal-sensors = <&tsens1 1>; 3745 3746 trips { 3747 q6_modem_alert0: trip-point0 { 3748 temperature = <90000>; 3749 hysteresis = <2000>; 3750 type = "hot"; 3751 }; 3752 }; 3753 }; 3754 3755 mem-thermal { 3756 polling-delay-passive = <250>; 3757 polling-delay = <1000>; 3758 3759 thermal-sensors = <&tsens1 2>; 3760 3761 trips { 3762 mem_alert0: trip-point0 { 3763 temperature = <90000>; 3764 hysteresis = <2000>; 3765 type = "hot"; 3766 }; 3767 }; 3768 }; 3769 3770 wlan-thermal { 3771 polling-delay-passive = <250>; 3772 polling-delay = <1000>; 3773 3774 thermal-sensors = <&tsens1 3>; 3775 3776 trips { 3777 wlan_alert0: trip-point0 { 3778 temperature = <90000>; 3779 hysteresis = <2000>; 3780 type = "hot"; 3781 }; 3782 }; 3783 }; 3784 3785 q6-hvx-thermal { 3786 polling-delay-passive = <250>; 3787 polling-delay = <1000>; 3788 3789 thermal-sensors = <&tsens1 4>; 3790 3791 trips { 3792 q6_hvx_alert0: trip-point0 { 3793 temperature = <90000>; 3794 hysteresis = <2000>; 3795 type = "hot"; 3796 }; 3797 }; 3798 }; 3799 3800 camera-thermal { 3801 polling-delay-passive = <250>; 3802 polling-delay = <1000>; 3803 3804 thermal-sensors = <&tsens1 5>; 3805 3806 trips { 3807 camera_alert0: trip-point0 { 3808 temperature = <90000>; 3809 hysteresis = <2000>; 3810 type = "hot"; 3811 }; 3812 }; 3813 }; 3814 3815 video-thermal { 3816 polling-delay-passive = <250>; 3817 polling-delay = <1000>; 3818 3819 thermal-sensors = <&tsens1 6>; 3820 3821 trips { 3822 video_alert0: trip-point0 { 3823 temperature = <90000>; 3824 hysteresis = <2000>; 3825 type = "hot"; 3826 }; 3827 }; 3828 }; 3829 3830 modem-thermal { 3831 polling-delay-passive = <250>; 3832 polling-delay = <1000>; 3833 3834 thermal-sensors = <&tsens1 7>; 3835 3836 trips { 3837 modem_alert0: trip-point0 { 3838 temperature = <90000>; 3839 hysteresis = <2000>; 3840 type = "hot"; 3841 }; 3842 }; 3843 }; 3844 }; 3845}; 3846