1// SPDX-License-Identifier: BSD-3-Clause 2/* 3 * Copyright (c) 2017-2019, The Linux Foundation. All rights reserved. 4 * Copyright (c) 2019, Linaro Limited 5 */ 6 7#include <dt-bindings/dma/qcom-gpi.h> 8#include <dt-bindings/interrupt-controller/arm-gic.h> 9#include <dt-bindings/power/qcom-rpmpd.h> 10#include <dt-bindings/soc/qcom,rpmh-rsc.h> 11#include <dt-bindings/clock/qcom,rpmh.h> 12#include <dt-bindings/clock/qcom,gcc-sm8150.h> 13#include <dt-bindings/clock/qcom,gpucc-sm8150.h> 14#include <dt-bindings/interconnect/qcom,osm-l3.h> 15#include <dt-bindings/interconnect/qcom,sm8150.h> 16#include <dt-bindings/thermal/thermal.h> 17 18/ { 19 interrupt-parent = <&intc>; 20 21 #address-cells = <2>; 22 #size-cells = <2>; 23 24 chosen { }; 25 26 clocks { 27 xo_board: xo-board { 28 compatible = "fixed-clock"; 29 #clock-cells = <0>; 30 clock-frequency = <38400000>; 31 clock-output-names = "xo_board"; 32 }; 33 34 sleep_clk: sleep-clk { 35 compatible = "fixed-clock"; 36 #clock-cells = <0>; 37 clock-frequency = <32764>; 38 clock-output-names = "sleep_clk"; 39 }; 40 }; 41 42 cpus { 43 #address-cells = <2>; 44 #size-cells = <0>; 45 46 CPU0: cpu@0 { 47 device_type = "cpu"; 48 compatible = "qcom,kryo485"; 49 reg = <0x0 0x0>; 50 enable-method = "psci"; 51 capacity-dmips-mhz = <488>; 52 dynamic-power-coefficient = <232>; 53 next-level-cache = <&L2_0>; 54 qcom,freq-domain = <&cpufreq_hw 0>; 55 operating-points-v2 = <&cpu0_opp_table>; 56 interconnects = <&gem_noc MASTER_AMPSS_M0 &mc_virt SLAVE_EBI_CH0>, 57 <&osm_l3 MASTER_OSM_L3_APPS &osm_l3 SLAVE_OSM_L3>; 58 power-domains = <&CPU_PD0>; 59 power-domain-names = "psci"; 60 #cooling-cells = <2>; 61 L2_0: l2-cache { 62 compatible = "cache"; 63 next-level-cache = <&L3_0>; 64 L3_0: l3-cache { 65 compatible = "cache"; 66 }; 67 }; 68 }; 69 70 CPU1: cpu@100 { 71 device_type = "cpu"; 72 compatible = "qcom,kryo485"; 73 reg = <0x0 0x100>; 74 enable-method = "psci"; 75 capacity-dmips-mhz = <488>; 76 dynamic-power-coefficient = <232>; 77 next-level-cache = <&L2_100>; 78 qcom,freq-domain = <&cpufreq_hw 0>; 79 operating-points-v2 = <&cpu0_opp_table>; 80 interconnects = <&gem_noc MASTER_AMPSS_M0 &mc_virt SLAVE_EBI_CH0>, 81 <&osm_l3 MASTER_OSM_L3_APPS &osm_l3 SLAVE_OSM_L3>; 82 power-domains = <&CPU_PD1>; 83 power-domain-names = "psci"; 84 #cooling-cells = <2>; 85 L2_100: l2-cache { 86 compatible = "cache"; 87 next-level-cache = <&L3_0>; 88 }; 89 90 }; 91 92 CPU2: cpu@200 { 93 device_type = "cpu"; 94 compatible = "qcom,kryo485"; 95 reg = <0x0 0x200>; 96 enable-method = "psci"; 97 capacity-dmips-mhz = <488>; 98 dynamic-power-coefficient = <232>; 99 next-level-cache = <&L2_200>; 100 qcom,freq-domain = <&cpufreq_hw 0>; 101 operating-points-v2 = <&cpu0_opp_table>; 102 interconnects = <&gem_noc MASTER_AMPSS_M0 &mc_virt SLAVE_EBI_CH0>, 103 <&osm_l3 MASTER_OSM_L3_APPS &osm_l3 SLAVE_OSM_L3>; 104 power-domains = <&CPU_PD2>; 105 power-domain-names = "psci"; 106 #cooling-cells = <2>; 107 L2_200: l2-cache { 108 compatible = "cache"; 109 next-level-cache = <&L3_0>; 110 }; 111 }; 112 113 CPU3: cpu@300 { 114 device_type = "cpu"; 115 compatible = "qcom,kryo485"; 116 reg = <0x0 0x300>; 117 enable-method = "psci"; 118 capacity-dmips-mhz = <488>; 119 dynamic-power-coefficient = <232>; 120 next-level-cache = <&L2_300>; 121 qcom,freq-domain = <&cpufreq_hw 0>; 122 operating-points-v2 = <&cpu0_opp_table>; 123 interconnects = <&gem_noc MASTER_AMPSS_M0 &mc_virt SLAVE_EBI_CH0>, 124 <&osm_l3 MASTER_OSM_L3_APPS &osm_l3 SLAVE_OSM_L3>; 125 power-domains = <&CPU_PD3>; 126 power-domain-names = "psci"; 127 #cooling-cells = <2>; 128 L2_300: l2-cache { 129 compatible = "cache"; 130 next-level-cache = <&L3_0>; 131 }; 132 }; 133 134 CPU4: cpu@400 { 135 device_type = "cpu"; 136 compatible = "qcom,kryo485"; 137 reg = <0x0 0x400>; 138 enable-method = "psci"; 139 capacity-dmips-mhz = <1024>; 140 dynamic-power-coefficient = <369>; 141 next-level-cache = <&L2_400>; 142 qcom,freq-domain = <&cpufreq_hw 1>; 143 operating-points-v2 = <&cpu4_opp_table>; 144 interconnects = <&gem_noc MASTER_AMPSS_M0 &mc_virt SLAVE_EBI_CH0>, 145 <&osm_l3 MASTER_OSM_L3_APPS &osm_l3 SLAVE_OSM_L3>; 146 power-domains = <&CPU_PD4>; 147 power-domain-names = "psci"; 148 #cooling-cells = <2>; 149 L2_400: l2-cache { 150 compatible = "cache"; 151 next-level-cache = <&L3_0>; 152 }; 153 }; 154 155 CPU5: cpu@500 { 156 device_type = "cpu"; 157 compatible = "qcom,kryo485"; 158 reg = <0x0 0x500>; 159 enable-method = "psci"; 160 capacity-dmips-mhz = <1024>; 161 dynamic-power-coefficient = <369>; 162 next-level-cache = <&L2_500>; 163 qcom,freq-domain = <&cpufreq_hw 1>; 164 operating-points-v2 = <&cpu4_opp_table>; 165 interconnects = <&gem_noc MASTER_AMPSS_M0 &mc_virt SLAVE_EBI_CH0>, 166 <&osm_l3 MASTER_OSM_L3_APPS &osm_l3 SLAVE_OSM_L3>; 167 power-domains = <&CPU_PD5>; 168 power-domain-names = "psci"; 169 #cooling-cells = <2>; 170 L2_500: l2-cache { 171 compatible = "cache"; 172 next-level-cache = <&L3_0>; 173 }; 174 }; 175 176 CPU6: cpu@600 { 177 device_type = "cpu"; 178 compatible = "qcom,kryo485"; 179 reg = <0x0 0x600>; 180 enable-method = "psci"; 181 capacity-dmips-mhz = <1024>; 182 dynamic-power-coefficient = <369>; 183 next-level-cache = <&L2_600>; 184 qcom,freq-domain = <&cpufreq_hw 1>; 185 operating-points-v2 = <&cpu4_opp_table>; 186 interconnects = <&gem_noc MASTER_AMPSS_M0 &mc_virt SLAVE_EBI_CH0>, 187 <&osm_l3 MASTER_OSM_L3_APPS &osm_l3 SLAVE_OSM_L3>; 188 power-domains = <&CPU_PD6>; 189 power-domain-names = "psci"; 190 #cooling-cells = <2>; 191 L2_600: l2-cache { 192 compatible = "cache"; 193 next-level-cache = <&L3_0>; 194 }; 195 }; 196 197 CPU7: cpu@700 { 198 device_type = "cpu"; 199 compatible = "qcom,kryo485"; 200 reg = <0x0 0x700>; 201 enable-method = "psci"; 202 capacity-dmips-mhz = <1024>; 203 dynamic-power-coefficient = <421>; 204 next-level-cache = <&L2_700>; 205 qcom,freq-domain = <&cpufreq_hw 2>; 206 operating-points-v2 = <&cpu7_opp_table>; 207 interconnects = <&gem_noc MASTER_AMPSS_M0 &mc_virt SLAVE_EBI_CH0>, 208 <&osm_l3 MASTER_OSM_L3_APPS &osm_l3 SLAVE_OSM_L3>; 209 power-domains = <&CPU_PD7>; 210 power-domain-names = "psci"; 211 #cooling-cells = <2>; 212 L2_700: l2-cache { 213 compatible = "cache"; 214 next-level-cache = <&L3_0>; 215 }; 216 }; 217 218 cpu-map { 219 cluster0 { 220 core0 { 221 cpu = <&CPU0>; 222 }; 223 224 core1 { 225 cpu = <&CPU1>; 226 }; 227 228 core2 { 229 cpu = <&CPU2>; 230 }; 231 232 core3 { 233 cpu = <&CPU3>; 234 }; 235 236 core4 { 237 cpu = <&CPU4>; 238 }; 239 240 core5 { 241 cpu = <&CPU5>; 242 }; 243 244 core6 { 245 cpu = <&CPU6>; 246 }; 247 248 core7 { 249 cpu = <&CPU7>; 250 }; 251 }; 252 }; 253 254 idle-states { 255 entry-method = "psci"; 256 257 LITTLE_CPU_SLEEP_0: cpu-sleep-0-0 { 258 compatible = "arm,idle-state"; 259 idle-state-name = "little-rail-power-collapse"; 260 arm,psci-suspend-param = <0x40000004>; 261 entry-latency-us = <355>; 262 exit-latency-us = <909>; 263 min-residency-us = <3934>; 264 local-timer-stop; 265 }; 266 267 BIG_CPU_SLEEP_0: cpu-sleep-1-0 { 268 compatible = "arm,idle-state"; 269 idle-state-name = "big-rail-power-collapse"; 270 arm,psci-suspend-param = <0x40000004>; 271 entry-latency-us = <241>; 272 exit-latency-us = <1461>; 273 min-residency-us = <4488>; 274 local-timer-stop; 275 }; 276 }; 277 278 domain-idle-states { 279 CLUSTER_SLEEP_0: cluster-sleep-0 { 280 compatible = "domain-idle-state"; 281 idle-state-name = "cluster-power-collapse"; 282 arm,psci-suspend-param = <0x4100c244>; 283 entry-latency-us = <3263>; 284 exit-latency-us = <6562>; 285 min-residency-us = <9987>; 286 local-timer-stop; 287 }; 288 }; 289 }; 290 291 cpu0_opp_table: cpu0_opp_table { 292 compatible = "operating-points-v2"; 293 opp-shared; 294 295 cpu0_opp1: opp-300000000 { 296 opp-hz = /bits/ 64 <300000000>; 297 opp-peak-kBps = <800000 9600000>; 298 }; 299 300 cpu0_opp2: opp-403200000 { 301 opp-hz = /bits/ 64 <403200000>; 302 opp-peak-kBps = <800000 9600000>; 303 }; 304 305 cpu0_opp3: opp-499200000 { 306 opp-hz = /bits/ 64 <499200000>; 307 opp-peak-kBps = <800000 12902400>; 308 }; 309 310 cpu0_opp4: opp-576000000 { 311 opp-hz = /bits/ 64 <576000000>; 312 opp-peak-kBps = <800000 12902400>; 313 }; 314 315 cpu0_opp5: opp-672000000 { 316 opp-hz = /bits/ 64 <672000000>; 317 opp-peak-kBps = <800000 15974400>; 318 }; 319 320 cpu0_opp6: opp-768000000 { 321 opp-hz = /bits/ 64 <768000000>; 322 opp-peak-kBps = <1804000 19660800>; 323 }; 324 325 cpu0_opp7: opp-844800000 { 326 opp-hz = /bits/ 64 <844800000>; 327 opp-peak-kBps = <1804000 19660800>; 328 }; 329 330 cpu0_opp8: opp-940800000 { 331 opp-hz = /bits/ 64 <940800000>; 332 opp-peak-kBps = <1804000 22732800>; 333 }; 334 335 cpu0_opp9: opp-1036800000 { 336 opp-hz = /bits/ 64 <1036800000>; 337 opp-peak-kBps = <1804000 22732800>; 338 }; 339 340 cpu0_opp10: opp-1113600000 { 341 opp-hz = /bits/ 64 <1113600000>; 342 opp-peak-kBps = <2188000 25804800>; 343 }; 344 345 cpu0_opp11: opp-1209600000 { 346 opp-hz = /bits/ 64 <1209600000>; 347 opp-peak-kBps = <2188000 31948800>; 348 }; 349 350 cpu0_opp12: opp-1305600000 { 351 opp-hz = /bits/ 64 <1305600000>; 352 opp-peak-kBps = <3072000 31948800>; 353 }; 354 355 cpu0_opp13: opp-1382400000 { 356 opp-hz = /bits/ 64 <1382400000>; 357 opp-peak-kBps = <3072000 31948800>; 358 }; 359 360 cpu0_opp14: opp-1478400000 { 361 opp-hz = /bits/ 64 <1478400000>; 362 opp-peak-kBps = <3072000 31948800>; 363 }; 364 365 cpu0_opp15: opp-1555200000 { 366 opp-hz = /bits/ 64 <1555200000>; 367 opp-peak-kBps = <3072000 40550400>; 368 }; 369 370 cpu0_opp16: opp-1632000000 { 371 opp-hz = /bits/ 64 <1632000000>; 372 opp-peak-kBps = <3072000 40550400>; 373 }; 374 375 cpu0_opp17: opp-1708800000 { 376 opp-hz = /bits/ 64 <1708800000>; 377 opp-peak-kBps = <3072000 43008000>; 378 }; 379 380 cpu0_opp18: opp-1785600000 { 381 opp-hz = /bits/ 64 <1785600000>; 382 opp-peak-kBps = <3072000 43008000>; 383 }; 384 }; 385 386 cpu4_opp_table: cpu4_opp_table { 387 compatible = "operating-points-v2"; 388 opp-shared; 389 390 cpu4_opp1: opp-710400000 { 391 opp-hz = /bits/ 64 <710400000>; 392 opp-peak-kBps = <1804000 15974400>; 393 }; 394 395 cpu4_opp2: opp-825600000 { 396 opp-hz = /bits/ 64 <825600000>; 397 opp-peak-kBps = <2188000 19660800>; 398 }; 399 400 cpu4_opp3: opp-940800000 { 401 opp-hz = /bits/ 64 <940800000>; 402 opp-peak-kBps = <2188000 22732800>; 403 }; 404 405 cpu4_opp4: opp-1056000000 { 406 opp-hz = /bits/ 64 <1056000000>; 407 opp-peak-kBps = <3072000 25804800>; 408 }; 409 410 cpu4_opp5: opp-1171200000 { 411 opp-hz = /bits/ 64 <1171200000>; 412 opp-peak-kBps = <3072000 31948800>; 413 }; 414 415 cpu4_opp6: opp-1286400000 { 416 opp-hz = /bits/ 64 <1286400000>; 417 opp-peak-kBps = <4068000 31948800>; 418 }; 419 420 cpu4_opp7: opp-1401600000 { 421 opp-hz = /bits/ 64 <1401600000>; 422 opp-peak-kBps = <4068000 31948800>; 423 }; 424 425 cpu4_opp8: opp-1497600000 { 426 opp-hz = /bits/ 64 <1497600000>; 427 opp-peak-kBps = <4068000 40550400>; 428 }; 429 430 cpu4_opp9: opp-1612800000 { 431 opp-hz = /bits/ 64 <1612800000>; 432 opp-peak-kBps = <4068000 40550400>; 433 }; 434 435 cpu4_opp10: opp-1708800000 { 436 opp-hz = /bits/ 64 <1708800000>; 437 opp-peak-kBps = <4068000 43008000>; 438 }; 439 440 cpu4_opp11: opp-1804800000 { 441 opp-hz = /bits/ 64 <1804800000>; 442 opp-peak-kBps = <6220000 43008000>; 443 }; 444 445 cpu4_opp12: opp-1920000000 { 446 opp-hz = /bits/ 64 <1920000000>; 447 opp-peak-kBps = <6220000 49152000>; 448 }; 449 450 cpu4_opp13: opp-2016000000 { 451 opp-hz = /bits/ 64 <2016000000>; 452 opp-peak-kBps = <7216000 49152000>; 453 }; 454 455 cpu4_opp14: opp-2131200000 { 456 opp-hz = /bits/ 64 <2131200000>; 457 opp-peak-kBps = <8368000 49152000>; 458 }; 459 460 cpu4_opp15: opp-2227200000 { 461 opp-hz = /bits/ 64 <2227200000>; 462 opp-peak-kBps = <8368000 51609600>; 463 }; 464 465 cpu4_opp16: opp-2323200000 { 466 opp-hz = /bits/ 64 <2323200000>; 467 opp-peak-kBps = <8368000 51609600>; 468 }; 469 470 cpu4_opp17: opp-2419200000 { 471 opp-hz = /bits/ 64 <2419200000>; 472 opp-peak-kBps = <8368000 51609600>; 473 }; 474 }; 475 476 cpu7_opp_table: cpu7_opp_table { 477 compatible = "operating-points-v2"; 478 opp-shared; 479 480 cpu7_opp1: opp-825600000 { 481 opp-hz = /bits/ 64 <825600000>; 482 opp-peak-kBps = <2188000 19660800>; 483 }; 484 485 cpu7_opp2: opp-940800000 { 486 opp-hz = /bits/ 64 <940800000>; 487 opp-peak-kBps = <2188000 22732800>; 488 }; 489 490 cpu7_opp3: opp-1056000000 { 491 opp-hz = /bits/ 64 <1056000000>; 492 opp-peak-kBps = <3072000 25804800>; 493 }; 494 495 cpu7_opp4: opp-1171200000 { 496 opp-hz = /bits/ 64 <1171200000>; 497 opp-peak-kBps = <3072000 31948800>; 498 }; 499 500 cpu7_opp5: opp-1286400000 { 501 opp-hz = /bits/ 64 <1286400000>; 502 opp-peak-kBps = <4068000 31948800>; 503 }; 504 505 cpu7_opp6: opp-1401600000 { 506 opp-hz = /bits/ 64 <1401600000>; 507 opp-peak-kBps = <4068000 31948800>; 508 }; 509 510 cpu7_opp7: opp-1497600000 { 511 opp-hz = /bits/ 64 <1497600000>; 512 opp-peak-kBps = <4068000 40550400>; 513 }; 514 515 cpu7_opp8: opp-1612800000 { 516 opp-hz = /bits/ 64 <1612800000>; 517 opp-peak-kBps = <4068000 40550400>; 518 }; 519 520 cpu7_opp9: opp-1708800000 { 521 opp-hz = /bits/ 64 <1708800000>; 522 opp-peak-kBps = <4068000 43008000>; 523 }; 524 525 cpu7_opp10: opp-1804800000 { 526 opp-hz = /bits/ 64 <1804800000>; 527 opp-peak-kBps = <6220000 43008000>; 528 }; 529 530 cpu7_opp11: opp-1920000000 { 531 opp-hz = /bits/ 64 <1920000000>; 532 opp-peak-kBps = <6220000 49152000>; 533 }; 534 535 cpu7_opp12: opp-2016000000 { 536 opp-hz = /bits/ 64 <2016000000>; 537 opp-peak-kBps = <7216000 49152000>; 538 }; 539 540 cpu7_opp13: opp-2131200000 { 541 opp-hz = /bits/ 64 <2131200000>; 542 opp-peak-kBps = <8368000 49152000>; 543 }; 544 545 cpu7_opp14: opp-2227200000 { 546 opp-hz = /bits/ 64 <2227200000>; 547 opp-peak-kBps = <8368000 51609600>; 548 }; 549 550 cpu7_opp15: opp-2323200000 { 551 opp-hz = /bits/ 64 <2323200000>; 552 opp-peak-kBps = <8368000 51609600>; 553 }; 554 555 cpu7_opp16: opp-2419200000 { 556 opp-hz = /bits/ 64 <2419200000>; 557 opp-peak-kBps = <8368000 51609600>; 558 }; 559 560 cpu7_opp17: opp-2534400000 { 561 opp-hz = /bits/ 64 <2534400000>; 562 opp-peak-kBps = <8368000 51609600>; 563 }; 564 565 cpu7_opp18: opp-2649600000 { 566 opp-hz = /bits/ 64 <2649600000>; 567 opp-peak-kBps = <8368000 51609600>; 568 }; 569 570 cpu7_opp19: opp-2745600000 { 571 opp-hz = /bits/ 64 <2745600000>; 572 opp-peak-kBps = <8368000 51609600>; 573 }; 574 575 cpu7_opp20: opp-2841600000 { 576 opp-hz = /bits/ 64 <2841600000>; 577 opp-peak-kBps = <8368000 51609600>; 578 }; 579 }; 580 581 firmware { 582 scm: scm { 583 compatible = "qcom,scm-sm8150", "qcom,scm"; 584 #reset-cells = <1>; 585 }; 586 }; 587 588 tcsr_mutex: hwlock { 589 compatible = "qcom,tcsr-mutex"; 590 syscon = <&tcsr_mutex_regs 0 0x1000>; 591 #hwlock-cells = <1>; 592 }; 593 594 memory@80000000 { 595 device_type = "memory"; 596 /* We expect the bootloader to fill in the size */ 597 reg = <0x0 0x80000000 0x0 0x0>; 598 }; 599 600 pmu { 601 compatible = "arm,armv8-pmuv3"; 602 interrupts = <GIC_PPI 5 IRQ_TYPE_LEVEL_HIGH>; 603 }; 604 605 psci { 606 compatible = "arm,psci-1.0"; 607 method = "smc"; 608 609 CPU_PD0: cpu0 { 610 #power-domain-cells = <0>; 611 power-domains = <&CLUSTER_PD>; 612 domain-idle-states = <&LITTLE_CPU_SLEEP_0>; 613 }; 614 615 CPU_PD1: cpu1 { 616 #power-domain-cells = <0>; 617 power-domains = <&CLUSTER_PD>; 618 domain-idle-states = <&LITTLE_CPU_SLEEP_0>; 619 }; 620 621 CPU_PD2: cpu2 { 622 #power-domain-cells = <0>; 623 power-domains = <&CLUSTER_PD>; 624 domain-idle-states = <&LITTLE_CPU_SLEEP_0>; 625 }; 626 627 CPU_PD3: cpu3 { 628 #power-domain-cells = <0>; 629 power-domains = <&CLUSTER_PD>; 630 domain-idle-states = <&LITTLE_CPU_SLEEP_0>; 631 }; 632 633 CPU_PD4: cpu4 { 634 #power-domain-cells = <0>; 635 power-domains = <&CLUSTER_PD>; 636 domain-idle-states = <&BIG_CPU_SLEEP_0>; 637 }; 638 639 CPU_PD5: cpu5 { 640 #power-domain-cells = <0>; 641 power-domains = <&CLUSTER_PD>; 642 domain-idle-states = <&BIG_CPU_SLEEP_0>; 643 }; 644 645 CPU_PD6: cpu6 { 646 #power-domain-cells = <0>; 647 power-domains = <&CLUSTER_PD>; 648 domain-idle-states = <&BIG_CPU_SLEEP_0>; 649 }; 650 651 CPU_PD7: cpu7 { 652 #power-domain-cells = <0>; 653 power-domains = <&CLUSTER_PD>; 654 domain-idle-states = <&BIG_CPU_SLEEP_0>; 655 }; 656 657 CLUSTER_PD: cpu-cluster0 { 658 #power-domain-cells = <0>; 659 domain-idle-states = <&CLUSTER_SLEEP_0>; 660 }; 661 }; 662 663 reserved-memory { 664 #address-cells = <2>; 665 #size-cells = <2>; 666 ranges; 667 668 hyp_mem: memory@85700000 { 669 reg = <0x0 0x85700000 0x0 0x600000>; 670 no-map; 671 }; 672 673 xbl_mem: memory@85d00000 { 674 reg = <0x0 0x85d00000 0x0 0x140000>; 675 no-map; 676 }; 677 678 aop_mem: memory@85f00000 { 679 reg = <0x0 0x85f00000 0x0 0x20000>; 680 no-map; 681 }; 682 683 aop_cmd_db: memory@85f20000 { 684 compatible = "qcom,cmd-db"; 685 reg = <0x0 0x85f20000 0x0 0x20000>; 686 no-map; 687 }; 688 689 smem_mem: memory@86000000 { 690 reg = <0x0 0x86000000 0x0 0x200000>; 691 no-map; 692 }; 693 694 tz_mem: memory@86200000 { 695 reg = <0x0 0x86200000 0x0 0x3900000>; 696 no-map; 697 }; 698 699 rmtfs_mem: memory@89b00000 { 700 compatible = "qcom,rmtfs-mem"; 701 reg = <0x0 0x89b00000 0x0 0x200000>; 702 no-map; 703 704 qcom,client-id = <1>; 705 qcom,vmid = <15>; 706 }; 707 708 camera_mem: memory@8b700000 { 709 reg = <0x0 0x8b700000 0x0 0x500000>; 710 no-map; 711 }; 712 713 wlan_mem: memory@8bc00000 { 714 reg = <0x0 0x8bc00000 0x0 0x180000>; 715 no-map; 716 }; 717 718 npu_mem: memory@8bd80000 { 719 reg = <0x0 0x8bd80000 0x0 0x80000>; 720 no-map; 721 }; 722 723 adsp_mem: memory@8be00000 { 724 reg = <0x0 0x8be00000 0x0 0x1a00000>; 725 no-map; 726 }; 727 728 mpss_mem: memory@8d800000 { 729 reg = <0x0 0x8d800000 0x0 0x9600000>; 730 no-map; 731 }; 732 733 venus_mem: memory@96e00000 { 734 reg = <0x0 0x96e00000 0x0 0x500000>; 735 no-map; 736 }; 737 738 slpi_mem: memory@97300000 { 739 reg = <0x0 0x97300000 0x0 0x1400000>; 740 no-map; 741 }; 742 743 ipa_fw_mem: memory@98700000 { 744 reg = <0x0 0x98700000 0x0 0x10000>; 745 no-map; 746 }; 747 748 ipa_gsi_mem: memory@98710000 { 749 reg = <0x0 0x98710000 0x0 0x5000>; 750 no-map; 751 }; 752 753 gpu_mem: memory@98715000 { 754 reg = <0x0 0x98715000 0x0 0x2000>; 755 no-map; 756 }; 757 758 spss_mem: memory@98800000 { 759 reg = <0x0 0x98800000 0x0 0x100000>; 760 no-map; 761 }; 762 763 cdsp_mem: memory@98900000 { 764 reg = <0x0 0x98900000 0x0 0x1400000>; 765 no-map; 766 }; 767 768 qseecom_mem: memory@9e400000 { 769 reg = <0x0 0x9e400000 0x0 0x1400000>; 770 no-map; 771 }; 772 }; 773 774 smem { 775 compatible = "qcom,smem"; 776 memory-region = <&smem_mem>; 777 hwlocks = <&tcsr_mutex 3>; 778 }; 779 780 smp2p-cdsp { 781 compatible = "qcom,smp2p"; 782 qcom,smem = <94>, <432>; 783 784 interrupts = <GIC_SPI 576 IRQ_TYPE_EDGE_RISING>; 785 786 mboxes = <&apss_shared 6>; 787 788 qcom,local-pid = <0>; 789 qcom,remote-pid = <5>; 790 791 cdsp_smp2p_out: master-kernel { 792 qcom,entry-name = "master-kernel"; 793 #qcom,smem-state-cells = <1>; 794 }; 795 796 cdsp_smp2p_in: slave-kernel { 797 qcom,entry-name = "slave-kernel"; 798 799 interrupt-controller; 800 #interrupt-cells = <2>; 801 }; 802 }; 803 804 smp2p-lpass { 805 compatible = "qcom,smp2p"; 806 qcom,smem = <443>, <429>; 807 808 interrupts = <GIC_SPI 158 IRQ_TYPE_EDGE_RISING>; 809 810 mboxes = <&apss_shared 10>; 811 812 qcom,local-pid = <0>; 813 qcom,remote-pid = <2>; 814 815 adsp_smp2p_out: master-kernel { 816 qcom,entry-name = "master-kernel"; 817 #qcom,smem-state-cells = <1>; 818 }; 819 820 adsp_smp2p_in: slave-kernel { 821 qcom,entry-name = "slave-kernel"; 822 823 interrupt-controller; 824 #interrupt-cells = <2>; 825 }; 826 }; 827 828 smp2p-mpss { 829 compatible = "qcom,smp2p"; 830 qcom,smem = <435>, <428>; 831 832 interrupts = <GIC_SPI 451 IRQ_TYPE_EDGE_RISING>; 833 834 mboxes = <&apss_shared 14>; 835 836 qcom,local-pid = <0>; 837 qcom,remote-pid = <1>; 838 839 modem_smp2p_out: master-kernel { 840 qcom,entry-name = "master-kernel"; 841 #qcom,smem-state-cells = <1>; 842 }; 843 844 modem_smp2p_in: slave-kernel { 845 qcom,entry-name = "slave-kernel"; 846 847 interrupt-controller; 848 #interrupt-cells = <2>; 849 }; 850 }; 851 852 smp2p-slpi { 853 compatible = "qcom,smp2p"; 854 qcom,smem = <481>, <430>; 855 856 interrupts = <GIC_SPI 172 IRQ_TYPE_EDGE_RISING>; 857 858 mboxes = <&apss_shared 26>; 859 860 qcom,local-pid = <0>; 861 qcom,remote-pid = <3>; 862 863 slpi_smp2p_out: master-kernel { 864 qcom,entry-name = "master-kernel"; 865 #qcom,smem-state-cells = <1>; 866 }; 867 868 slpi_smp2p_in: slave-kernel { 869 qcom,entry-name = "slave-kernel"; 870 871 interrupt-controller; 872 #interrupt-cells = <2>; 873 }; 874 }; 875 876 soc: soc@0 { 877 #address-cells = <2>; 878 #size-cells = <2>; 879 ranges = <0 0 0 0 0x10 0>; 880 dma-ranges = <0 0 0 0 0x10 0>; 881 compatible = "simple-bus"; 882 883 gcc: clock-controller@100000 { 884 compatible = "qcom,gcc-sm8150"; 885 reg = <0x0 0x00100000 0x0 0x1f0000>; 886 #clock-cells = <1>; 887 #reset-cells = <1>; 888 #power-domain-cells = <1>; 889 clock-names = "bi_tcxo", 890 "sleep_clk"; 891 clocks = <&rpmhcc RPMH_CXO_CLK>, 892 <&sleep_clk>; 893 }; 894 895 gpi_dma0: dma-controller@800000 { 896 compatible = "qcom,sm8150-gpi-dma"; 897 reg = <0 0x800000 0 0x60000>; 898 interrupts = <GIC_SPI 244 IRQ_TYPE_LEVEL_HIGH>, 899 <GIC_SPI 245 IRQ_TYPE_LEVEL_HIGH>, 900 <GIC_SPI 246 IRQ_TYPE_LEVEL_HIGH>, 901 <GIC_SPI 247 IRQ_TYPE_LEVEL_HIGH>, 902 <GIC_SPI 248 IRQ_TYPE_LEVEL_HIGH>, 903 <GIC_SPI 249 IRQ_TYPE_LEVEL_HIGH>, 904 <GIC_SPI 250 IRQ_TYPE_LEVEL_HIGH>, 905 <GIC_SPI 251 IRQ_TYPE_LEVEL_HIGH>, 906 <GIC_SPI 252 IRQ_TYPE_LEVEL_HIGH>, 907 <GIC_SPI 253 IRQ_TYPE_LEVEL_HIGH>, 908 <GIC_SPI 254 IRQ_TYPE_LEVEL_HIGH>, 909 <GIC_SPI 255 IRQ_TYPE_LEVEL_HIGH>, 910 <GIC_SPI 256 IRQ_TYPE_LEVEL_HIGH>; 911 dma-channels = <13>; 912 dma-channel-mask = <0xfa>; 913 iommus = <&apps_smmu 0x00d6 0x0>; 914 #dma-cells = <3>; 915 status = "disabled"; 916 }; 917 918 ethernet: ethernet@20000 { 919 compatible = "qcom,sm8150-ethqos"; 920 reg = <0x0 0x00020000 0x0 0x10000>, 921 <0x0 0x00036000 0x0 0x100>; 922 reg-names = "stmmaceth", "rgmii"; 923 clock-names = "stmmaceth", "pclk", "ptp_ref", "rgmii"; 924 clocks = <&gcc GCC_EMAC_AXI_CLK>, 925 <&gcc GCC_EMAC_SLV_AHB_CLK>, 926 <&gcc GCC_EMAC_PTP_CLK>, 927 <&gcc GCC_EMAC_RGMII_CLK>; 928 interrupts = <GIC_SPI 689 IRQ_TYPE_LEVEL_HIGH>, 929 <GIC_SPI 699 IRQ_TYPE_LEVEL_HIGH>; 930 interrupt-names = "macirq", "eth_lpi"; 931 932 power-domains = <&gcc EMAC_GDSC>; 933 resets = <&gcc GCC_EMAC_BCR>; 934 935 iommus = <&apps_smmu 0x3C0 0x0>; 936 937 snps,tso; 938 rx-fifo-depth = <4096>; 939 tx-fifo-depth = <4096>; 940 941 status = "disabled"; 942 }; 943 944 945 qupv3_id_0: geniqup@8c0000 { 946 compatible = "qcom,geni-se-qup"; 947 reg = <0x0 0x008c0000 0x0 0x6000>; 948 clock-names = "m-ahb", "s-ahb"; 949 clocks = <&gcc GCC_QUPV3_WRAP_0_M_AHB_CLK>, 950 <&gcc GCC_QUPV3_WRAP_0_S_AHB_CLK>; 951 iommus = <&apps_smmu 0xc3 0x0>; 952 #address-cells = <2>; 953 #size-cells = <2>; 954 ranges; 955 status = "disabled"; 956 957 i2c0: i2c@880000 { 958 compatible = "qcom,geni-i2c"; 959 reg = <0 0x00880000 0 0x4000>; 960 clock-names = "se"; 961 clocks = <&gcc GCC_QUPV3_WRAP0_S0_CLK>; 962 dmas = <&gpi_dma0 0 0 QCOM_GPI_I2C>, 963 <&gpi_dma0 1 0 QCOM_GPI_I2C>; 964 dma-names = "tx", "rx"; 965 pinctrl-names = "default"; 966 pinctrl-0 = <&qup_i2c0_default>; 967 interrupts = <GIC_SPI 601 IRQ_TYPE_LEVEL_HIGH>; 968 #address-cells = <1>; 969 #size-cells = <0>; 970 status = "disabled"; 971 }; 972 973 spi0: spi@880000 { 974 compatible = "qcom,geni-spi"; 975 reg = <0 0x880000 0 0x4000>; 976 reg-names = "se"; 977 clock-names = "se"; 978 clocks = <&gcc GCC_QUPV3_WRAP0_S0_CLK>; 979 dmas = <&gpi_dma0 0 0 QCOM_GPI_SPI>, 980 <&gpi_dma0 1 0 QCOM_GPI_SPI>; 981 dma-names = "tx", "rx"; 982 pinctrl-names = "default"; 983 pinctrl-0 = <&qup_spi0_default>; 984 interrupts = <GIC_SPI 601 IRQ_TYPE_LEVEL_HIGH>; 985 spi-max-frequency = <50000000>; 986 #address-cells = <1>; 987 #size-cells = <0>; 988 status = "disabled"; 989 }; 990 991 i2c1: i2c@884000 { 992 compatible = "qcom,geni-i2c"; 993 reg = <0 0x00884000 0 0x4000>; 994 clock-names = "se"; 995 clocks = <&gcc GCC_QUPV3_WRAP0_S1_CLK>; 996 dmas = <&gpi_dma0 0 1 QCOM_GPI_I2C>, 997 <&gpi_dma0 1 1 QCOM_GPI_I2C>; 998 dma-names = "tx", "rx"; 999 pinctrl-names = "default"; 1000 pinctrl-0 = <&qup_i2c1_default>; 1001 interrupts = <GIC_SPI 602 IRQ_TYPE_LEVEL_HIGH>; 1002 #address-cells = <1>; 1003 #size-cells = <0>; 1004 status = "disabled"; 1005 }; 1006 1007 spi1: spi@884000 { 1008 compatible = "qcom,geni-spi"; 1009 reg = <0 0x884000 0 0x4000>; 1010 reg-names = "se"; 1011 clock-names = "se"; 1012 clocks = <&gcc GCC_QUPV3_WRAP0_S1_CLK>; 1013 dmas = <&gpi_dma0 0 1 QCOM_GPI_SPI>, 1014 <&gpi_dma0 1 1 QCOM_GPI_SPI>; 1015 dma-names = "tx", "rx"; 1016 pinctrl-names = "default"; 1017 pinctrl-0 = <&qup_spi1_default>; 1018 interrupts = <GIC_SPI 602 IRQ_TYPE_LEVEL_HIGH>; 1019 spi-max-frequency = <50000000>; 1020 #address-cells = <1>; 1021 #size-cells = <0>; 1022 status = "disabled"; 1023 }; 1024 1025 i2c2: i2c@888000 { 1026 compatible = "qcom,geni-i2c"; 1027 reg = <0 0x00888000 0 0x4000>; 1028 clock-names = "se"; 1029 clocks = <&gcc GCC_QUPV3_WRAP0_S2_CLK>; 1030 dmas = <&gpi_dma0 0 2 QCOM_GPI_I2C>, 1031 <&gpi_dma0 1 2 QCOM_GPI_I2C>; 1032 dma-names = "tx", "rx"; 1033 pinctrl-names = "default"; 1034 pinctrl-0 = <&qup_i2c2_default>; 1035 interrupts = <GIC_SPI 603 IRQ_TYPE_LEVEL_HIGH>; 1036 #address-cells = <1>; 1037 #size-cells = <0>; 1038 status = "disabled"; 1039 }; 1040 1041 spi2: spi@888000 { 1042 compatible = "qcom,geni-spi"; 1043 reg = <0 0x888000 0 0x4000>; 1044 reg-names = "se"; 1045 clock-names = "se"; 1046 clocks = <&gcc GCC_QUPV3_WRAP0_S2_CLK>; 1047 dmas = <&gpi_dma0 0 2 QCOM_GPI_SPI>, 1048 <&gpi_dma0 1 2 QCOM_GPI_SPI>; 1049 dma-names = "tx", "rx"; 1050 pinctrl-names = "default"; 1051 pinctrl-0 = <&qup_spi2_default>; 1052 interrupts = <GIC_SPI 603 IRQ_TYPE_LEVEL_HIGH>; 1053 spi-max-frequency = <50000000>; 1054 #address-cells = <1>; 1055 #size-cells = <0>; 1056 status = "disabled"; 1057 }; 1058 1059 i2c3: i2c@88c000 { 1060 compatible = "qcom,geni-i2c"; 1061 reg = <0 0x0088c000 0 0x4000>; 1062 clock-names = "se"; 1063 clocks = <&gcc GCC_QUPV3_WRAP0_S3_CLK>; 1064 dmas = <&gpi_dma0 0 3 QCOM_GPI_I2C>, 1065 <&gpi_dma0 1 3 QCOM_GPI_I2C>; 1066 dma-names = "tx", "rx"; 1067 pinctrl-names = "default"; 1068 pinctrl-0 = <&qup_i2c3_default>; 1069 interrupts = <GIC_SPI 604 IRQ_TYPE_LEVEL_HIGH>; 1070 #address-cells = <1>; 1071 #size-cells = <0>; 1072 status = "disabled"; 1073 }; 1074 1075 spi3: spi@88c000 { 1076 compatible = "qcom,geni-spi"; 1077 reg = <0 0x88c000 0 0x4000>; 1078 reg-names = "se"; 1079 clock-names = "se"; 1080 clocks = <&gcc GCC_QUPV3_WRAP0_S3_CLK>; 1081 dmas = <&gpi_dma0 0 3 QCOM_GPI_SPI>, 1082 <&gpi_dma0 1 3 QCOM_GPI_SPI>; 1083 dma-names = "tx", "rx"; 1084 pinctrl-names = "default"; 1085 pinctrl-0 = <&qup_spi3_default>; 1086 interrupts = <GIC_SPI 604 IRQ_TYPE_LEVEL_HIGH>; 1087 spi-max-frequency = <50000000>; 1088 #address-cells = <1>; 1089 #size-cells = <0>; 1090 status = "disabled"; 1091 }; 1092 1093 i2c4: i2c@890000 { 1094 compatible = "qcom,geni-i2c"; 1095 reg = <0 0x00890000 0 0x4000>; 1096 clock-names = "se"; 1097 clocks = <&gcc GCC_QUPV3_WRAP0_S4_CLK>; 1098 dmas = <&gpi_dma0 0 4 QCOM_GPI_I2C>, 1099 <&gpi_dma0 1 4 QCOM_GPI_I2C>; 1100 dma-names = "tx", "rx"; 1101 pinctrl-names = "default"; 1102 pinctrl-0 = <&qup_i2c4_default>; 1103 interrupts = <GIC_SPI 605 IRQ_TYPE_LEVEL_HIGH>; 1104 #address-cells = <1>; 1105 #size-cells = <0>; 1106 status = "disabled"; 1107 }; 1108 1109 spi4: spi@890000 { 1110 compatible = "qcom,geni-spi"; 1111 reg = <0 0x890000 0 0x4000>; 1112 reg-names = "se"; 1113 clock-names = "se"; 1114 clocks = <&gcc GCC_QUPV3_WRAP0_S4_CLK>; 1115 dmas = <&gpi_dma0 0 4 QCOM_GPI_SPI>, 1116 <&gpi_dma0 1 4 QCOM_GPI_SPI>; 1117 dma-names = "tx", "rx"; 1118 pinctrl-names = "default"; 1119 pinctrl-0 = <&qup_spi4_default>; 1120 interrupts = <GIC_SPI 605 IRQ_TYPE_LEVEL_HIGH>; 1121 spi-max-frequency = <50000000>; 1122 #address-cells = <1>; 1123 #size-cells = <0>; 1124 status = "disabled"; 1125 }; 1126 1127 i2c5: i2c@894000 { 1128 compatible = "qcom,geni-i2c"; 1129 reg = <0 0x00894000 0 0x4000>; 1130 clock-names = "se"; 1131 clocks = <&gcc GCC_QUPV3_WRAP0_S5_CLK>; 1132 dmas = <&gpi_dma0 0 5 QCOM_GPI_I2C>, 1133 <&gpi_dma0 1 5 QCOM_GPI_I2C>; 1134 dma-names = "tx", "rx"; 1135 pinctrl-names = "default"; 1136 pinctrl-0 = <&qup_i2c5_default>; 1137 interrupts = <GIC_SPI 606 IRQ_TYPE_LEVEL_HIGH>; 1138 #address-cells = <1>; 1139 #size-cells = <0>; 1140 status = "disabled"; 1141 }; 1142 1143 spi5: spi@894000 { 1144 compatible = "qcom,geni-spi"; 1145 reg = <0 0x894000 0 0x4000>; 1146 reg-names = "se"; 1147 clock-names = "se"; 1148 clocks = <&gcc GCC_QUPV3_WRAP0_S5_CLK>; 1149 dmas = <&gpi_dma0 0 5 QCOM_GPI_SPI>, 1150 <&gpi_dma0 1 5 QCOM_GPI_SPI>; 1151 dma-names = "tx", "rx"; 1152 pinctrl-names = "default"; 1153 pinctrl-0 = <&qup_spi5_default>; 1154 interrupts = <GIC_SPI 606 IRQ_TYPE_LEVEL_HIGH>; 1155 spi-max-frequency = <50000000>; 1156 #address-cells = <1>; 1157 #size-cells = <0>; 1158 status = "disabled"; 1159 }; 1160 1161 i2c6: i2c@898000 { 1162 compatible = "qcom,geni-i2c"; 1163 reg = <0 0x00898000 0 0x4000>; 1164 clock-names = "se"; 1165 clocks = <&gcc GCC_QUPV3_WRAP0_S6_CLK>; 1166 dmas = <&gpi_dma0 0 6 QCOM_GPI_I2C>, 1167 <&gpi_dma0 1 6 QCOM_GPI_I2C>; 1168 dma-names = "tx", "rx"; 1169 pinctrl-names = "default"; 1170 pinctrl-0 = <&qup_i2c6_default>; 1171 interrupts = <GIC_SPI 607 IRQ_TYPE_LEVEL_HIGH>; 1172 #address-cells = <1>; 1173 #size-cells = <0>; 1174 status = "disabled"; 1175 }; 1176 1177 spi6: spi@898000 { 1178 compatible = "qcom,geni-spi"; 1179 reg = <0 0x898000 0 0x4000>; 1180 reg-names = "se"; 1181 clock-names = "se"; 1182 clocks = <&gcc GCC_QUPV3_WRAP0_S6_CLK>; 1183 dmas = <&gpi_dma0 0 6 QCOM_GPI_SPI>, 1184 <&gpi_dma0 1 6 QCOM_GPI_SPI>; 1185 dma-names = "tx", "rx"; 1186 pinctrl-names = "default"; 1187 pinctrl-0 = <&qup_spi6_default>; 1188 interrupts = <GIC_SPI 607 IRQ_TYPE_LEVEL_HIGH>; 1189 spi-max-frequency = <50000000>; 1190 #address-cells = <1>; 1191 #size-cells = <0>; 1192 status = "disabled"; 1193 }; 1194 1195 i2c7: i2c@89c000 { 1196 compatible = "qcom,geni-i2c"; 1197 reg = <0 0x0089c000 0 0x4000>; 1198 clock-names = "se"; 1199 clocks = <&gcc GCC_QUPV3_WRAP0_S7_CLK>; 1200 dmas = <&gpi_dma0 0 7 QCOM_GPI_I2C>, 1201 <&gpi_dma0 1 7 QCOM_GPI_I2C>; 1202 dma-names = "tx", "rx"; 1203 pinctrl-names = "default"; 1204 pinctrl-0 = <&qup_i2c7_default>; 1205 interrupts = <GIC_SPI 607 IRQ_TYPE_LEVEL_HIGH>; 1206 #address-cells = <1>; 1207 #size-cells = <0>; 1208 status = "disabled"; 1209 }; 1210 1211 spi7: spi@89c000 { 1212 compatible = "qcom,geni-spi"; 1213 reg = <0 0x89c000 0 0x4000>; 1214 reg-names = "se"; 1215 clock-names = "se"; 1216 clocks = <&gcc GCC_QUPV3_WRAP0_S7_CLK>; 1217 dmas = <&gpi_dma0 0 7 QCOM_GPI_SPI>, 1218 <&gpi_dma0 1 7 QCOM_GPI_SPI>; 1219 dma-names = "tx", "rx"; 1220 pinctrl-names = "default"; 1221 pinctrl-0 = <&qup_spi7_default>; 1222 interrupts = <GIC_SPI 608 IRQ_TYPE_LEVEL_HIGH>; 1223 spi-max-frequency = <50000000>; 1224 #address-cells = <1>; 1225 #size-cells = <0>; 1226 status = "disabled"; 1227 }; 1228 }; 1229 1230 gpi_dma1: dma-controller@a00000 { 1231 compatible = "qcom,sm8150-gpi-dma"; 1232 reg = <0 0xa00000 0 0x60000>; 1233 interrupts = <GIC_SPI 279 IRQ_TYPE_LEVEL_HIGH>, 1234 <GIC_SPI 280 IRQ_TYPE_LEVEL_HIGH>, 1235 <GIC_SPI 281 IRQ_TYPE_LEVEL_HIGH>, 1236 <GIC_SPI 282 IRQ_TYPE_LEVEL_HIGH>, 1237 <GIC_SPI 283 IRQ_TYPE_LEVEL_HIGH>, 1238 <GIC_SPI 284 IRQ_TYPE_LEVEL_HIGH>, 1239 <GIC_SPI 293 IRQ_TYPE_LEVEL_HIGH>, 1240 <GIC_SPI 294 IRQ_TYPE_LEVEL_HIGH>, 1241 <GIC_SPI 295 IRQ_TYPE_LEVEL_HIGH>, 1242 <GIC_SPI 296 IRQ_TYPE_LEVEL_HIGH>, 1243 <GIC_SPI 297 IRQ_TYPE_LEVEL_HIGH>, 1244 <GIC_SPI 298 IRQ_TYPE_LEVEL_HIGH>, 1245 <GIC_SPI 299 IRQ_TYPE_LEVEL_HIGH>; 1246 dma-channels = <13>; 1247 dma-channel-mask = <0xfa>; 1248 iommus = <&apps_smmu 0x0616 0x0>; 1249 #dma-cells = <3>; 1250 status = "disabled"; 1251 }; 1252 1253 qupv3_id_1: geniqup@ac0000 { 1254 compatible = "qcom,geni-se-qup"; 1255 reg = <0x0 0x00ac0000 0x0 0x6000>; 1256 clock-names = "m-ahb", "s-ahb"; 1257 clocks = <&gcc GCC_QUPV3_WRAP_1_M_AHB_CLK>, 1258 <&gcc GCC_QUPV3_WRAP_1_S_AHB_CLK>; 1259 iommus = <&apps_smmu 0x603 0x0>; 1260 #address-cells = <2>; 1261 #size-cells = <2>; 1262 ranges; 1263 status = "disabled"; 1264 1265 i2c8: i2c@a80000 { 1266 compatible = "qcom,geni-i2c"; 1267 reg = <0 0x00a80000 0 0x4000>; 1268 clock-names = "se"; 1269 clocks = <&gcc GCC_QUPV3_WRAP1_S0_CLK>; 1270 dmas = <&gpi_dma1 0 0 QCOM_GPI_I2C>, 1271 <&gpi_dma1 1 0 QCOM_GPI_I2C>; 1272 dma-names = "tx", "rx"; 1273 pinctrl-names = "default"; 1274 pinctrl-0 = <&qup_i2c8_default>; 1275 interrupts = <GIC_SPI 353 IRQ_TYPE_LEVEL_HIGH>; 1276 #address-cells = <1>; 1277 #size-cells = <0>; 1278 status = "disabled"; 1279 }; 1280 1281 spi8: spi@a80000 { 1282 compatible = "qcom,geni-spi"; 1283 reg = <0 0xa80000 0 0x4000>; 1284 reg-names = "se"; 1285 clock-names = "se"; 1286 clocks = <&gcc GCC_QUPV3_WRAP1_S0_CLK>; 1287 dmas = <&gpi_dma1 0 0 QCOM_GPI_SPI>, 1288 <&gpi_dma1 1 0 QCOM_GPI_SPI>; 1289 dma-names = "tx", "rx"; 1290 pinctrl-names = "default"; 1291 pinctrl-0 = <&qup_spi8_default>; 1292 interrupts = <GIC_SPI 353 IRQ_TYPE_LEVEL_HIGH>; 1293 spi-max-frequency = <50000000>; 1294 #address-cells = <1>; 1295 #size-cells = <0>; 1296 status = "disabled"; 1297 }; 1298 1299 i2c9: i2c@a84000 { 1300 compatible = "qcom,geni-i2c"; 1301 reg = <0 0x00a84000 0 0x4000>; 1302 clock-names = "se"; 1303 clocks = <&gcc GCC_QUPV3_WRAP1_S1_CLK>; 1304 dmas = <&gpi_dma1 0 1 QCOM_GPI_I2C>, 1305 <&gpi_dma1 1 1 QCOM_GPI_I2C>; 1306 dma-names = "tx", "rx"; 1307 pinctrl-names = "default"; 1308 pinctrl-0 = <&qup_i2c9_default>; 1309 interrupts = <GIC_SPI 354 IRQ_TYPE_LEVEL_HIGH>; 1310 #address-cells = <1>; 1311 #size-cells = <0>; 1312 status = "disabled"; 1313 }; 1314 1315 spi9: spi@a84000 { 1316 compatible = "qcom,geni-spi"; 1317 reg = <0 0xa84000 0 0x4000>; 1318 reg-names = "se"; 1319 clock-names = "se"; 1320 clocks = <&gcc GCC_QUPV3_WRAP1_S1_CLK>; 1321 dmas = <&gpi_dma1 0 1 QCOM_GPI_SPI>, 1322 <&gpi_dma1 1 1 QCOM_GPI_SPI>; 1323 dma-names = "tx", "rx"; 1324 pinctrl-names = "default"; 1325 pinctrl-0 = <&qup_spi9_default>; 1326 interrupts = <GIC_SPI 354 IRQ_TYPE_LEVEL_HIGH>; 1327 spi-max-frequency = <50000000>; 1328 #address-cells = <1>; 1329 #size-cells = <0>; 1330 status = "disabled"; 1331 }; 1332 1333 i2c10: i2c@a88000 { 1334 compatible = "qcom,geni-i2c"; 1335 reg = <0 0x00a88000 0 0x4000>; 1336 clock-names = "se"; 1337 clocks = <&gcc GCC_QUPV3_WRAP1_S2_CLK>; 1338 dmas = <&gpi_dma1 0 2 QCOM_GPI_I2C>, 1339 <&gpi_dma1 1 2 QCOM_GPI_I2C>; 1340 dma-names = "tx", "rx"; 1341 pinctrl-names = "default"; 1342 pinctrl-0 = <&qup_i2c10_default>; 1343 interrupts = <GIC_SPI 355 IRQ_TYPE_LEVEL_HIGH>; 1344 #address-cells = <1>; 1345 #size-cells = <0>; 1346 status = "disabled"; 1347 }; 1348 1349 spi10: spi@a88000 { 1350 compatible = "qcom,geni-spi"; 1351 reg = <0 0xa88000 0 0x4000>; 1352 reg-names = "se"; 1353 clock-names = "se"; 1354 clocks = <&gcc GCC_QUPV3_WRAP1_S2_CLK>; 1355 dmas = <&gpi_dma1 0 2 QCOM_GPI_SPI>, 1356 <&gpi_dma1 1 2 QCOM_GPI_SPI>; 1357 dma-names = "tx", "rx"; 1358 pinctrl-names = "default"; 1359 pinctrl-0 = <&qup_spi10_default>; 1360 interrupts = <GIC_SPI 355 IRQ_TYPE_LEVEL_HIGH>; 1361 spi-max-frequency = <50000000>; 1362 #address-cells = <1>; 1363 #size-cells = <0>; 1364 status = "disabled"; 1365 }; 1366 1367 i2c11: i2c@a8c000 { 1368 compatible = "qcom,geni-i2c"; 1369 reg = <0 0x00a8c000 0 0x4000>; 1370 clock-names = "se"; 1371 clocks = <&gcc GCC_QUPV3_WRAP1_S3_CLK>; 1372 dmas = <&gpi_dma1 0 3 QCOM_GPI_I2C>, 1373 <&gpi_dma1 1 3 QCOM_GPI_I2C>; 1374 dma-names = "tx", "rx"; 1375 pinctrl-names = "default"; 1376 pinctrl-0 = <&qup_i2c11_default>; 1377 interrupts = <GIC_SPI 356 IRQ_TYPE_LEVEL_HIGH>; 1378 #address-cells = <1>; 1379 #size-cells = <0>; 1380 status = "disabled"; 1381 }; 1382 1383 spi11: spi@a8c000 { 1384 compatible = "qcom,geni-spi"; 1385 reg = <0 0xa8c000 0 0x4000>; 1386 reg-names = "se"; 1387 clock-names = "se"; 1388 clocks = <&gcc GCC_QUPV3_WRAP1_S3_CLK>; 1389 dmas = <&gpi_dma1 0 3 QCOM_GPI_SPI>, 1390 <&gpi_dma1 1 3 QCOM_GPI_SPI>; 1391 dma-names = "tx", "rx"; 1392 pinctrl-names = "default"; 1393 pinctrl-0 = <&qup_spi11_default>; 1394 interrupts = <GIC_SPI 356 IRQ_TYPE_LEVEL_HIGH>; 1395 spi-max-frequency = <50000000>; 1396 #address-cells = <1>; 1397 #size-cells = <0>; 1398 status = "disabled"; 1399 }; 1400 1401 uart2: serial@a90000 { 1402 compatible = "qcom,geni-debug-uart"; 1403 reg = <0x0 0x00a90000 0x0 0x4000>; 1404 clock-names = "se"; 1405 clocks = <&gcc GCC_QUPV3_WRAP1_S4_CLK>; 1406 interrupts = <GIC_SPI 357 IRQ_TYPE_LEVEL_HIGH>; 1407 status = "disabled"; 1408 }; 1409 1410 i2c12: i2c@a90000 { 1411 compatible = "qcom,geni-i2c"; 1412 reg = <0 0x00a90000 0 0x4000>; 1413 clock-names = "se"; 1414 clocks = <&gcc GCC_QUPV3_WRAP1_S4_CLK>; 1415 dmas = <&gpi_dma1 0 4 QCOM_GPI_I2C>, 1416 <&gpi_dma1 1 4 QCOM_GPI_I2C>; 1417 dma-names = "tx", "rx"; 1418 pinctrl-names = "default"; 1419 pinctrl-0 = <&qup_i2c12_default>; 1420 interrupts = <GIC_SPI 357 IRQ_TYPE_LEVEL_HIGH>; 1421 #address-cells = <1>; 1422 #size-cells = <0>; 1423 status = "disabled"; 1424 }; 1425 1426 spi12: spi@a90000 { 1427 compatible = "qcom,geni-spi"; 1428 reg = <0 0xa90000 0 0x4000>; 1429 reg-names = "se"; 1430 clock-names = "se"; 1431 clocks = <&gcc GCC_QUPV3_WRAP1_S4_CLK>; 1432 dmas = <&gpi_dma1 0 4 QCOM_GPI_SPI>, 1433 <&gpi_dma1 1 4 QCOM_GPI_SPI>; 1434 dma-names = "tx", "rx"; 1435 pinctrl-names = "default"; 1436 pinctrl-0 = <&qup_spi12_default>; 1437 interrupts = <GIC_SPI 357 IRQ_TYPE_LEVEL_HIGH>; 1438 spi-max-frequency = <50000000>; 1439 #address-cells = <1>; 1440 #size-cells = <0>; 1441 status = "disabled"; 1442 }; 1443 1444 i2c16: i2c@94000 { 1445 compatible = "qcom,geni-i2c"; 1446 reg = <0 0x0094000 0 0x4000>; 1447 clock-names = "se"; 1448 clocks = <&gcc GCC_QUPV3_WRAP1_S5_CLK>; 1449 dmas = <&gpi_dma2 0 5 QCOM_GPI_I2C>, 1450 <&gpi_dma2 1 5 QCOM_GPI_I2C>; 1451 dma-names = "tx", "rx"; 1452 pinctrl-names = "default"; 1453 pinctrl-0 = <&qup_i2c16_default>; 1454 interrupts = <GIC_SPI 358 IRQ_TYPE_LEVEL_HIGH>; 1455 #address-cells = <1>; 1456 #size-cells = <0>; 1457 status = "disabled"; 1458 }; 1459 1460 spi16: spi@a94000 { 1461 compatible = "qcom,geni-spi"; 1462 reg = <0 0xa94000 0 0x4000>; 1463 reg-names = "se"; 1464 clock-names = "se"; 1465 clocks = <&gcc GCC_QUPV3_WRAP1_S5_CLK>; 1466 dmas = <&gpi_dma2 0 5 QCOM_GPI_SPI>, 1467 <&gpi_dma2 1 5 QCOM_GPI_SPI>; 1468 dma-names = "tx", "rx"; 1469 pinctrl-names = "default"; 1470 pinctrl-0 = <&qup_spi16_default>; 1471 interrupts = <GIC_SPI 358 IRQ_TYPE_LEVEL_HIGH>; 1472 spi-max-frequency = <50000000>; 1473 #address-cells = <1>; 1474 #size-cells = <0>; 1475 status = "disabled"; 1476 }; 1477 }; 1478 1479 gpi_dma2: dma-controller@c00000 { 1480 compatible = "qcom,sm8150-gpi-dma"; 1481 reg = <0 0xc00000 0 0x60000>; 1482 interrupts = <GIC_SPI 588 IRQ_TYPE_LEVEL_HIGH>, 1483 <GIC_SPI 589 IRQ_TYPE_LEVEL_HIGH>, 1484 <GIC_SPI 590 IRQ_TYPE_LEVEL_HIGH>, 1485 <GIC_SPI 591 IRQ_TYPE_LEVEL_HIGH>, 1486 <GIC_SPI 592 IRQ_TYPE_LEVEL_HIGH>, 1487 <GIC_SPI 593 IRQ_TYPE_LEVEL_HIGH>, 1488 <GIC_SPI 594 IRQ_TYPE_LEVEL_HIGH>, 1489 <GIC_SPI 595 IRQ_TYPE_LEVEL_HIGH>, 1490 <GIC_SPI 596 IRQ_TYPE_LEVEL_HIGH>, 1491 <GIC_SPI 597 IRQ_TYPE_LEVEL_HIGH>, 1492 <GIC_SPI 598 IRQ_TYPE_LEVEL_HIGH>, 1493 <GIC_SPI 599 IRQ_TYPE_LEVEL_HIGH>, 1494 <GIC_SPI 600 IRQ_TYPE_LEVEL_HIGH>; 1495 dma-channels = <13>; 1496 dma-channel-mask = <0xfa>; 1497 iommus = <&apps_smmu 0x07b6 0x0>; 1498 #dma-cells = <3>; 1499 status = "disabled"; 1500 }; 1501 1502 qupv3_id_2: geniqup@cc0000 { 1503 compatible = "qcom,geni-se-qup"; 1504 reg = <0x0 0x00cc0000 0x0 0x6000>; 1505 1506 clock-names = "m-ahb", "s-ahb"; 1507 clocks = <&gcc GCC_QUPV3_WRAP_2_M_AHB_CLK>, 1508 <&gcc GCC_QUPV3_WRAP_2_S_AHB_CLK>; 1509 iommus = <&apps_smmu 0x7a3 0x0>; 1510 #address-cells = <2>; 1511 #size-cells = <2>; 1512 ranges; 1513 status = "disabled"; 1514 1515 i2c17: i2c@c80000 { 1516 compatible = "qcom,geni-i2c"; 1517 reg = <0 0x00c80000 0 0x4000>; 1518 clock-names = "se"; 1519 clocks = <&gcc GCC_QUPV3_WRAP2_S0_CLK>; 1520 dmas = <&gpi_dma2 0 0 QCOM_GPI_I2C>, 1521 <&gpi_dma2 1 0 QCOM_GPI_I2C>; 1522 dma-names = "tx", "rx"; 1523 pinctrl-names = "default"; 1524 pinctrl-0 = <&qup_i2c17_default>; 1525 interrupts = <GIC_SPI 373 IRQ_TYPE_LEVEL_HIGH>; 1526 #address-cells = <1>; 1527 #size-cells = <0>; 1528 status = "disabled"; 1529 }; 1530 1531 spi17: spi@c80000 { 1532 compatible = "qcom,geni-spi"; 1533 reg = <0 0xc80000 0 0x4000>; 1534 reg-names = "se"; 1535 clock-names = "se"; 1536 clocks = <&gcc GCC_QUPV3_WRAP2_S0_CLK>; 1537 dmas = <&gpi_dma2 0 0 QCOM_GPI_SPI>, 1538 <&gpi_dma2 1 0 QCOM_GPI_SPI>; 1539 dma-names = "tx", "rx"; 1540 pinctrl-names = "default"; 1541 pinctrl-0 = <&qup_spi17_default>; 1542 interrupts = <GIC_SPI 373 IRQ_TYPE_LEVEL_HIGH>; 1543 spi-max-frequency = <50000000>; 1544 #address-cells = <1>; 1545 #size-cells = <0>; 1546 status = "disabled"; 1547 }; 1548 1549 i2c18: i2c@c84000 { 1550 compatible = "qcom,geni-i2c"; 1551 reg = <0 0x00c84000 0 0x4000>; 1552 clock-names = "se"; 1553 clocks = <&gcc GCC_QUPV3_WRAP2_S1_CLK>; 1554 dmas = <&gpi_dma2 0 1 QCOM_GPI_I2C>, 1555 <&gpi_dma2 1 1 QCOM_GPI_I2C>; 1556 dma-names = "tx", "rx"; 1557 pinctrl-names = "default"; 1558 pinctrl-0 = <&qup_i2c18_default>; 1559 interrupts = <GIC_SPI 583 IRQ_TYPE_LEVEL_HIGH>; 1560 #address-cells = <1>; 1561 #size-cells = <0>; 1562 status = "disabled"; 1563 }; 1564 1565 spi18: spi@c84000 { 1566 compatible = "qcom,geni-spi"; 1567 reg = <0 0xc84000 0 0x4000>; 1568 reg-names = "se"; 1569 clock-names = "se"; 1570 clocks = <&gcc GCC_QUPV3_WRAP2_S1_CLK>; 1571 dmas = <&gpi_dma2 0 1 QCOM_GPI_SPI>, 1572 <&gpi_dma2 1 1 QCOM_GPI_SPI>; 1573 dma-names = "tx", "rx"; 1574 pinctrl-names = "default"; 1575 pinctrl-0 = <&qup_spi18_default>; 1576 interrupts = <GIC_SPI 583 IRQ_TYPE_LEVEL_HIGH>; 1577 spi-max-frequency = <50000000>; 1578 #address-cells = <1>; 1579 #size-cells = <0>; 1580 status = "disabled"; 1581 }; 1582 1583 i2c19: i2c@c88000 { 1584 compatible = "qcom,geni-i2c"; 1585 reg = <0 0x00c88000 0 0x4000>; 1586 clock-names = "se"; 1587 clocks = <&gcc GCC_QUPV3_WRAP2_S2_CLK>; 1588 dmas = <&gpi_dma2 0 2 QCOM_GPI_I2C>, 1589 <&gpi_dma2 1 2 QCOM_GPI_I2C>; 1590 dma-names = "tx", "rx"; 1591 pinctrl-names = "default"; 1592 pinctrl-0 = <&qup_i2c19_default>; 1593 interrupts = <GIC_SPI 584 IRQ_TYPE_LEVEL_HIGH>; 1594 #address-cells = <1>; 1595 #size-cells = <0>; 1596 status = "disabled"; 1597 }; 1598 1599 spi19: spi@c88000 { 1600 compatible = "qcom,geni-spi"; 1601 reg = <0 0xc88000 0 0x4000>; 1602 reg-names = "se"; 1603 clock-names = "se"; 1604 clocks = <&gcc GCC_QUPV3_WRAP2_S2_CLK>; 1605 dmas = <&gpi_dma2 0 2 QCOM_GPI_SPI>, 1606 <&gpi_dma2 1 2 QCOM_GPI_SPI>; 1607 dma-names = "tx", "rx"; 1608 pinctrl-names = "default"; 1609 pinctrl-0 = <&qup_spi19_default>; 1610 interrupts = <GIC_SPI 584 IRQ_TYPE_LEVEL_HIGH>; 1611 spi-max-frequency = <50000000>; 1612 #address-cells = <1>; 1613 #size-cells = <0>; 1614 status = "disabled"; 1615 }; 1616 1617 i2c13: i2c@c8c000 { 1618 compatible = "qcom,geni-i2c"; 1619 reg = <0 0x00c8c000 0 0x4000>; 1620 clock-names = "se"; 1621 clocks = <&gcc GCC_QUPV3_WRAP2_S3_CLK>; 1622 dmas = <&gpi_dma2 0 3 QCOM_GPI_I2C>, 1623 <&gpi_dma2 1 3 QCOM_GPI_I2C>; 1624 dma-names = "tx", "rx"; 1625 pinctrl-names = "default"; 1626 pinctrl-0 = <&qup_i2c13_default>; 1627 interrupts = <GIC_SPI 585 IRQ_TYPE_LEVEL_HIGH>; 1628 #address-cells = <1>; 1629 #size-cells = <0>; 1630 status = "disabled"; 1631 }; 1632 1633 spi13: spi@c8c000 { 1634 compatible = "qcom,geni-spi"; 1635 reg = <0 0xc8c000 0 0x4000>; 1636 reg-names = "se"; 1637 clock-names = "se"; 1638 clocks = <&gcc GCC_QUPV3_WRAP2_S3_CLK>; 1639 dmas = <&gpi_dma2 0 3 QCOM_GPI_SPI>, 1640 <&gpi_dma2 1 3 QCOM_GPI_SPI>; 1641 dma-names = "tx", "rx"; 1642 pinctrl-names = "default"; 1643 pinctrl-0 = <&qup_spi13_default>; 1644 interrupts = <GIC_SPI 585 IRQ_TYPE_LEVEL_HIGH>; 1645 spi-max-frequency = <50000000>; 1646 #address-cells = <1>; 1647 #size-cells = <0>; 1648 status = "disabled"; 1649 }; 1650 1651 i2c14: i2c@c90000 { 1652 compatible = "qcom,geni-i2c"; 1653 reg = <0 0x00c90000 0 0x4000>; 1654 clock-names = "se"; 1655 clocks = <&gcc GCC_QUPV3_WRAP2_S4_CLK>; 1656 dmas = <&gpi_dma2 0 4 QCOM_GPI_I2C>, 1657 <&gpi_dma2 1 4 QCOM_GPI_I2C>; 1658 dma-names = "tx", "rx"; 1659 pinctrl-names = "default"; 1660 pinctrl-0 = <&qup_i2c14_default>; 1661 interrupts = <GIC_SPI 586 IRQ_TYPE_LEVEL_HIGH>; 1662 #address-cells = <1>; 1663 #size-cells = <0>; 1664 status = "disabled"; 1665 }; 1666 1667 spi14: spi@c90000 { 1668 compatible = "qcom,geni-spi"; 1669 reg = <0 0xc90000 0 0x4000>; 1670 reg-names = "se"; 1671 clock-names = "se"; 1672 clocks = <&gcc GCC_QUPV3_WRAP2_S4_CLK>; 1673 dmas = <&gpi_dma2 0 4 QCOM_GPI_SPI>, 1674 <&gpi_dma2 1 4 QCOM_GPI_SPI>; 1675 dma-names = "tx", "rx"; 1676 pinctrl-names = "default"; 1677 pinctrl-0 = <&qup_spi14_default>; 1678 interrupts = <GIC_SPI 586 IRQ_TYPE_LEVEL_HIGH>; 1679 spi-max-frequency = <50000000>; 1680 #address-cells = <1>; 1681 #size-cells = <0>; 1682 status = "disabled"; 1683 }; 1684 1685 i2c15: i2c@c94000 { 1686 compatible = "qcom,geni-i2c"; 1687 reg = <0 0x00c94000 0 0x4000>; 1688 clock-names = "se"; 1689 clocks = <&gcc GCC_QUPV3_WRAP2_S5_CLK>; 1690 dmas = <&gpi_dma2 0 5 QCOM_GPI_I2C>, 1691 <&gpi_dma2 1 5 QCOM_GPI_I2C>; 1692 dma-names = "tx", "rx"; 1693 pinctrl-names = "default"; 1694 pinctrl-0 = <&qup_i2c15_default>; 1695 interrupts = <GIC_SPI 587 IRQ_TYPE_LEVEL_HIGH>; 1696 #address-cells = <1>; 1697 #size-cells = <0>; 1698 status = "disabled"; 1699 }; 1700 1701 spi15: spi@c94000 { 1702 compatible = "qcom,geni-spi"; 1703 reg = <0 0xc94000 0 0x4000>; 1704 reg-names = "se"; 1705 clock-names = "se"; 1706 clocks = <&gcc GCC_QUPV3_WRAP2_S5_CLK>; 1707 dmas = <&gpi_dma2 0 5 QCOM_GPI_SPI>, 1708 <&gpi_dma2 1 5 QCOM_GPI_SPI>; 1709 dma-names = "tx", "rx"; 1710 pinctrl-names = "default"; 1711 pinctrl-0 = <&qup_spi15_default>; 1712 interrupts = <GIC_SPI 587 IRQ_TYPE_LEVEL_HIGH>; 1713 spi-max-frequency = <50000000>; 1714 #address-cells = <1>; 1715 #size-cells = <0>; 1716 status = "disabled"; 1717 }; 1718 }; 1719 1720 config_noc: interconnect@1500000 { 1721 compatible = "qcom,sm8150-config-noc"; 1722 reg = <0 0x01500000 0 0x7400>; 1723 #interconnect-cells = <1>; 1724 qcom,bcm-voters = <&apps_bcm_voter>; 1725 }; 1726 1727 system_noc: interconnect@1620000 { 1728 compatible = "qcom,sm8150-system-noc"; 1729 reg = <0 0x01620000 0 0x19400>; 1730 #interconnect-cells = <1>; 1731 qcom,bcm-voters = <&apps_bcm_voter>; 1732 }; 1733 1734 mc_virt: interconnect@163a000 { 1735 compatible = "qcom,sm8150-mc-virt"; 1736 reg = <0 0x0163a000 0 0x1000>; 1737 #interconnect-cells = <1>; 1738 qcom,bcm-voters = <&apps_bcm_voter>; 1739 }; 1740 1741 aggre1_noc: interconnect@16e0000 { 1742 compatible = "qcom,sm8150-aggre1-noc"; 1743 reg = <0 0x016e0000 0 0xd080>; 1744 #interconnect-cells = <1>; 1745 qcom,bcm-voters = <&apps_bcm_voter>; 1746 }; 1747 1748 aggre2_noc: interconnect@1700000 { 1749 compatible = "qcom,sm8150-aggre2-noc"; 1750 reg = <0 0x01700000 0 0x20000>; 1751 #interconnect-cells = <1>; 1752 qcom,bcm-voters = <&apps_bcm_voter>; 1753 }; 1754 1755 compute_noc: interconnect@1720000 { 1756 compatible = "qcom,sm8150-compute-noc"; 1757 reg = <0 0x01720000 0 0x7000>; 1758 #interconnect-cells = <1>; 1759 qcom,bcm-voters = <&apps_bcm_voter>; 1760 }; 1761 1762 mmss_noc: interconnect@1740000 { 1763 compatible = "qcom,sm8150-mmss-noc"; 1764 reg = <0 0x01740000 0 0x1c100>; 1765 #interconnect-cells = <1>; 1766 qcom,bcm-voters = <&apps_bcm_voter>; 1767 }; 1768 1769 system-cache-controller@9200000 { 1770 compatible = "qcom,sm8150-llcc"; 1771 reg = <0 0x09200000 0 0x200000>, <0 0x09600000 0 0x50000>; 1772 reg-names = "llcc_base", "llcc_broadcast_base"; 1773 interrupts = <GIC_SPI 582 IRQ_TYPE_LEVEL_HIGH>; 1774 }; 1775 1776 pcie0: pci@1c00000 { 1777 compatible = "qcom,pcie-sm8150", "snps,dw-pcie"; 1778 reg = <0 0x01c00000 0 0x3000>, 1779 <0 0x60000000 0 0xf1d>, 1780 <0 0x60000f20 0 0xa8>, 1781 <0 0x60001000 0 0x1000>, 1782 <0 0x60100000 0 0x100000>; 1783 reg-names = "parf", "dbi", "elbi", "atu", "config"; 1784 device_type = "pci"; 1785 linux,pci-domain = <0>; 1786 bus-range = <0x00 0xff>; 1787 num-lanes = <1>; 1788 1789 #address-cells = <3>; 1790 #size-cells = <2>; 1791 1792 ranges = <0x01000000 0x0 0x60200000 0 0x60200000 0x0 0x100000>, 1793 <0x02000000 0x0 0x60300000 0 0x60300000 0x0 0x3d00000>; 1794 1795 interrupts = <GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH>; 1796 interrupt-names = "msi"; 1797 #interrupt-cells = <1>; 1798 interrupt-map-mask = <0 0 0 0x7>; 1799 interrupt-map = <0 0 0 1 &intc 0 149 IRQ_TYPE_LEVEL_HIGH>, /* int_a */ 1800 <0 0 0 2 &intc 0 150 IRQ_TYPE_LEVEL_HIGH>, /* int_b */ 1801 <0 0 0 3 &intc 0 151 IRQ_TYPE_LEVEL_HIGH>, /* int_c */ 1802 <0 0 0 4 &intc 0 152 IRQ_TYPE_LEVEL_HIGH>; /* int_d */ 1803 1804 clocks = <&gcc GCC_PCIE_0_PIPE_CLK>, 1805 <&gcc GCC_PCIE_0_AUX_CLK>, 1806 <&gcc GCC_PCIE_0_CFG_AHB_CLK>, 1807 <&gcc GCC_PCIE_0_MSTR_AXI_CLK>, 1808 <&gcc GCC_PCIE_0_SLV_AXI_CLK>, 1809 <&gcc GCC_PCIE_0_SLV_Q2A_AXI_CLK>, 1810 <&gcc GCC_AGGRE_NOC_PCIE_TBU_CLK>; 1811 clock-names = "pipe", 1812 "aux", 1813 "cfg", 1814 "bus_master", 1815 "bus_slave", 1816 "slave_q2a", 1817 "tbu"; 1818 1819 iommus = <&apps_smmu 0x1d80 0x7f>; 1820 iommu-map = <0x0 &apps_smmu 0x1d80 0x1>, 1821 <0x100 &apps_smmu 0x1d81 0x1>; 1822 1823 resets = <&gcc GCC_PCIE_0_BCR>; 1824 reset-names = "pci"; 1825 1826 power-domains = <&gcc PCIE_0_GDSC>; 1827 1828 phys = <&pcie0_lane>; 1829 phy-names = "pciephy"; 1830 1831 perst-gpio = <&tlmm 35 GPIO_ACTIVE_HIGH>; 1832 enable-gpio = <&tlmm 37 GPIO_ACTIVE_HIGH>; 1833 1834 pinctrl-names = "default"; 1835 pinctrl-0 = <&pcie0_default_state>; 1836 1837 status = "disabled"; 1838 }; 1839 1840 pcie0_phy: phy@1c06000 { 1841 compatible = "qcom,sm8150-qmp-gen3x1-pcie-phy"; 1842 reg = <0 0x01c06000 0 0x1c0>; 1843 #address-cells = <2>; 1844 #size-cells = <2>; 1845 ranges; 1846 clocks = <&gcc GCC_PCIE_PHY_AUX_CLK>, 1847 <&gcc GCC_PCIE_0_CFG_AHB_CLK>, 1848 <&gcc GCC_PCIE0_PHY_REFGEN_CLK>; 1849 clock-names = "aux", "cfg_ahb", "refgen"; 1850 1851 resets = <&gcc GCC_PCIE_0_PHY_BCR>; 1852 reset-names = "phy"; 1853 1854 assigned-clocks = <&gcc GCC_PCIE0_PHY_REFGEN_CLK>; 1855 assigned-clock-rates = <100000000>; 1856 1857 status = "disabled"; 1858 1859 pcie0_lane: phy@1c06200 { 1860 reg = <0 0x1c06200 0 0x170>, /* tx */ 1861 <0 0x1c06400 0 0x200>, /* rx */ 1862 <0 0x1c06800 0 0x1f0>, /* pcs */ 1863 <0 0x1c06c00 0 0xf4>; /* "pcs_lane" same as pcs_misc? */ 1864 clocks = <&gcc GCC_PCIE_0_PIPE_CLK>; 1865 clock-names = "pipe0"; 1866 1867 #phy-cells = <0>; 1868 clock-output-names = "pcie_0_pipe_clk"; 1869 }; 1870 }; 1871 1872 pcie1: pci@1c08000 { 1873 compatible = "qcom,pcie-sm8150", "snps,dw-pcie"; 1874 reg = <0 0x01c08000 0 0x3000>, 1875 <0 0x40000000 0 0xf1d>, 1876 <0 0x40000f20 0 0xa8>, 1877 <0 0x40001000 0 0x1000>, 1878 <0 0x40100000 0 0x100000>; 1879 reg-names = "parf", "dbi", "elbi", "atu", "config"; 1880 device_type = "pci"; 1881 linux,pci-domain = <1>; 1882 bus-range = <0x00 0xff>; 1883 num-lanes = <2>; 1884 1885 #address-cells = <3>; 1886 #size-cells = <2>; 1887 1888 ranges = <0x01000000 0x0 0x40200000 0x0 0x40200000 0x0 0x100000>, 1889 <0x02000000 0x0 0x40300000 0x0 0x40300000 0x0 0x1fd00000>; 1890 1891 interrupts = <GIC_SPI 307 IRQ_TYPE_EDGE_RISING>; 1892 interrupt-names = "msi"; 1893 #interrupt-cells = <1>; 1894 interrupt-map-mask = <0 0 0 0x7>; 1895 interrupt-map = <0 0 0 1 &intc 0 434 IRQ_TYPE_LEVEL_HIGH>, /* int_a */ 1896 <0 0 0 2 &intc 0 435 IRQ_TYPE_LEVEL_HIGH>, /* int_b */ 1897 <0 0 0 3 &intc 0 438 IRQ_TYPE_LEVEL_HIGH>, /* int_c */ 1898 <0 0 0 4 &intc 0 439 IRQ_TYPE_LEVEL_HIGH>; /* int_d */ 1899 1900 clocks = <&gcc GCC_PCIE_1_PIPE_CLK>, 1901 <&gcc GCC_PCIE_1_AUX_CLK>, 1902 <&gcc GCC_PCIE_1_CFG_AHB_CLK>, 1903 <&gcc GCC_PCIE_1_MSTR_AXI_CLK>, 1904 <&gcc GCC_PCIE_1_SLV_AXI_CLK>, 1905 <&gcc GCC_PCIE_1_SLV_Q2A_AXI_CLK>, 1906 <&gcc GCC_AGGRE_NOC_PCIE_TBU_CLK>; 1907 clock-names = "pipe", 1908 "aux", 1909 "cfg", 1910 "bus_master", 1911 "bus_slave", 1912 "slave_q2a", 1913 "tbu"; 1914 1915 assigned-clocks = <&gcc GCC_PCIE_1_AUX_CLK>; 1916 assigned-clock-rates = <19200000>; 1917 1918 iommus = <&apps_smmu 0x1e00 0x7f>; 1919 iommu-map = <0x0 &apps_smmu 0x1e00 0x1>, 1920 <0x100 &apps_smmu 0x1e01 0x1>; 1921 1922 resets = <&gcc GCC_PCIE_1_BCR>; 1923 reset-names = "pci"; 1924 1925 power-domains = <&gcc PCIE_1_GDSC>; 1926 1927 phys = <&pcie1_lane>; 1928 phy-names = "pciephy"; 1929 1930 perst-gpio = <&tlmm 102 GPIO_ACTIVE_HIGH>; 1931 enable-gpio = <&tlmm 104 GPIO_ACTIVE_HIGH>; 1932 1933 pinctrl-names = "default"; 1934 pinctrl-0 = <&pcie1_default_state>; 1935 1936 status = "disabled"; 1937 }; 1938 1939 pcie1_phy: phy@1c0e000 { 1940 compatible = "qcom,sm8150-qmp-gen3x2-pcie-phy"; 1941 reg = <0 0x01c0e000 0 0x1c0>; 1942 #address-cells = <2>; 1943 #size-cells = <2>; 1944 ranges; 1945 clocks = <&gcc GCC_PCIE_PHY_AUX_CLK>, 1946 <&gcc GCC_PCIE_1_CFG_AHB_CLK>, 1947 <&gcc GCC_PCIE1_PHY_REFGEN_CLK>; 1948 clock-names = "aux", "cfg_ahb", "refgen"; 1949 1950 resets = <&gcc GCC_PCIE_1_PHY_BCR>; 1951 reset-names = "phy"; 1952 1953 assigned-clocks = <&gcc GCC_PCIE1_PHY_REFGEN_CLK>; 1954 assigned-clock-rates = <100000000>; 1955 1956 status = "disabled"; 1957 1958 pcie1_lane: phy@1c0e200 { 1959 reg = <0 0x1c0e200 0 0x170>, /* tx0 */ 1960 <0 0x1c0e400 0 0x200>, /* rx0 */ 1961 <0 0x1c0ea00 0 0x1f0>, /* pcs */ 1962 <0 0x1c0e600 0 0x170>, /* tx1 */ 1963 <0 0x1c0e800 0 0x200>, /* rx1 */ 1964 <0 0x1c0ee00 0 0xf4>; /* "pcs_com" same as pcs_misc? */ 1965 clocks = <&gcc GCC_PCIE_1_PIPE_CLK>; 1966 clock-names = "pipe0"; 1967 1968 #phy-cells = <0>; 1969 clock-output-names = "pcie_1_pipe_clk"; 1970 }; 1971 }; 1972 1973 ufs_mem_hc: ufshc@1d84000 { 1974 compatible = "qcom,sm8150-ufshc", "qcom,ufshc", 1975 "jedec,ufs-2.0"; 1976 reg = <0 0x01d84000 0 0x2500>, 1977 <0 0x01d90000 0 0x8000>; 1978 reg-names = "std", "ice"; 1979 interrupts = <GIC_SPI 265 IRQ_TYPE_LEVEL_HIGH>; 1980 phys = <&ufs_mem_phy_lanes>; 1981 phy-names = "ufsphy"; 1982 lanes-per-direction = <2>; 1983 #reset-cells = <1>; 1984 resets = <&gcc GCC_UFS_PHY_BCR>; 1985 reset-names = "rst"; 1986 1987 iommus = <&apps_smmu 0x300 0>; 1988 1989 clock-names = 1990 "core_clk", 1991 "bus_aggr_clk", 1992 "iface_clk", 1993 "core_clk_unipro", 1994 "ref_clk", 1995 "tx_lane0_sync_clk", 1996 "rx_lane0_sync_clk", 1997 "rx_lane1_sync_clk", 1998 "ice_core_clk"; 1999 clocks = 2000 <&gcc GCC_UFS_PHY_AXI_CLK>, 2001 <&gcc GCC_AGGRE_UFS_PHY_AXI_CLK>, 2002 <&gcc GCC_UFS_PHY_AHB_CLK>, 2003 <&gcc GCC_UFS_PHY_UNIPRO_CORE_CLK>, 2004 <&rpmhcc RPMH_CXO_CLK>, 2005 <&gcc GCC_UFS_PHY_TX_SYMBOL_0_CLK>, 2006 <&gcc GCC_UFS_PHY_RX_SYMBOL_0_CLK>, 2007 <&gcc GCC_UFS_PHY_RX_SYMBOL_1_CLK>, 2008 <&gcc GCC_UFS_PHY_ICE_CORE_CLK>; 2009 freq-table-hz = 2010 <37500000 300000000>, 2011 <0 0>, 2012 <0 0>, 2013 <37500000 300000000>, 2014 <0 0>, 2015 <0 0>, 2016 <0 0>, 2017 <0 0>, 2018 <0 300000000>; 2019 2020 status = "disabled"; 2021 }; 2022 2023 ufs_mem_phy: phy@1d87000 { 2024 compatible = "qcom,sm8150-qmp-ufs-phy"; 2025 reg = <0 0x01d87000 0 0x1c0>; 2026 #address-cells = <2>; 2027 #size-cells = <2>; 2028 ranges; 2029 clock-names = "ref", 2030 "ref_aux"; 2031 clocks = <&gcc GCC_UFS_MEM_CLKREF_CLK>, 2032 <&gcc GCC_UFS_PHY_PHY_AUX_CLK>; 2033 2034 power-domains = <&gcc UFS_PHY_GDSC>; 2035 2036 resets = <&ufs_mem_hc 0>; 2037 reset-names = "ufsphy"; 2038 status = "disabled"; 2039 2040 ufs_mem_phy_lanes: phy@1d87400 { 2041 reg = <0 0x01d87400 0 0x108>, 2042 <0 0x01d87600 0 0x1e0>, 2043 <0 0x01d87c00 0 0x1dc>, 2044 <0 0x01d87800 0 0x108>, 2045 <0 0x01d87a00 0 0x1e0>; 2046 #phy-cells = <0>; 2047 }; 2048 }; 2049 2050 ipa_virt: interconnect@1e00000 { 2051 compatible = "qcom,sm8150-ipa-virt"; 2052 reg = <0 0x01e00000 0 0x1000>; 2053 #interconnect-cells = <1>; 2054 qcom,bcm-voters = <&apps_bcm_voter>; 2055 }; 2056 2057 tcsr_mutex_regs: syscon@1f40000 { 2058 compatible = "syscon"; 2059 reg = <0x0 0x01f40000 0x0 0x40000>; 2060 }; 2061 2062 remoteproc_slpi: remoteproc@2400000 { 2063 compatible = "qcom,sm8150-slpi-pas"; 2064 reg = <0x0 0x02400000 0x0 0x4040>; 2065 2066 interrupts-extended = <&intc GIC_SPI 494 IRQ_TYPE_EDGE_RISING>, 2067 <&slpi_smp2p_in 0 IRQ_TYPE_EDGE_RISING>, 2068 <&slpi_smp2p_in 1 IRQ_TYPE_EDGE_RISING>, 2069 <&slpi_smp2p_in 2 IRQ_TYPE_EDGE_RISING>, 2070 <&slpi_smp2p_in 3 IRQ_TYPE_EDGE_RISING>; 2071 interrupt-names = "wdog", "fatal", "ready", 2072 "handover", "stop-ack"; 2073 2074 clocks = <&rpmhcc RPMH_CXO_CLK>; 2075 clock-names = "xo"; 2076 2077 power-domains = <&rpmhpd 3>, 2078 <&rpmhpd 2>; 2079 power-domain-names = "lcx", "lmx"; 2080 2081 memory-region = <&slpi_mem>; 2082 2083 qcom,qmp = <&aoss_qmp>; 2084 2085 qcom,smem-states = <&slpi_smp2p_out 0>; 2086 qcom,smem-state-names = "stop"; 2087 2088 status = "disabled"; 2089 2090 glink-edge { 2091 interrupts = <GIC_SPI 170 IRQ_TYPE_EDGE_RISING>; 2092 label = "dsps"; 2093 qcom,remote-pid = <3>; 2094 mboxes = <&apss_shared 24>; 2095 2096 fastrpc { 2097 compatible = "qcom,fastrpc"; 2098 qcom,glink-channels = "fastrpcglink-apps-dsp"; 2099 label = "sdsp"; 2100 qcom,non-secure-domain; 2101 #address-cells = <1>; 2102 #size-cells = <0>; 2103 2104 compute-cb@1 { 2105 compatible = "qcom,fastrpc-compute-cb"; 2106 reg = <1>; 2107 iommus = <&apps_smmu 0x05a1 0x0>; 2108 }; 2109 2110 compute-cb@2 { 2111 compatible = "qcom,fastrpc-compute-cb"; 2112 reg = <2>; 2113 iommus = <&apps_smmu 0x05a2 0x0>; 2114 }; 2115 2116 compute-cb@3 { 2117 compatible = "qcom,fastrpc-compute-cb"; 2118 reg = <3>; 2119 iommus = <&apps_smmu 0x05a3 0x0>; 2120 /* note: shared-cb = <4> in downstream */ 2121 }; 2122 }; 2123 }; 2124 }; 2125 2126 gpu: gpu@2c00000 { 2127 /* 2128 * note: the amd,imageon compatible makes it possible 2129 * to use the drm/msm driver without the display node, 2130 * make sure to remove it when display node is added 2131 */ 2132 compatible = "qcom,adreno-640.1", 2133 "qcom,adreno", 2134 "amd,imageon"; 2135 2136 reg = <0 0x02c00000 0 0x40000>; 2137 reg-names = "kgsl_3d0_reg_memory"; 2138 2139 interrupts = <GIC_SPI 300 IRQ_TYPE_LEVEL_HIGH>; 2140 2141 iommus = <&adreno_smmu 0 0x401>; 2142 2143 operating-points-v2 = <&gpu_opp_table>; 2144 2145 qcom,gmu = <&gmu>; 2146 2147 status = "disabled"; 2148 2149 zap-shader { 2150 memory-region = <&gpu_mem>; 2151 }; 2152 2153 /* note: downstream checks gpu binning for 675 Mhz */ 2154 gpu_opp_table: opp-table { 2155 compatible = "operating-points-v2"; 2156 2157 opp-675000000 { 2158 opp-hz = /bits/ 64 <675000000>; 2159 opp-level = <RPMH_REGULATOR_LEVEL_NOM_L1>; 2160 }; 2161 2162 opp-585000000 { 2163 opp-hz = /bits/ 64 <585000000>; 2164 opp-level = <RPMH_REGULATOR_LEVEL_NOM>; 2165 }; 2166 2167 opp-499200000 { 2168 opp-hz = /bits/ 64 <499200000>; 2169 opp-level = <RPMH_REGULATOR_LEVEL_SVS_L2>; 2170 }; 2171 2172 opp-427000000 { 2173 opp-hz = /bits/ 64 <427000000>; 2174 opp-level = <RPMH_REGULATOR_LEVEL_SVS_L1>; 2175 }; 2176 2177 opp-345000000 { 2178 opp-hz = /bits/ 64 <345000000>; 2179 opp-level = <RPMH_REGULATOR_LEVEL_SVS>; 2180 }; 2181 2182 opp-257000000 { 2183 opp-hz = /bits/ 64 <257000000>; 2184 opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS>; 2185 }; 2186 }; 2187 }; 2188 2189 gmu: gmu@2c6a000 { 2190 compatible="qcom,adreno-gmu-640.1", "qcom,adreno-gmu"; 2191 2192 reg = <0 0x02c6a000 0 0x30000>, 2193 <0 0x0b290000 0 0x10000>, 2194 <0 0x0b490000 0 0x10000>; 2195 reg-names = "gmu", "gmu_pdc", "gmu_pdc_seq"; 2196 2197 interrupts = <GIC_SPI 304 IRQ_TYPE_LEVEL_HIGH>, 2198 <GIC_SPI 305 IRQ_TYPE_LEVEL_HIGH>; 2199 interrupt-names = "hfi", "gmu"; 2200 2201 clocks = <&gpucc GPU_CC_AHB_CLK>, 2202 <&gpucc GPU_CC_CX_GMU_CLK>, 2203 <&gpucc GPU_CC_CXO_CLK>, 2204 <&gcc GCC_DDRSS_GPU_AXI_CLK>, 2205 <&gcc GCC_GPU_MEMNOC_GFX_CLK>; 2206 clock-names = "ahb", "gmu", "cxo", "axi", "memnoc"; 2207 2208 power-domains = <&gpucc GPU_CX_GDSC>, 2209 <&gpucc GPU_GX_GDSC>; 2210 power-domain-names = "cx", "gx"; 2211 2212 iommus = <&adreno_smmu 5 0x400>; 2213 2214 operating-points-v2 = <&gmu_opp_table>; 2215 2216 status = "disabled"; 2217 2218 gmu_opp_table: opp-table { 2219 compatible = "operating-points-v2"; 2220 2221 opp-200000000 { 2222 opp-hz = /bits/ 64 <200000000>; 2223 opp-level = <RPMH_REGULATOR_LEVEL_MIN_SVS>; 2224 }; 2225 }; 2226 }; 2227 2228 gpucc: clock-controller@2c90000 { 2229 compatible = "qcom,sm8150-gpucc"; 2230 reg = <0 0x02c90000 0 0x9000>; 2231 clocks = <&rpmhcc RPMH_CXO_CLK>, 2232 <&gcc GCC_GPU_GPLL0_CLK_SRC>, 2233 <&gcc GCC_GPU_GPLL0_DIV_CLK_SRC>; 2234 clock-names = "bi_tcxo", 2235 "gcc_gpu_gpll0_clk_src", 2236 "gcc_gpu_gpll0_div_clk_src"; 2237 #clock-cells = <1>; 2238 #reset-cells = <1>; 2239 #power-domain-cells = <1>; 2240 }; 2241 2242 adreno_smmu: iommu@2ca0000 { 2243 compatible = "qcom,sm8150-smmu-500", "arm,mmu-500"; 2244 reg = <0 0x02ca0000 0 0x10000>; 2245 #iommu-cells = <2>; 2246 #global-interrupts = <1>; 2247 interrupts = <GIC_SPI 674 IRQ_TYPE_LEVEL_HIGH>, 2248 <GIC_SPI 681 IRQ_TYPE_LEVEL_HIGH>, 2249 <GIC_SPI 682 IRQ_TYPE_LEVEL_HIGH>, 2250 <GIC_SPI 683 IRQ_TYPE_LEVEL_HIGH>, 2251 <GIC_SPI 684 IRQ_TYPE_LEVEL_HIGH>, 2252 <GIC_SPI 685 IRQ_TYPE_LEVEL_HIGH>, 2253 <GIC_SPI 686 IRQ_TYPE_LEVEL_HIGH>, 2254 <GIC_SPI 687 IRQ_TYPE_LEVEL_HIGH>, 2255 <GIC_SPI 688 IRQ_TYPE_LEVEL_HIGH>; 2256 clocks = <&gpucc GPU_CC_AHB_CLK>, 2257 <&gcc GCC_GPU_MEMNOC_GFX_CLK>, 2258 <&gcc GCC_GPU_SNOC_DVM_GFX_CLK>; 2259 clock-names = "ahb", "bus", "iface"; 2260 2261 power-domains = <&gpucc GPU_CX_GDSC>; 2262 }; 2263 2264 tlmm: pinctrl@3100000 { 2265 compatible = "qcom,sm8150-pinctrl"; 2266 reg = <0x0 0x03100000 0x0 0x300000>, 2267 <0x0 0x03500000 0x0 0x300000>, 2268 <0x0 0x03900000 0x0 0x300000>, 2269 <0x0 0x03D00000 0x0 0x300000>; 2270 reg-names = "west", "east", "north", "south"; 2271 interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>; 2272 gpio-ranges = <&tlmm 0 0 176>; 2273 gpio-controller; 2274 #gpio-cells = <2>; 2275 interrupt-controller; 2276 #interrupt-cells = <2>; 2277 wakeup-parent = <&pdc>; 2278 2279 qup_i2c0_default: qup-i2c0-default { 2280 mux { 2281 pins = "gpio0", "gpio1"; 2282 function = "qup0"; 2283 }; 2284 2285 config { 2286 pins = "gpio0", "gpio1"; 2287 drive-strength = <0x02>; 2288 bias-disable; 2289 }; 2290 }; 2291 2292 qup_spi0_default: qup-spi0-default { 2293 pins = "gpio0", "gpio1", "gpio2", "gpio3"; 2294 function = "qup0"; 2295 drive-strength = <6>; 2296 bias-disable; 2297 }; 2298 2299 qup_i2c1_default: qup-i2c1-default { 2300 mux { 2301 pins = "gpio114", "gpio115"; 2302 function = "qup1"; 2303 }; 2304 2305 config { 2306 pins = "gpio114", "gpio115"; 2307 drive-strength = <0x02>; 2308 bias-disable; 2309 }; 2310 }; 2311 2312 qup_spi1_default: qup-spi1-default { 2313 pins = "gpio114", "gpio115", "gpio116", "gpio117"; 2314 function = "qup1"; 2315 drive-strength = <6>; 2316 bias-disable; 2317 }; 2318 2319 qup_i2c2_default: qup-i2c2-default { 2320 mux { 2321 pins = "gpio126", "gpio127"; 2322 function = "qup2"; 2323 }; 2324 2325 config { 2326 pins = "gpio126", "gpio127"; 2327 drive-strength = <0x02>; 2328 bias-disable; 2329 }; 2330 }; 2331 2332 qup_spi2_default: qup-spi2-default { 2333 pins = "gpio126", "gpio127", "gpio128", "gpio129"; 2334 function = "qup2"; 2335 drive-strength = <6>; 2336 bias-disable; 2337 }; 2338 2339 qup_i2c3_default: qup-i2c3-default { 2340 mux { 2341 pins = "gpio144", "gpio145"; 2342 function = "qup3"; 2343 }; 2344 2345 config { 2346 pins = "gpio144", "gpio145"; 2347 drive-strength = <0x02>; 2348 bias-disable; 2349 }; 2350 }; 2351 2352 qup_spi3_default: qup-spi3-default { 2353 pins = "gpio144", "gpio145", "gpio146", "gpio147"; 2354 function = "qup3"; 2355 drive-strength = <6>; 2356 bias-disable; 2357 }; 2358 2359 qup_i2c4_default: qup-i2c4-default { 2360 mux { 2361 pins = "gpio51", "gpio52"; 2362 function = "qup4"; 2363 }; 2364 2365 config { 2366 pins = "gpio51", "gpio52"; 2367 drive-strength = <0x02>; 2368 bias-disable; 2369 }; 2370 }; 2371 2372 qup_spi4_default: qup-spi4-default { 2373 pins = "gpio51", "gpio52", "gpio53", "gpio54"; 2374 function = "qup4"; 2375 drive-strength = <6>; 2376 bias-disable; 2377 }; 2378 2379 qup_i2c5_default: qup-i2c5-default { 2380 mux { 2381 pins = "gpio121", "gpio122"; 2382 function = "qup5"; 2383 }; 2384 2385 config { 2386 pins = "gpio121", "gpio122"; 2387 drive-strength = <0x02>; 2388 bias-disable; 2389 }; 2390 }; 2391 2392 qup_spi5_default: qup-spi5-default { 2393 pins = "gpio119", "gpio120", "gpio121", "gpio122"; 2394 function = "qup5"; 2395 drive-strength = <6>; 2396 bias-disable; 2397 }; 2398 2399 qup_i2c6_default: qup-i2c6-default { 2400 mux { 2401 pins = "gpio6", "gpio7"; 2402 function = "qup6"; 2403 }; 2404 2405 config { 2406 pins = "gpio6", "gpio7"; 2407 drive-strength = <0x02>; 2408 bias-disable; 2409 }; 2410 }; 2411 2412 qup_spi6_default: qup-spi6_default { 2413 pins = "gpio4", "gpio5", "gpio6", "gpio7"; 2414 function = "qup6"; 2415 drive-strength = <6>; 2416 bias-disable; 2417 }; 2418 2419 qup_i2c7_default: qup-i2c7-default { 2420 mux { 2421 pins = "gpio98", "gpio99"; 2422 function = "qup7"; 2423 }; 2424 2425 config { 2426 pins = "gpio98", "gpio99"; 2427 drive-strength = <0x02>; 2428 bias-disable; 2429 }; 2430 }; 2431 2432 qup_spi7_default: qup-spi7_default { 2433 pins = "gpio98", "gpio99", "gpio100", "gpio101"; 2434 function = "qup7"; 2435 drive-strength = <6>; 2436 bias-disable; 2437 }; 2438 2439 qup_i2c8_default: qup-i2c8-default { 2440 mux { 2441 pins = "gpio88", "gpio89"; 2442 function = "qup8"; 2443 }; 2444 2445 config { 2446 pins = "gpio88", "gpio89"; 2447 drive-strength = <0x02>; 2448 bias-disable; 2449 }; 2450 }; 2451 2452 qup_spi8_default: qup-spi8-default { 2453 pins = "gpio88", "gpio89", "gpio90", "gpio91"; 2454 function = "qup8"; 2455 drive-strength = <6>; 2456 bias-disable; 2457 }; 2458 2459 qup_i2c9_default: qup-i2c9-default { 2460 mux { 2461 pins = "gpio39", "gpio40"; 2462 function = "qup9"; 2463 }; 2464 2465 config { 2466 pins = "gpio39", "gpio40"; 2467 drive-strength = <0x02>; 2468 bias-disable; 2469 }; 2470 }; 2471 2472 qup_spi9_default: qup-spi9-default { 2473 pins = "gpio39", "gpio40", "gpio41", "gpio42"; 2474 function = "qup9"; 2475 drive-strength = <6>; 2476 bias-disable; 2477 }; 2478 2479 qup_i2c10_default: qup-i2c10-default { 2480 mux { 2481 pins = "gpio9", "gpio10"; 2482 function = "qup10"; 2483 }; 2484 2485 config { 2486 pins = "gpio9", "gpio10"; 2487 drive-strength = <0x02>; 2488 bias-disable; 2489 }; 2490 }; 2491 2492 qup_spi10_default: qup-spi10-default { 2493 pins = "gpio9", "gpio10", "gpio11", "gpio12"; 2494 function = "qup10"; 2495 drive-strength = <6>; 2496 bias-disable; 2497 }; 2498 2499 qup_i2c11_default: qup-i2c11-default { 2500 mux { 2501 pins = "gpio94", "gpio95"; 2502 function = "qup11"; 2503 }; 2504 2505 config { 2506 pins = "gpio94", "gpio95"; 2507 drive-strength = <0x02>; 2508 bias-disable; 2509 }; 2510 }; 2511 2512 qup_spi11_default: qup-spi11-default { 2513 pins = "gpio92", "gpio93", "gpio94", "gpio95"; 2514 function = "qup11"; 2515 drive-strength = <6>; 2516 bias-disable; 2517 }; 2518 2519 qup_i2c12_default: qup-i2c12-default { 2520 mux { 2521 pins = "gpio83", "gpio84"; 2522 function = "qup12"; 2523 }; 2524 2525 config { 2526 pins = "gpio83", "gpio84"; 2527 drive-strength = <0x02>; 2528 bias-disable; 2529 }; 2530 }; 2531 2532 qup_spi12_default: qup-spi12-default { 2533 pins = "gpio83", "gpio84", "gpio85", "gpio86"; 2534 function = "qup12"; 2535 drive-strength = <6>; 2536 bias-disable; 2537 }; 2538 2539 qup_i2c13_default: qup-i2c13-default { 2540 mux { 2541 pins = "gpio43", "gpio44"; 2542 function = "qup13"; 2543 }; 2544 2545 config { 2546 pins = "gpio43", "gpio44"; 2547 drive-strength = <0x02>; 2548 bias-disable; 2549 }; 2550 }; 2551 2552 qup_spi13_default: qup-spi13-default { 2553 pins = "gpio43", "gpio44", "gpio45", "gpio46"; 2554 function = "qup13"; 2555 drive-strength = <6>; 2556 bias-disable; 2557 }; 2558 2559 qup_i2c14_default: qup-i2c14-default { 2560 mux { 2561 pins = "gpio47", "gpio48"; 2562 function = "qup14"; 2563 }; 2564 2565 config { 2566 pins = "gpio47", "gpio48"; 2567 drive-strength = <0x02>; 2568 bias-disable; 2569 }; 2570 }; 2571 2572 qup_spi14_default: qup-spi14-default { 2573 pins = "gpio47", "gpio48", "gpio49", "gpio50"; 2574 function = "qup14"; 2575 drive-strength = <6>; 2576 bias-disable; 2577 }; 2578 2579 qup_i2c15_default: qup-i2c15-default { 2580 mux { 2581 pins = "gpio27", "gpio28"; 2582 function = "qup15"; 2583 }; 2584 2585 config { 2586 pins = "gpio27", "gpio28"; 2587 drive-strength = <0x02>; 2588 bias-disable; 2589 }; 2590 }; 2591 2592 qup_spi15_default: qup-spi15-default { 2593 pins = "gpio27", "gpio28", "gpio29", "gpio30"; 2594 function = "qup15"; 2595 drive-strength = <6>; 2596 bias-disable; 2597 }; 2598 2599 qup_i2c16_default: qup-i2c16-default { 2600 mux { 2601 pins = "gpio86", "gpio85"; 2602 function = "qup16"; 2603 }; 2604 2605 config { 2606 pins = "gpio86", "gpio85"; 2607 drive-strength = <0x02>; 2608 bias-disable; 2609 }; 2610 }; 2611 2612 qup_spi16_default: qup-spi16-default { 2613 pins = "gpio83", "gpio84", "gpio85", "gpio86"; 2614 function = "qup16"; 2615 drive-strength = <6>; 2616 bias-disable; 2617 }; 2618 2619 qup_i2c17_default: qup-i2c17-default { 2620 mux { 2621 pins = "gpio55", "gpio56"; 2622 function = "qup17"; 2623 }; 2624 2625 config { 2626 pins = "gpio55", "gpio56"; 2627 drive-strength = <0x02>; 2628 bias-disable; 2629 }; 2630 }; 2631 2632 qup_spi17_default: qup-spi17-default { 2633 pins = "gpio55", "gpio56", "gpio57", "gpio58"; 2634 function = "qup17"; 2635 drive-strength = <6>; 2636 bias-disable; 2637 }; 2638 2639 qup_i2c18_default: qup-i2c18-default { 2640 mux { 2641 pins = "gpio23", "gpio24"; 2642 function = "qup18"; 2643 }; 2644 2645 config { 2646 pins = "gpio23", "gpio24"; 2647 drive-strength = <0x02>; 2648 bias-disable; 2649 }; 2650 }; 2651 2652 qup_spi18_default: qup-spi18-default { 2653 pins = "gpio23", "gpio24", "gpio25", "gpio26"; 2654 function = "qup18"; 2655 drive-strength = <6>; 2656 bias-disable; 2657 }; 2658 2659 qup_i2c19_default: qup-i2c19-default { 2660 mux { 2661 pins = "gpio57", "gpio58"; 2662 function = "qup19"; 2663 }; 2664 2665 config { 2666 pins = "gpio57", "gpio58"; 2667 drive-strength = <0x02>; 2668 bias-disable; 2669 }; 2670 }; 2671 2672 qup_spi19_default: qup-spi19-default { 2673 pins = "gpio55", "gpio56", "gpio57", "gpio58"; 2674 function = "qup19"; 2675 drive-strength = <6>; 2676 bias-disable; 2677 }; 2678 2679 pcie0_default_state: pcie0-default { 2680 perst { 2681 pins = "gpio35"; 2682 function = "gpio"; 2683 drive-strength = <2>; 2684 bias-pull-down; 2685 }; 2686 2687 clkreq { 2688 pins = "gpio36"; 2689 function = "pci_e0"; 2690 drive-strength = <2>; 2691 bias-pull-up; 2692 }; 2693 2694 wake { 2695 pins = "gpio37"; 2696 function = "gpio"; 2697 drive-strength = <2>; 2698 bias-pull-up; 2699 }; 2700 }; 2701 2702 pcie1_default_state: pcie1-default { 2703 perst { 2704 pins = "gpio102"; 2705 function = "gpio"; 2706 drive-strength = <2>; 2707 bias-pull-down; 2708 }; 2709 2710 clkreq { 2711 pins = "gpio103"; 2712 function = "pci_e1"; 2713 drive-strength = <2>; 2714 bias-pull-up; 2715 }; 2716 2717 wake { 2718 pins = "gpio104"; 2719 function = "gpio"; 2720 drive-strength = <2>; 2721 bias-pull-up; 2722 }; 2723 }; 2724 }; 2725 2726 remoteproc_mpss: remoteproc@4080000 { 2727 compatible = "qcom,sm8150-mpss-pas"; 2728 reg = <0x0 0x04080000 0x0 0x4040>; 2729 2730 interrupts-extended = <&intc GIC_SPI 266 IRQ_TYPE_EDGE_RISING>, 2731 <&modem_smp2p_in 0 IRQ_TYPE_EDGE_RISING>, 2732 <&modem_smp2p_in 1 IRQ_TYPE_EDGE_RISING>, 2733 <&modem_smp2p_in 2 IRQ_TYPE_EDGE_RISING>, 2734 <&modem_smp2p_in 3 IRQ_TYPE_EDGE_RISING>, 2735 <&modem_smp2p_in 7 IRQ_TYPE_EDGE_RISING>; 2736 interrupt-names = "wdog", "fatal", "ready", "handover", 2737 "stop-ack", "shutdown-ack"; 2738 2739 clocks = <&rpmhcc RPMH_CXO_CLK>; 2740 clock-names = "xo"; 2741 2742 power-domains = <&rpmhpd 7>, 2743 <&rpmhpd 0>; 2744 power-domain-names = "cx", "mss"; 2745 2746 memory-region = <&mpss_mem>; 2747 2748 qcom,qmp = <&aoss_qmp>; 2749 2750 qcom,smem-states = <&modem_smp2p_out 0>; 2751 qcom,smem-state-names = "stop"; 2752 2753 status = "disabled"; 2754 2755 glink-edge { 2756 interrupts = <GIC_SPI 449 IRQ_TYPE_EDGE_RISING>; 2757 label = "modem"; 2758 qcom,remote-pid = <1>; 2759 mboxes = <&apss_shared 12>; 2760 }; 2761 }; 2762 2763 stm@6002000 { 2764 compatible = "arm,coresight-stm", "arm,primecell"; 2765 reg = <0 0x06002000 0 0x1000>, 2766 <0 0x16280000 0 0x180000>; 2767 reg-names = "stm-base", "stm-stimulus-base"; 2768 2769 clocks = <&aoss_qmp>; 2770 clock-names = "apb_pclk"; 2771 2772 out-ports { 2773 port { 2774 stm_out: endpoint { 2775 remote-endpoint = <&funnel0_in7>; 2776 }; 2777 }; 2778 }; 2779 }; 2780 2781 funnel@6041000 { 2782 compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 2783 reg = <0 0x06041000 0 0x1000>; 2784 2785 clocks = <&aoss_qmp>; 2786 clock-names = "apb_pclk"; 2787 2788 out-ports { 2789 port { 2790 funnel0_out: endpoint { 2791 remote-endpoint = <&merge_funnel_in0>; 2792 }; 2793 }; 2794 }; 2795 2796 in-ports { 2797 #address-cells = <1>; 2798 #size-cells = <0>; 2799 2800 port@7 { 2801 reg = <7>; 2802 funnel0_in7: endpoint { 2803 remote-endpoint = <&stm_out>; 2804 }; 2805 }; 2806 }; 2807 }; 2808 2809 funnel@6042000 { 2810 compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 2811 reg = <0 0x06042000 0 0x1000>; 2812 2813 clocks = <&aoss_qmp>; 2814 clock-names = "apb_pclk"; 2815 2816 out-ports { 2817 port { 2818 funnel1_out: endpoint { 2819 remote-endpoint = <&merge_funnel_in1>; 2820 }; 2821 }; 2822 }; 2823 2824 in-ports { 2825 #address-cells = <1>; 2826 #size-cells = <0>; 2827 2828 port@4 { 2829 reg = <4>; 2830 funnel1_in4: endpoint { 2831 remote-endpoint = <&swao_replicator_out>; 2832 }; 2833 }; 2834 }; 2835 }; 2836 2837 funnel@6043000 { 2838 compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 2839 reg = <0 0x06043000 0 0x1000>; 2840 2841 clocks = <&aoss_qmp>; 2842 clock-names = "apb_pclk"; 2843 2844 out-ports { 2845 port { 2846 funnel2_out: endpoint { 2847 remote-endpoint = <&merge_funnel_in2>; 2848 }; 2849 }; 2850 }; 2851 2852 in-ports { 2853 #address-cells = <1>; 2854 #size-cells = <0>; 2855 2856 port@2 { 2857 reg = <2>; 2858 funnel2_in2: endpoint { 2859 remote-endpoint = <&apss_merge_funnel_out>; 2860 }; 2861 }; 2862 }; 2863 }; 2864 2865 funnel@6045000 { 2866 compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 2867 reg = <0 0x06045000 0 0x1000>; 2868 2869 clocks = <&aoss_qmp>; 2870 clock-names = "apb_pclk"; 2871 2872 out-ports { 2873 port { 2874 merge_funnel_out: endpoint { 2875 remote-endpoint = <&etf_in>; 2876 }; 2877 }; 2878 }; 2879 2880 in-ports { 2881 #address-cells = <1>; 2882 #size-cells = <0>; 2883 2884 port@0 { 2885 reg = <0>; 2886 merge_funnel_in0: endpoint { 2887 remote-endpoint = <&funnel0_out>; 2888 }; 2889 }; 2890 2891 port@1 { 2892 reg = <1>; 2893 merge_funnel_in1: endpoint { 2894 remote-endpoint = <&funnel1_out>; 2895 }; 2896 }; 2897 2898 port@2 { 2899 reg = <2>; 2900 merge_funnel_in2: endpoint { 2901 remote-endpoint = <&funnel2_out>; 2902 }; 2903 }; 2904 }; 2905 }; 2906 2907 replicator@6046000 { 2908 compatible = "arm,coresight-dynamic-replicator", "arm,primecell"; 2909 reg = <0 0x06046000 0 0x1000>; 2910 2911 clocks = <&aoss_qmp>; 2912 clock-names = "apb_pclk"; 2913 2914 out-ports { 2915 #address-cells = <1>; 2916 #size-cells = <0>; 2917 2918 port@0 { 2919 reg = <0>; 2920 replicator_out0: endpoint { 2921 remote-endpoint = <&etr_in>; 2922 }; 2923 }; 2924 2925 port@1 { 2926 reg = <1>; 2927 replicator_out1: endpoint { 2928 remote-endpoint = <&replicator1_in>; 2929 }; 2930 }; 2931 }; 2932 2933 in-ports { 2934 port { 2935 replicator_in0: endpoint { 2936 remote-endpoint = <&etf_out>; 2937 }; 2938 }; 2939 }; 2940 }; 2941 2942 etf@6047000 { 2943 compatible = "arm,coresight-tmc", "arm,primecell"; 2944 reg = <0 0x06047000 0 0x1000>; 2945 2946 clocks = <&aoss_qmp>; 2947 clock-names = "apb_pclk"; 2948 2949 out-ports { 2950 port { 2951 etf_out: endpoint { 2952 remote-endpoint = <&replicator_in0>; 2953 }; 2954 }; 2955 }; 2956 2957 in-ports { 2958 port { 2959 etf_in: endpoint { 2960 remote-endpoint = <&merge_funnel_out>; 2961 }; 2962 }; 2963 }; 2964 }; 2965 2966 etr@6048000 { 2967 compatible = "arm,coresight-tmc", "arm,primecell"; 2968 reg = <0 0x06048000 0 0x1000>; 2969 iommus = <&apps_smmu 0x05e0 0x0>; 2970 2971 clocks = <&aoss_qmp>; 2972 clock-names = "apb_pclk"; 2973 arm,scatter-gather; 2974 2975 in-ports { 2976 port { 2977 etr_in: endpoint { 2978 remote-endpoint = <&replicator_out0>; 2979 }; 2980 }; 2981 }; 2982 }; 2983 2984 replicator@604a000 { 2985 compatible = "arm,coresight-dynamic-replicator", "arm,primecell"; 2986 reg = <0 0x0604a000 0 0x1000>; 2987 2988 clocks = <&aoss_qmp>; 2989 clock-names = "apb_pclk"; 2990 2991 out-ports { 2992 #address-cells = <1>; 2993 #size-cells = <0>; 2994 2995 port@1 { 2996 reg = <1>; 2997 replicator1_out: endpoint { 2998 remote-endpoint = <&swao_funnel_in>; 2999 }; 3000 }; 3001 }; 3002 3003 in-ports { 3004 #address-cells = <1>; 3005 #size-cells = <0>; 3006 3007 port@1 { 3008 reg = <1>; 3009 replicator1_in: endpoint { 3010 remote-endpoint = <&replicator_out1>; 3011 }; 3012 }; 3013 }; 3014 }; 3015 3016 funnel@6b08000 { 3017 compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 3018 reg = <0 0x06b08000 0 0x1000>; 3019 3020 clocks = <&aoss_qmp>; 3021 clock-names = "apb_pclk"; 3022 3023 out-ports { 3024 port { 3025 swao_funnel_out: endpoint { 3026 remote-endpoint = <&swao_etf_in>; 3027 }; 3028 }; 3029 }; 3030 3031 in-ports { 3032 #address-cells = <1>; 3033 #size-cells = <0>; 3034 3035 port@6 { 3036 reg = <6>; 3037 swao_funnel_in: endpoint { 3038 remote-endpoint = <&replicator1_out>; 3039 }; 3040 }; 3041 }; 3042 }; 3043 3044 etf@6b09000 { 3045 compatible = "arm,coresight-tmc", "arm,primecell"; 3046 reg = <0 0x06b09000 0 0x1000>; 3047 3048 clocks = <&aoss_qmp>; 3049 clock-names = "apb_pclk"; 3050 3051 out-ports { 3052 port { 3053 swao_etf_out: endpoint { 3054 remote-endpoint = <&swao_replicator_in>; 3055 }; 3056 }; 3057 }; 3058 3059 in-ports { 3060 port { 3061 swao_etf_in: endpoint { 3062 remote-endpoint = <&swao_funnel_out>; 3063 }; 3064 }; 3065 }; 3066 }; 3067 3068 replicator@6b0a000 { 3069 compatible = "arm,coresight-dynamic-replicator", "arm,primecell"; 3070 reg = <0 0x06b0a000 0 0x1000>; 3071 3072 clocks = <&aoss_qmp>; 3073 clock-names = "apb_pclk"; 3074 qcom,replicator-loses-context; 3075 3076 out-ports { 3077 port { 3078 swao_replicator_out: endpoint { 3079 remote-endpoint = <&funnel1_in4>; 3080 }; 3081 }; 3082 }; 3083 3084 in-ports { 3085 port { 3086 swao_replicator_in: endpoint { 3087 remote-endpoint = <&swao_etf_out>; 3088 }; 3089 }; 3090 }; 3091 }; 3092 3093 etm@7040000 { 3094 compatible = "arm,coresight-etm4x", "arm,primecell"; 3095 reg = <0 0x07040000 0 0x1000>; 3096 3097 cpu = <&CPU0>; 3098 3099 clocks = <&aoss_qmp>; 3100 clock-names = "apb_pclk"; 3101 arm,coresight-loses-context-with-cpu; 3102 qcom,skip-power-up; 3103 3104 out-ports { 3105 port { 3106 etm0_out: endpoint { 3107 remote-endpoint = <&apss_funnel_in0>; 3108 }; 3109 }; 3110 }; 3111 }; 3112 3113 etm@7140000 { 3114 compatible = "arm,coresight-etm4x", "arm,primecell"; 3115 reg = <0 0x07140000 0 0x1000>; 3116 3117 cpu = <&CPU1>; 3118 3119 clocks = <&aoss_qmp>; 3120 clock-names = "apb_pclk"; 3121 arm,coresight-loses-context-with-cpu; 3122 qcom,skip-power-up; 3123 3124 out-ports { 3125 port { 3126 etm1_out: endpoint { 3127 remote-endpoint = <&apss_funnel_in1>; 3128 }; 3129 }; 3130 }; 3131 }; 3132 3133 etm@7240000 { 3134 compatible = "arm,coresight-etm4x", "arm,primecell"; 3135 reg = <0 0x07240000 0 0x1000>; 3136 3137 cpu = <&CPU2>; 3138 3139 clocks = <&aoss_qmp>; 3140 clock-names = "apb_pclk"; 3141 arm,coresight-loses-context-with-cpu; 3142 qcom,skip-power-up; 3143 3144 out-ports { 3145 port { 3146 etm2_out: endpoint { 3147 remote-endpoint = <&apss_funnel_in2>; 3148 }; 3149 }; 3150 }; 3151 }; 3152 3153 etm@7340000 { 3154 compatible = "arm,coresight-etm4x", "arm,primecell"; 3155 reg = <0 0x07340000 0 0x1000>; 3156 3157 cpu = <&CPU3>; 3158 3159 clocks = <&aoss_qmp>; 3160 clock-names = "apb_pclk"; 3161 arm,coresight-loses-context-with-cpu; 3162 qcom,skip-power-up; 3163 3164 out-ports { 3165 port { 3166 etm3_out: endpoint { 3167 remote-endpoint = <&apss_funnel_in3>; 3168 }; 3169 }; 3170 }; 3171 }; 3172 3173 etm@7440000 { 3174 compatible = "arm,coresight-etm4x", "arm,primecell"; 3175 reg = <0 0x07440000 0 0x1000>; 3176 3177 cpu = <&CPU4>; 3178 3179 clocks = <&aoss_qmp>; 3180 clock-names = "apb_pclk"; 3181 arm,coresight-loses-context-with-cpu; 3182 qcom,skip-power-up; 3183 3184 out-ports { 3185 port { 3186 etm4_out: endpoint { 3187 remote-endpoint = <&apss_funnel_in4>; 3188 }; 3189 }; 3190 }; 3191 }; 3192 3193 etm@7540000 { 3194 compatible = "arm,coresight-etm4x", "arm,primecell"; 3195 reg = <0 0x07540000 0 0x1000>; 3196 3197 cpu = <&CPU5>; 3198 3199 clocks = <&aoss_qmp>; 3200 clock-names = "apb_pclk"; 3201 arm,coresight-loses-context-with-cpu; 3202 qcom,skip-power-up; 3203 3204 out-ports { 3205 port { 3206 etm5_out: endpoint { 3207 remote-endpoint = <&apss_funnel_in5>; 3208 }; 3209 }; 3210 }; 3211 }; 3212 3213 etm@7640000 { 3214 compatible = "arm,coresight-etm4x", "arm,primecell"; 3215 reg = <0 0x07640000 0 0x1000>; 3216 3217 cpu = <&CPU6>; 3218 3219 clocks = <&aoss_qmp>; 3220 clock-names = "apb_pclk"; 3221 arm,coresight-loses-context-with-cpu; 3222 qcom,skip-power-up; 3223 3224 out-ports { 3225 port { 3226 etm6_out: endpoint { 3227 remote-endpoint = <&apss_funnel_in6>; 3228 }; 3229 }; 3230 }; 3231 }; 3232 3233 etm@7740000 { 3234 compatible = "arm,coresight-etm4x", "arm,primecell"; 3235 reg = <0 0x07740000 0 0x1000>; 3236 3237 cpu = <&CPU7>; 3238 3239 clocks = <&aoss_qmp>; 3240 clock-names = "apb_pclk"; 3241 arm,coresight-loses-context-with-cpu; 3242 qcom,skip-power-up; 3243 3244 out-ports { 3245 port { 3246 etm7_out: endpoint { 3247 remote-endpoint = <&apss_funnel_in7>; 3248 }; 3249 }; 3250 }; 3251 }; 3252 3253 funnel@7800000 { /* APSS Funnel */ 3254 compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 3255 reg = <0 0x07800000 0 0x1000>; 3256 3257 clocks = <&aoss_qmp>; 3258 clock-names = "apb_pclk"; 3259 3260 out-ports { 3261 port { 3262 apss_funnel_out: endpoint { 3263 remote-endpoint = <&apss_merge_funnel_in>; 3264 }; 3265 }; 3266 }; 3267 3268 in-ports { 3269 #address-cells = <1>; 3270 #size-cells = <0>; 3271 3272 port@0 { 3273 reg = <0>; 3274 apss_funnel_in0: endpoint { 3275 remote-endpoint = <&etm0_out>; 3276 }; 3277 }; 3278 3279 port@1 { 3280 reg = <1>; 3281 apss_funnel_in1: endpoint { 3282 remote-endpoint = <&etm1_out>; 3283 }; 3284 }; 3285 3286 port@2 { 3287 reg = <2>; 3288 apss_funnel_in2: endpoint { 3289 remote-endpoint = <&etm2_out>; 3290 }; 3291 }; 3292 3293 port@3 { 3294 reg = <3>; 3295 apss_funnel_in3: endpoint { 3296 remote-endpoint = <&etm3_out>; 3297 }; 3298 }; 3299 3300 port@4 { 3301 reg = <4>; 3302 apss_funnel_in4: endpoint { 3303 remote-endpoint = <&etm4_out>; 3304 }; 3305 }; 3306 3307 port@5 { 3308 reg = <5>; 3309 apss_funnel_in5: endpoint { 3310 remote-endpoint = <&etm5_out>; 3311 }; 3312 }; 3313 3314 port@6 { 3315 reg = <6>; 3316 apss_funnel_in6: endpoint { 3317 remote-endpoint = <&etm6_out>; 3318 }; 3319 }; 3320 3321 port@7 { 3322 reg = <7>; 3323 apss_funnel_in7: endpoint { 3324 remote-endpoint = <&etm7_out>; 3325 }; 3326 }; 3327 }; 3328 }; 3329 3330 funnel@7810000 { 3331 compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 3332 reg = <0 0x07810000 0 0x1000>; 3333 3334 clocks = <&aoss_qmp>; 3335 clock-names = "apb_pclk"; 3336 3337 out-ports { 3338 port { 3339 apss_merge_funnel_out: endpoint { 3340 remote-endpoint = <&funnel2_in2>; 3341 }; 3342 }; 3343 }; 3344 3345 in-ports { 3346 port { 3347 apss_merge_funnel_in: endpoint { 3348 remote-endpoint = <&apss_funnel_out>; 3349 }; 3350 }; 3351 }; 3352 }; 3353 3354 remoteproc_cdsp: remoteproc@8300000 { 3355 compatible = "qcom,sm8150-cdsp-pas"; 3356 reg = <0x0 0x08300000 0x0 0x4040>; 3357 3358 interrupts-extended = <&intc GIC_SPI 578 IRQ_TYPE_EDGE_RISING>, 3359 <&cdsp_smp2p_in 0 IRQ_TYPE_EDGE_RISING>, 3360 <&cdsp_smp2p_in 1 IRQ_TYPE_EDGE_RISING>, 3361 <&cdsp_smp2p_in 2 IRQ_TYPE_EDGE_RISING>, 3362 <&cdsp_smp2p_in 3 IRQ_TYPE_EDGE_RISING>; 3363 interrupt-names = "wdog", "fatal", "ready", 3364 "handover", "stop-ack"; 3365 3366 clocks = <&rpmhcc RPMH_CXO_CLK>; 3367 clock-names = "xo"; 3368 3369 power-domains = <&rpmhpd 7>; 3370 3371 memory-region = <&cdsp_mem>; 3372 3373 qcom,qmp = <&aoss_qmp>; 3374 3375 qcom,smem-states = <&cdsp_smp2p_out 0>; 3376 qcom,smem-state-names = "stop"; 3377 3378 status = "disabled"; 3379 3380 glink-edge { 3381 interrupts = <GIC_SPI 574 IRQ_TYPE_EDGE_RISING>; 3382 label = "cdsp"; 3383 qcom,remote-pid = <5>; 3384 mboxes = <&apss_shared 4>; 3385 3386 fastrpc { 3387 compatible = "qcom,fastrpc"; 3388 qcom,glink-channels = "fastrpcglink-apps-dsp"; 3389 label = "cdsp"; 3390 qcom,non-secure-domain; 3391 #address-cells = <1>; 3392 #size-cells = <0>; 3393 3394 compute-cb@1 { 3395 compatible = "qcom,fastrpc-compute-cb"; 3396 reg = <1>; 3397 iommus = <&apps_smmu 0x1401 0x2040>, 3398 <&apps_smmu 0x1421 0x0>, 3399 <&apps_smmu 0x2001 0x420>, 3400 <&apps_smmu 0x2041 0x0>; 3401 }; 3402 3403 compute-cb@2 { 3404 compatible = "qcom,fastrpc-compute-cb"; 3405 reg = <2>; 3406 iommus = <&apps_smmu 0x2 0x3440>, 3407 <&apps_smmu 0x22 0x3400>; 3408 }; 3409 3410 compute-cb@3 { 3411 compatible = "qcom,fastrpc-compute-cb"; 3412 reg = <3>; 3413 iommus = <&apps_smmu 0x3 0x3440>, 3414 <&apps_smmu 0x1423 0x0>, 3415 <&apps_smmu 0x2023 0x0>; 3416 }; 3417 3418 compute-cb@4 { 3419 compatible = "qcom,fastrpc-compute-cb"; 3420 reg = <4>; 3421 iommus = <&apps_smmu 0x4 0x3440>, 3422 <&apps_smmu 0x24 0x3400>; 3423 }; 3424 3425 compute-cb@5 { 3426 compatible = "qcom,fastrpc-compute-cb"; 3427 reg = <5>; 3428 iommus = <&apps_smmu 0x5 0x3440>, 3429 <&apps_smmu 0x25 0x3400>; 3430 }; 3431 3432 compute-cb@6 { 3433 compatible = "qcom,fastrpc-compute-cb"; 3434 reg = <6>; 3435 iommus = <&apps_smmu 0x6 0x3460>; 3436 }; 3437 3438 compute-cb@7 { 3439 compatible = "qcom,fastrpc-compute-cb"; 3440 reg = <7>; 3441 iommus = <&apps_smmu 0x7 0x3460>; 3442 }; 3443 3444 compute-cb@8 { 3445 compatible = "qcom,fastrpc-compute-cb"; 3446 reg = <8>; 3447 iommus = <&apps_smmu 0x8 0x3460>; 3448 }; 3449 3450 /* note: secure cb9 in downstream */ 3451 }; 3452 }; 3453 }; 3454 3455 usb_1_hsphy: phy@88e2000 { 3456 compatible = "qcom,sm8150-usb-hs-phy", 3457 "qcom,usb-snps-hs-7nm-phy"; 3458 reg = <0 0x088e2000 0 0x400>; 3459 status = "disabled"; 3460 #phy-cells = <0>; 3461 3462 clocks = <&rpmhcc RPMH_CXO_CLK>; 3463 clock-names = "ref"; 3464 3465 resets = <&gcc GCC_QUSB2PHY_PRIM_BCR>; 3466 }; 3467 3468 usb_2_hsphy: phy@88e3000 { 3469 compatible = "qcom,sm8150-usb-hs-phy", 3470 "qcom,usb-snps-hs-7nm-phy"; 3471 reg = <0 0x088e3000 0 0x400>; 3472 status = "disabled"; 3473 #phy-cells = <0>; 3474 3475 clocks = <&rpmhcc RPMH_CXO_CLK>; 3476 clock-names = "ref"; 3477 3478 resets = <&gcc GCC_QUSB2PHY_SEC_BCR>; 3479 }; 3480 3481 usb_1_qmpphy: phy@88e9000 { 3482 compatible = "qcom,sm8150-qmp-usb3-phy"; 3483 reg = <0 0x088e9000 0 0x18c>, 3484 <0 0x088e8000 0 0x10>; 3485 status = "disabled"; 3486 #address-cells = <2>; 3487 #size-cells = <2>; 3488 ranges; 3489 3490 clocks = <&gcc GCC_USB3_PRIM_PHY_AUX_CLK>, 3491 <&rpmhcc RPMH_CXO_CLK>, 3492 <&gcc GCC_USB3_PRIM_CLKREF_CLK>, 3493 <&gcc GCC_USB3_PRIM_PHY_COM_AUX_CLK>; 3494 clock-names = "aux", "ref_clk_src", "ref", "com_aux"; 3495 3496 resets = <&gcc GCC_USB3_DP_PHY_PRIM_BCR>, 3497 <&gcc GCC_USB3_PHY_PRIM_BCR>; 3498 reset-names = "phy", "common"; 3499 3500 usb_1_ssphy: phy@88e9200 { 3501 reg = <0 0x088e9200 0 0x200>, 3502 <0 0x088e9400 0 0x200>, 3503 <0 0x088e9c00 0 0x218>, 3504 <0 0x088e9600 0 0x200>, 3505 <0 0x088e9800 0 0x200>, 3506 <0 0x088e9a00 0 0x100>; 3507 #clock-cells = <0>; 3508 #phy-cells = <0>; 3509 clocks = <&gcc GCC_USB3_PRIM_PHY_PIPE_CLK>; 3510 clock-names = "pipe0"; 3511 clock-output-names = "usb3_phy_pipe_clk_src"; 3512 }; 3513 }; 3514 3515 usb_2_qmpphy: phy@88eb000 { 3516 compatible = "qcom,sm8150-qmp-usb3-uni-phy"; 3517 reg = <0 0x088eb000 0 0x200>; 3518 status = "disabled"; 3519 #address-cells = <2>; 3520 #size-cells = <2>; 3521 ranges; 3522 3523 clocks = <&gcc GCC_USB3_SEC_PHY_AUX_CLK>, 3524 <&rpmhcc RPMH_CXO_CLK>, 3525 <&gcc GCC_USB3_SEC_CLKREF_CLK>, 3526 <&gcc GCC_USB3_SEC_PHY_COM_AUX_CLK>; 3527 clock-names = "aux", "ref_clk_src", "ref", "com_aux"; 3528 3529 resets = <&gcc GCC_USB3PHY_PHY_SEC_BCR>, 3530 <&gcc GCC_USB3_PHY_SEC_BCR>; 3531 reset-names = "phy", "common"; 3532 3533 usb_2_ssphy: phy@88eb200 { 3534 reg = <0 0x088eb200 0 0x200>, 3535 <0 0x088eb400 0 0x200>, 3536 <0 0x088eb800 0 0x800>, 3537 <0 0x088eb600 0 0x200>; 3538 #clock-cells = <0>; 3539 #phy-cells = <0>; 3540 clocks = <&gcc GCC_USB3_SEC_PHY_PIPE_CLK>; 3541 clock-names = "pipe0"; 3542 clock-output-names = "usb3_uni_phy_pipe_clk_src"; 3543 }; 3544 }; 3545 3546 sdhc_2: sdhci@8804000 { 3547 compatible = "qcom,sm8150-sdhci", "qcom,sdhci-msm-v5"; 3548 reg = <0 0x08804000 0 0x1000>; 3549 3550 interrupts = <GIC_SPI 204 IRQ_TYPE_LEVEL_HIGH>, 3551 <GIC_SPI 222 IRQ_TYPE_LEVEL_HIGH>; 3552 interrupt-names = "hc_irq", "pwr_irq"; 3553 3554 clocks = <&gcc GCC_SDCC2_AHB_CLK>, 3555 <&gcc GCC_SDCC2_APPS_CLK>, 3556 <&rpmhcc RPMH_CXO_CLK>; 3557 clock-names = "iface", "core", "xo"; 3558 iommus = <&apps_smmu 0x6a0 0x0>; 3559 qcom,dll-config = <0x0007642c>; 3560 qcom,ddr-config = <0x80040868>; 3561 power-domains = <&rpmhpd 0>; 3562 operating-points-v2 = <&sdhc2_opp_table>; 3563 3564 status = "disabled"; 3565 3566 sdhc2_opp_table: sdhc2-opp-table { 3567 compatible = "operating-points-v2"; 3568 3569 opp-19200000 { 3570 opp-hz = /bits/ 64 <19200000>; 3571 required-opps = <&rpmhpd_opp_min_svs>; 3572 }; 3573 3574 opp-50000000 { 3575 opp-hz = /bits/ 64 <50000000>; 3576 required-opps = <&rpmhpd_opp_low_svs>; 3577 }; 3578 3579 opp-100000000 { 3580 opp-hz = /bits/ 64 <100000000>; 3581 required-opps = <&rpmhpd_opp_svs>; 3582 }; 3583 3584 opp-202000000 { 3585 opp-hz = /bits/ 64 <202000000>; 3586 required-opps = <&rpmhpd_opp_svs_l1>; 3587 }; 3588 }; 3589 }; 3590 3591 dc_noc: interconnect@9160000 { 3592 compatible = "qcom,sm8150-dc-noc"; 3593 reg = <0 0x09160000 0 0x3200>; 3594 #interconnect-cells = <1>; 3595 qcom,bcm-voters = <&apps_bcm_voter>; 3596 }; 3597 3598 gem_noc: interconnect@9680000 { 3599 compatible = "qcom,sm8150-gem-noc"; 3600 reg = <0 0x09680000 0 0x3e200>; 3601 #interconnect-cells = <1>; 3602 qcom,bcm-voters = <&apps_bcm_voter>; 3603 }; 3604 3605 usb_1: usb@a6f8800 { 3606 compatible = "qcom,sm8150-dwc3", "qcom,dwc3"; 3607 reg = <0 0x0a6f8800 0 0x400>; 3608 status = "disabled"; 3609 #address-cells = <2>; 3610 #size-cells = <2>; 3611 ranges; 3612 dma-ranges; 3613 3614 clocks = <&gcc GCC_CFG_NOC_USB3_PRIM_AXI_CLK>, 3615 <&gcc GCC_USB30_PRIM_MASTER_CLK>, 3616 <&gcc GCC_AGGRE_USB3_PRIM_AXI_CLK>, 3617 <&gcc GCC_USB30_PRIM_SLEEP_CLK>, 3618 <&gcc GCC_USB30_PRIM_MOCK_UTMI_CLK>, 3619 <&gcc GCC_USB3_SEC_CLKREF_CLK>; 3620 clock-names = "cfg_noc", 3621 "core", 3622 "iface", 3623 "sleep", 3624 "mock_utmi", 3625 "xo"; 3626 3627 assigned-clocks = <&gcc GCC_USB30_PRIM_MOCK_UTMI_CLK>, 3628 <&gcc GCC_USB30_PRIM_MASTER_CLK>; 3629 assigned-clock-rates = <19200000>, <200000000>; 3630 3631 interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>, 3632 <GIC_SPI 486 IRQ_TYPE_LEVEL_HIGH>, 3633 <GIC_SPI 488 IRQ_TYPE_LEVEL_HIGH>, 3634 <GIC_SPI 489 IRQ_TYPE_LEVEL_HIGH>; 3635 interrupt-names = "hs_phy_irq", "ss_phy_irq", 3636 "dm_hs_phy_irq", "dp_hs_phy_irq"; 3637 3638 power-domains = <&gcc USB30_PRIM_GDSC>; 3639 3640 resets = <&gcc GCC_USB30_PRIM_BCR>; 3641 3642 usb_1_dwc3: usb@a600000 { 3643 compatible = "snps,dwc3"; 3644 reg = <0 0x0a600000 0 0xcd00>; 3645 interrupts = <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>; 3646 iommus = <&apps_smmu 0x140 0>; 3647 snps,dis_u2_susphy_quirk; 3648 snps,dis_enblslpm_quirk; 3649 phys = <&usb_1_hsphy>, <&usb_1_ssphy>; 3650 phy-names = "usb2-phy", "usb3-phy"; 3651 }; 3652 }; 3653 3654 usb_2: usb@a8f8800 { 3655 compatible = "qcom,sm8150-dwc3", "qcom,dwc3"; 3656 reg = <0 0x0a8f8800 0 0x400>; 3657 status = "disabled"; 3658 #address-cells = <2>; 3659 #size-cells = <2>; 3660 ranges; 3661 dma-ranges; 3662 3663 clocks = <&gcc GCC_CFG_NOC_USB3_SEC_AXI_CLK>, 3664 <&gcc GCC_USB30_SEC_MASTER_CLK>, 3665 <&gcc GCC_AGGRE_USB3_SEC_AXI_CLK>, 3666 <&gcc GCC_USB30_SEC_SLEEP_CLK>, 3667 <&gcc GCC_USB30_SEC_MOCK_UTMI_CLK>, 3668 <&gcc GCC_USB3_SEC_CLKREF_CLK>; 3669 clock-names = "cfg_noc", 3670 "core", 3671 "iface", 3672 "sleep", 3673 "mock_utmi", 3674 "xo"; 3675 3676 assigned-clocks = <&gcc GCC_USB30_SEC_MOCK_UTMI_CLK>, 3677 <&gcc GCC_USB30_SEC_MASTER_CLK>; 3678 assigned-clock-rates = <19200000>, <200000000>; 3679 3680 interrupts = <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>, 3681 <GIC_SPI 487 IRQ_TYPE_LEVEL_HIGH>, 3682 <GIC_SPI 490 IRQ_TYPE_LEVEL_HIGH>, 3683 <GIC_SPI 491 IRQ_TYPE_LEVEL_HIGH>; 3684 interrupt-names = "hs_phy_irq", "ss_phy_irq", 3685 "dm_hs_phy_irq", "dp_hs_phy_irq"; 3686 3687 power-domains = <&gcc USB30_SEC_GDSC>; 3688 3689 resets = <&gcc GCC_USB30_SEC_BCR>; 3690 3691 usb_2_dwc3: usb@a800000 { 3692 compatible = "snps,dwc3"; 3693 reg = <0 0x0a800000 0 0xcd00>; 3694 interrupts = <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>; 3695 iommus = <&apps_smmu 0x160 0>; 3696 snps,dis_u2_susphy_quirk; 3697 snps,dis_enblslpm_quirk; 3698 phys = <&usb_2_hsphy>, <&usb_2_ssphy>; 3699 phy-names = "usb2-phy", "usb3-phy"; 3700 }; 3701 }; 3702 3703 camnoc_virt: interconnect@ac00000 { 3704 compatible = "qcom,sm8150-camnoc-virt"; 3705 reg = <0 0x0ac00000 0 0x1000>; 3706 #interconnect-cells = <1>; 3707 qcom,bcm-voters = <&apps_bcm_voter>; 3708 }; 3709 3710 pdc: interrupt-controller@b220000 { 3711 compatible = "qcom,sm8150-pdc", "qcom,pdc"; 3712 reg = <0 0x0b220000 0 0x400>; 3713 qcom,pdc-ranges = <0 480 94>, <94 609 31>, 3714 <125 63 1>; 3715 #interrupt-cells = <2>; 3716 interrupt-parent = <&intc>; 3717 interrupt-controller; 3718 }; 3719 3720 aoss_qmp: power-controller@c300000 { 3721 compatible = "qcom,sm8150-aoss-qmp"; 3722 reg = <0x0 0x0c300000 0x0 0x400>; 3723 interrupts = <GIC_SPI 389 IRQ_TYPE_EDGE_RISING>; 3724 mboxes = <&apss_shared 0>; 3725 3726 #clock-cells = <0>; 3727 }; 3728 3729 sram@c3f0000 { 3730 compatible = "qcom,rpmh-stats"; 3731 reg = <0 0x0c3f0000 0 0x400>; 3732 }; 3733 3734 tsens0: thermal-sensor@c263000 { 3735 compatible = "qcom,sm8150-tsens", "qcom,tsens-v2"; 3736 reg = <0 0x0c263000 0 0x1ff>, /* TM */ 3737 <0 0x0c222000 0 0x1ff>; /* SROT */ 3738 #qcom,sensors = <16>; 3739 interrupts = <GIC_SPI 506 IRQ_TYPE_LEVEL_HIGH>, 3740 <GIC_SPI 508 IRQ_TYPE_LEVEL_HIGH>; 3741 interrupt-names = "uplow", "critical"; 3742 #thermal-sensor-cells = <1>; 3743 }; 3744 3745 tsens1: thermal-sensor@c265000 { 3746 compatible = "qcom,sm8150-tsens", "qcom,tsens-v2"; 3747 reg = <0 0x0c265000 0 0x1ff>, /* TM */ 3748 <0 0x0c223000 0 0x1ff>; /* SROT */ 3749 #qcom,sensors = <8>; 3750 interrupts = <GIC_SPI 507 IRQ_TYPE_LEVEL_HIGH>, 3751 <GIC_SPI 509 IRQ_TYPE_LEVEL_HIGH>; 3752 interrupt-names = "uplow", "critical"; 3753 #thermal-sensor-cells = <1>; 3754 }; 3755 3756 spmi_bus: spmi@c440000 { 3757 compatible = "qcom,spmi-pmic-arb"; 3758 reg = <0x0 0x0c440000 0x0 0x0001100>, 3759 <0x0 0x0c600000 0x0 0x2000000>, 3760 <0x0 0x0e600000 0x0 0x0100000>, 3761 <0x0 0x0e700000 0x0 0x00a0000>, 3762 <0x0 0x0c40a000 0x0 0x0026000>; 3763 reg-names = "core", "chnls", "obsrvr", "intr", "cnfg"; 3764 interrupt-names = "periph_irq"; 3765 interrupts = <GIC_SPI 481 IRQ_TYPE_LEVEL_HIGH>; 3766 qcom,ee = <0>; 3767 qcom,channel = <0>; 3768 #address-cells = <2>; 3769 #size-cells = <0>; 3770 interrupt-controller; 3771 #interrupt-cells = <4>; 3772 cell-index = <0>; 3773 }; 3774 3775 apps_smmu: iommu@15000000 { 3776 compatible = "qcom,sm8150-smmu-500", "arm,mmu-500"; 3777 reg = <0 0x15000000 0 0x100000>; 3778 #iommu-cells = <2>; 3779 #global-interrupts = <1>; 3780 interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>, 3781 <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>, 3782 <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>, 3783 <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>, 3784 <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>, 3785 <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>, 3786 <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>, 3787 <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>, 3788 <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>, 3789 <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>, 3790 <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>, 3791 <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>, 3792 <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>, 3793 <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>, 3794 <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>, 3795 <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>, 3796 <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>, 3797 <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>, 3798 <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>, 3799 <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>, 3800 <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>, 3801 <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>, 3802 <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>, 3803 <GIC_SPI 181 IRQ_TYPE_LEVEL_HIGH>, 3804 <GIC_SPI 182 IRQ_TYPE_LEVEL_HIGH>, 3805 <GIC_SPI 183 IRQ_TYPE_LEVEL_HIGH>, 3806 <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>, 3807 <GIC_SPI 185 IRQ_TYPE_LEVEL_HIGH>, 3808 <GIC_SPI 186 IRQ_TYPE_LEVEL_HIGH>, 3809 <GIC_SPI 187 IRQ_TYPE_LEVEL_HIGH>, 3810 <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>, 3811 <GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH>, 3812 <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>, 3813 <GIC_SPI 191 IRQ_TYPE_LEVEL_HIGH>, 3814 <GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH>, 3815 <GIC_SPI 315 IRQ_TYPE_LEVEL_HIGH>, 3816 <GIC_SPI 316 IRQ_TYPE_LEVEL_HIGH>, 3817 <GIC_SPI 317 IRQ_TYPE_LEVEL_HIGH>, 3818 <GIC_SPI 318 IRQ_TYPE_LEVEL_HIGH>, 3819 <GIC_SPI 319 IRQ_TYPE_LEVEL_HIGH>, 3820 <GIC_SPI 320 IRQ_TYPE_LEVEL_HIGH>, 3821 <GIC_SPI 321 IRQ_TYPE_LEVEL_HIGH>, 3822 <GIC_SPI 322 IRQ_TYPE_LEVEL_HIGH>, 3823 <GIC_SPI 323 IRQ_TYPE_LEVEL_HIGH>, 3824 <GIC_SPI 324 IRQ_TYPE_LEVEL_HIGH>, 3825 <GIC_SPI 325 IRQ_TYPE_LEVEL_HIGH>, 3826 <GIC_SPI 326 IRQ_TYPE_LEVEL_HIGH>, 3827 <GIC_SPI 327 IRQ_TYPE_LEVEL_HIGH>, 3828 <GIC_SPI 328 IRQ_TYPE_LEVEL_HIGH>, 3829 <GIC_SPI 329 IRQ_TYPE_LEVEL_HIGH>, 3830 <GIC_SPI 330 IRQ_TYPE_LEVEL_HIGH>, 3831 <GIC_SPI 331 IRQ_TYPE_LEVEL_HIGH>, 3832 <GIC_SPI 332 IRQ_TYPE_LEVEL_HIGH>, 3833 <GIC_SPI 333 IRQ_TYPE_LEVEL_HIGH>, 3834 <GIC_SPI 334 IRQ_TYPE_LEVEL_HIGH>, 3835 <GIC_SPI 335 IRQ_TYPE_LEVEL_HIGH>, 3836 <GIC_SPI 336 IRQ_TYPE_LEVEL_HIGH>, 3837 <GIC_SPI 337 IRQ_TYPE_LEVEL_HIGH>, 3838 <GIC_SPI 338 IRQ_TYPE_LEVEL_HIGH>, 3839 <GIC_SPI 339 IRQ_TYPE_LEVEL_HIGH>, 3840 <GIC_SPI 340 IRQ_TYPE_LEVEL_HIGH>, 3841 <GIC_SPI 341 IRQ_TYPE_LEVEL_HIGH>, 3842 <GIC_SPI 342 IRQ_TYPE_LEVEL_HIGH>, 3843 <GIC_SPI 343 IRQ_TYPE_LEVEL_HIGH>, 3844 <GIC_SPI 344 IRQ_TYPE_LEVEL_HIGH>, 3845 <GIC_SPI 345 IRQ_TYPE_LEVEL_HIGH>, 3846 <GIC_SPI 395 IRQ_TYPE_LEVEL_HIGH>, 3847 <GIC_SPI 396 IRQ_TYPE_LEVEL_HIGH>, 3848 <GIC_SPI 397 IRQ_TYPE_LEVEL_HIGH>, 3849 <GIC_SPI 398 IRQ_TYPE_LEVEL_HIGH>, 3850 <GIC_SPI 399 IRQ_TYPE_LEVEL_HIGH>, 3851 <GIC_SPI 400 IRQ_TYPE_LEVEL_HIGH>, 3852 <GIC_SPI 401 IRQ_TYPE_LEVEL_HIGH>, 3853 <GIC_SPI 402 IRQ_TYPE_LEVEL_HIGH>, 3854 <GIC_SPI 403 IRQ_TYPE_LEVEL_HIGH>, 3855 <GIC_SPI 404 IRQ_TYPE_LEVEL_HIGH>, 3856 <GIC_SPI 405 IRQ_TYPE_LEVEL_HIGH>, 3857 <GIC_SPI 406 IRQ_TYPE_LEVEL_HIGH>, 3858 <GIC_SPI 407 IRQ_TYPE_LEVEL_HIGH>, 3859 <GIC_SPI 408 IRQ_TYPE_LEVEL_HIGH>, 3860 <GIC_SPI 409 IRQ_TYPE_LEVEL_HIGH>; 3861 }; 3862 3863 remoteproc_adsp: remoteproc@17300000 { 3864 compatible = "qcom,sm8150-adsp-pas"; 3865 reg = <0x0 0x17300000 0x0 0x4040>; 3866 3867 interrupts-extended = <&intc GIC_SPI 162 IRQ_TYPE_EDGE_RISING>, 3868 <&adsp_smp2p_in 0 IRQ_TYPE_EDGE_RISING>, 3869 <&adsp_smp2p_in 1 IRQ_TYPE_EDGE_RISING>, 3870 <&adsp_smp2p_in 2 IRQ_TYPE_EDGE_RISING>, 3871 <&adsp_smp2p_in 3 IRQ_TYPE_EDGE_RISING>; 3872 interrupt-names = "wdog", "fatal", "ready", 3873 "handover", "stop-ack"; 3874 3875 clocks = <&rpmhcc RPMH_CXO_CLK>; 3876 clock-names = "xo"; 3877 3878 power-domains = <&rpmhpd 7>; 3879 3880 memory-region = <&adsp_mem>; 3881 3882 qcom,qmp = <&aoss_qmp>; 3883 3884 qcom,smem-states = <&adsp_smp2p_out 0>; 3885 qcom,smem-state-names = "stop"; 3886 3887 status = "disabled"; 3888 3889 glink-edge { 3890 interrupts = <GIC_SPI 156 IRQ_TYPE_EDGE_RISING>; 3891 label = "lpass"; 3892 qcom,remote-pid = <2>; 3893 mboxes = <&apss_shared 8>; 3894 3895 fastrpc { 3896 compatible = "qcom,fastrpc"; 3897 qcom,glink-channels = "fastrpcglink-apps-dsp"; 3898 label = "adsp"; 3899 qcom,non-secure-domain; 3900 #address-cells = <1>; 3901 #size-cells = <0>; 3902 3903 compute-cb@3 { 3904 compatible = "qcom,fastrpc-compute-cb"; 3905 reg = <3>; 3906 iommus = <&apps_smmu 0x1b23 0x0>; 3907 }; 3908 3909 compute-cb@4 { 3910 compatible = "qcom,fastrpc-compute-cb"; 3911 reg = <4>; 3912 iommus = <&apps_smmu 0x1b24 0x0>; 3913 }; 3914 3915 compute-cb@5 { 3916 compatible = "qcom,fastrpc-compute-cb"; 3917 reg = <5>; 3918 iommus = <&apps_smmu 0x1b25 0x0>; 3919 }; 3920 }; 3921 }; 3922 }; 3923 3924 intc: interrupt-controller@17a00000 { 3925 compatible = "arm,gic-v3"; 3926 interrupt-controller; 3927 #interrupt-cells = <3>; 3928 reg = <0x0 0x17a00000 0x0 0x10000>, /* GICD */ 3929 <0x0 0x17a60000 0x0 0x100000>; /* GICR * 8 */ 3930 interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>; 3931 }; 3932 3933 apss_shared: mailbox@17c00000 { 3934 compatible = "qcom,sm8150-apss-shared"; 3935 reg = <0x0 0x17c00000 0x0 0x1000>; 3936 #mbox-cells = <1>; 3937 }; 3938 3939 watchdog@17c10000 { 3940 compatible = "qcom,apss-wdt-sm8150", "qcom,kpss-wdt"; 3941 reg = <0 0x17c10000 0 0x1000>; 3942 clocks = <&sleep_clk>; 3943 interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>; 3944 }; 3945 3946 timer@17c20000 { 3947 #address-cells = <2>; 3948 #size-cells = <2>; 3949 ranges; 3950 compatible = "arm,armv7-timer-mem"; 3951 reg = <0x0 0x17c20000 0x0 0x1000>; 3952 clock-frequency = <19200000>; 3953 3954 frame@17c21000{ 3955 frame-number = <0>; 3956 interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>, 3957 <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>; 3958 reg = <0x0 0x17c21000 0x0 0x1000>, 3959 <0x0 0x17c22000 0x0 0x1000>; 3960 }; 3961 3962 frame@17c23000 { 3963 frame-number = <1>; 3964 interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>; 3965 reg = <0x0 0x17c23000 0x0 0x1000>; 3966 status = "disabled"; 3967 }; 3968 3969 frame@17c25000 { 3970 frame-number = <2>; 3971 interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>; 3972 reg = <0x0 0x17c25000 0x0 0x1000>; 3973 status = "disabled"; 3974 }; 3975 3976 frame@17c27000 { 3977 frame-number = <3>; 3978 interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>; 3979 reg = <0x0 0x17c26000 0x0 0x1000>; 3980 status = "disabled"; 3981 }; 3982 3983 frame@17c29000 { 3984 frame-number = <4>; 3985 interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>; 3986 reg = <0x0 0x17c29000 0x0 0x1000>; 3987 status = "disabled"; 3988 }; 3989 3990 frame@17c2b000 { 3991 frame-number = <5>; 3992 interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>; 3993 reg = <0x0 0x17c2b000 0x0 0x1000>; 3994 status = "disabled"; 3995 }; 3996 3997 frame@17c2d000 { 3998 frame-number = <6>; 3999 interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>; 4000 reg = <0x0 0x17c2d000 0x0 0x1000>; 4001 status = "disabled"; 4002 }; 4003 }; 4004 4005 apps_rsc: rsc@18200000 { 4006 label = "apps_rsc"; 4007 compatible = "qcom,rpmh-rsc"; 4008 reg = <0x0 0x18200000 0x0 0x10000>, 4009 <0x0 0x18210000 0x0 0x10000>, 4010 <0x0 0x18220000 0x0 0x10000>; 4011 reg-names = "drv-0", "drv-1", "drv-2"; 4012 interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>, 4013 <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>, 4014 <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>; 4015 qcom,tcs-offset = <0xd00>; 4016 qcom,drv-id = <2>; 4017 qcom,tcs-config = <ACTIVE_TCS 2>, 4018 <SLEEP_TCS 3>, 4019 <WAKE_TCS 3>, 4020 <CONTROL_TCS 1>; 4021 4022 rpmhcc: clock-controller { 4023 compatible = "qcom,sm8150-rpmh-clk"; 4024 #clock-cells = <1>; 4025 clock-names = "xo"; 4026 clocks = <&xo_board>; 4027 }; 4028 4029 rpmhpd: power-controller { 4030 compatible = "qcom,sm8150-rpmhpd"; 4031 #power-domain-cells = <1>; 4032 operating-points-v2 = <&rpmhpd_opp_table>; 4033 4034 rpmhpd_opp_table: opp-table { 4035 compatible = "operating-points-v2"; 4036 4037 rpmhpd_opp_ret: opp1 { 4038 opp-level = <RPMH_REGULATOR_LEVEL_RETENTION>; 4039 }; 4040 4041 rpmhpd_opp_min_svs: opp2 { 4042 opp-level = <RPMH_REGULATOR_LEVEL_MIN_SVS>; 4043 }; 4044 4045 rpmhpd_opp_low_svs: opp3 { 4046 opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS>; 4047 }; 4048 4049 rpmhpd_opp_svs: opp4 { 4050 opp-level = <RPMH_REGULATOR_LEVEL_SVS>; 4051 }; 4052 4053 rpmhpd_opp_svs_l1: opp5 { 4054 opp-level = <RPMH_REGULATOR_LEVEL_SVS_L1>; 4055 }; 4056 4057 rpmhpd_opp_svs_l2: opp6 { 4058 opp-level = <224>; 4059 }; 4060 4061 rpmhpd_opp_nom: opp7 { 4062 opp-level = <RPMH_REGULATOR_LEVEL_NOM>; 4063 }; 4064 4065 rpmhpd_opp_nom_l1: opp8 { 4066 opp-level = <RPMH_REGULATOR_LEVEL_NOM_L1>; 4067 }; 4068 4069 rpmhpd_opp_nom_l2: opp9 { 4070 opp-level = <RPMH_REGULATOR_LEVEL_NOM_L2>; 4071 }; 4072 4073 rpmhpd_opp_turbo: opp10 { 4074 opp-level = <RPMH_REGULATOR_LEVEL_TURBO>; 4075 }; 4076 4077 rpmhpd_opp_turbo_l1: opp11 { 4078 opp-level = <RPMH_REGULATOR_LEVEL_TURBO_L1>; 4079 }; 4080 }; 4081 }; 4082 4083 apps_bcm_voter: bcm-voter { 4084 compatible = "qcom,bcm-voter"; 4085 }; 4086 }; 4087 4088 osm_l3: interconnect@18321000 { 4089 compatible = "qcom,sm8150-osm-l3"; 4090 reg = <0 0x18321000 0 0x1400>; 4091 4092 clocks = <&rpmhcc RPMH_CXO_CLK>, <&gcc GPLL0>; 4093 clock-names = "xo", "alternate"; 4094 4095 #interconnect-cells = <1>; 4096 }; 4097 4098 cpufreq_hw: cpufreq@18323000 { 4099 compatible = "qcom,cpufreq-hw"; 4100 reg = <0 0x18323000 0 0x1400>, <0 0x18325800 0 0x1400>, 4101 <0 0x18327800 0 0x1400>; 4102 reg-names = "freq-domain0", "freq-domain1", 4103 "freq-domain2"; 4104 4105 clocks = <&rpmhcc RPMH_CXO_CLK>, <&gcc GPLL0>; 4106 clock-names = "xo", "alternate"; 4107 4108 #freq-domain-cells = <1>; 4109 }; 4110 4111 lmh_cluster1: lmh@18350800 { 4112 compatible = "qcom,sm8150-lmh"; 4113 reg = <0 0x18350800 0 0x400>; 4114 interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>; 4115 cpus = <&CPU4>; 4116 qcom,lmh-temp-arm-millicelsius = <60000>; 4117 qcom,lmh-temp-low-millicelsius = <84500>; 4118 qcom,lmh-temp-high-millicelsius = <85000>; 4119 interrupt-controller; 4120 #interrupt-cells = <1>; 4121 }; 4122 4123 lmh_cluster0: lmh@18358800 { 4124 compatible = "qcom,sm8150-lmh"; 4125 reg = <0 0x18358800 0 0x400>; 4126 interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>; 4127 cpus = <&CPU0>; 4128 qcom,lmh-temp-arm-millicelsius = <60000>; 4129 qcom,lmh-temp-low-millicelsius = <84500>; 4130 qcom,lmh-temp-high-millicelsius = <85000>; 4131 interrupt-controller; 4132 #interrupt-cells = <1>; 4133 }; 4134 4135 wifi: wifi@18800000 { 4136 compatible = "qcom,wcn3990-wifi"; 4137 reg = <0 0x18800000 0 0x800000>; 4138 reg-names = "membase"; 4139 memory-region = <&wlan_mem>; 4140 clock-names = "cxo_ref_clk_pin", "qdss"; 4141 clocks = <&rpmhcc RPMH_RF_CLK2>, <&aoss_qmp>; 4142 interrupts = <GIC_SPI 414 IRQ_TYPE_LEVEL_HIGH>, 4143 <GIC_SPI 415 IRQ_TYPE_LEVEL_HIGH>, 4144 <GIC_SPI 416 IRQ_TYPE_LEVEL_HIGH>, 4145 <GIC_SPI 417 IRQ_TYPE_LEVEL_HIGH>, 4146 <GIC_SPI 418 IRQ_TYPE_LEVEL_HIGH>, 4147 <GIC_SPI 419 IRQ_TYPE_LEVEL_HIGH>, 4148 <GIC_SPI 420 IRQ_TYPE_LEVEL_HIGH>, 4149 <GIC_SPI 421 IRQ_TYPE_LEVEL_HIGH>, 4150 <GIC_SPI 422 IRQ_TYPE_LEVEL_HIGH>, 4151 <GIC_SPI 423 IRQ_TYPE_LEVEL_HIGH>, 4152 <GIC_SPI 424 IRQ_TYPE_LEVEL_HIGH>, 4153 <GIC_SPI 425 IRQ_TYPE_LEVEL_HIGH>; 4154 iommus = <&apps_smmu 0x0640 0x1>; 4155 status = "disabled"; 4156 }; 4157 }; 4158 4159 timer { 4160 compatible = "arm,armv8-timer"; 4161 interrupts = <GIC_PPI 1 IRQ_TYPE_LEVEL_LOW>, 4162 <GIC_PPI 2 IRQ_TYPE_LEVEL_LOW>, 4163 <GIC_PPI 3 IRQ_TYPE_LEVEL_LOW>, 4164 <GIC_PPI 0 IRQ_TYPE_LEVEL_LOW>; 4165 }; 4166 4167 thermal-zones { 4168 cpu0-thermal { 4169 polling-delay-passive = <250>; 4170 polling-delay = <1000>; 4171 4172 thermal-sensors = <&tsens0 1>; 4173 4174 trips { 4175 cpu0_alert0: trip-point0 { 4176 temperature = <90000>; 4177 hysteresis = <2000>; 4178 type = "passive"; 4179 }; 4180 4181 cpu0_alert1: trip-point1 { 4182 temperature = <95000>; 4183 hysteresis = <2000>; 4184 type = "passive"; 4185 }; 4186 4187 cpu0_crit: cpu_crit { 4188 temperature = <110000>; 4189 hysteresis = <1000>; 4190 type = "critical"; 4191 }; 4192 }; 4193 4194 cooling-maps { 4195 map0 { 4196 trip = <&cpu0_alert0>; 4197 cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4198 <&CPU1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4199 <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4200 <&CPU3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 4201 }; 4202 map1 { 4203 trip = <&cpu0_alert1>; 4204 cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4205 <&CPU1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4206 <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4207 <&CPU3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 4208 }; 4209 }; 4210 }; 4211 4212 cpu1-thermal { 4213 polling-delay-passive = <250>; 4214 polling-delay = <1000>; 4215 4216 thermal-sensors = <&tsens0 2>; 4217 4218 trips { 4219 cpu1_alert0: trip-point0 { 4220 temperature = <90000>; 4221 hysteresis = <2000>; 4222 type = "passive"; 4223 }; 4224 4225 cpu1_alert1: trip-point1 { 4226 temperature = <95000>; 4227 hysteresis = <2000>; 4228 type = "passive"; 4229 }; 4230 4231 cpu1_crit: cpu_crit { 4232 temperature = <110000>; 4233 hysteresis = <1000>; 4234 type = "critical"; 4235 }; 4236 }; 4237 4238 cooling-maps { 4239 map0 { 4240 trip = <&cpu1_alert0>; 4241 cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4242 <&CPU1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4243 <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4244 <&CPU3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 4245 }; 4246 map1 { 4247 trip = <&cpu1_alert1>; 4248 cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4249 <&CPU1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4250 <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4251 <&CPU3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 4252 }; 4253 }; 4254 }; 4255 4256 cpu2-thermal { 4257 polling-delay-passive = <250>; 4258 polling-delay = <1000>; 4259 4260 thermal-sensors = <&tsens0 3>; 4261 4262 trips { 4263 cpu2_alert0: trip-point0 { 4264 temperature = <90000>; 4265 hysteresis = <2000>; 4266 type = "passive"; 4267 }; 4268 4269 cpu2_alert1: trip-point1 { 4270 temperature = <95000>; 4271 hysteresis = <2000>; 4272 type = "passive"; 4273 }; 4274 4275 cpu2_crit: cpu_crit { 4276 temperature = <110000>; 4277 hysteresis = <1000>; 4278 type = "critical"; 4279 }; 4280 }; 4281 4282 cooling-maps { 4283 map0 { 4284 trip = <&cpu2_alert0>; 4285 cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4286 <&CPU1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4287 <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4288 <&CPU3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 4289 }; 4290 map1 { 4291 trip = <&cpu2_alert1>; 4292 cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4293 <&CPU1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4294 <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4295 <&CPU3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 4296 }; 4297 }; 4298 }; 4299 4300 cpu3-thermal { 4301 polling-delay-passive = <250>; 4302 polling-delay = <1000>; 4303 4304 thermal-sensors = <&tsens0 4>; 4305 4306 trips { 4307 cpu3_alert0: trip-point0 { 4308 temperature = <90000>; 4309 hysteresis = <2000>; 4310 type = "passive"; 4311 }; 4312 4313 cpu3_alert1: trip-point1 { 4314 temperature = <95000>; 4315 hysteresis = <2000>; 4316 type = "passive"; 4317 }; 4318 4319 cpu3_crit: cpu_crit { 4320 temperature = <110000>; 4321 hysteresis = <1000>; 4322 type = "critical"; 4323 }; 4324 }; 4325 4326 cooling-maps { 4327 map0 { 4328 trip = <&cpu3_alert0>; 4329 cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4330 <&CPU1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4331 <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4332 <&CPU3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 4333 }; 4334 map1 { 4335 trip = <&cpu3_alert1>; 4336 cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4337 <&CPU1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4338 <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4339 <&CPU3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 4340 }; 4341 }; 4342 }; 4343 4344 cpu4-top-thermal { 4345 polling-delay-passive = <250>; 4346 polling-delay = <1000>; 4347 4348 thermal-sensors = <&tsens0 7>; 4349 4350 trips { 4351 cpu4_top_alert0: trip-point0 { 4352 temperature = <90000>; 4353 hysteresis = <2000>; 4354 type = "passive"; 4355 }; 4356 4357 cpu4_top_alert1: trip-point1 { 4358 temperature = <95000>; 4359 hysteresis = <2000>; 4360 type = "passive"; 4361 }; 4362 4363 cpu4_top_crit: cpu_crit { 4364 temperature = <110000>; 4365 hysteresis = <1000>; 4366 type = "critical"; 4367 }; 4368 }; 4369 4370 cooling-maps { 4371 map0 { 4372 trip = <&cpu4_top_alert0>; 4373 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4374 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4375 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4376 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 4377 }; 4378 map1 { 4379 trip = <&cpu4_top_alert1>; 4380 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4381 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4382 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4383 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 4384 }; 4385 }; 4386 }; 4387 4388 cpu5-top-thermal { 4389 polling-delay-passive = <250>; 4390 polling-delay = <1000>; 4391 4392 thermal-sensors = <&tsens0 8>; 4393 4394 trips { 4395 cpu5_top_alert0: trip-point0 { 4396 temperature = <90000>; 4397 hysteresis = <2000>; 4398 type = "passive"; 4399 }; 4400 4401 cpu5_top_alert1: trip-point1 { 4402 temperature = <95000>; 4403 hysteresis = <2000>; 4404 type = "passive"; 4405 }; 4406 4407 cpu5_top_crit: cpu_crit { 4408 temperature = <110000>; 4409 hysteresis = <1000>; 4410 type = "critical"; 4411 }; 4412 }; 4413 4414 cooling-maps { 4415 map0 { 4416 trip = <&cpu5_top_alert0>; 4417 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4418 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4419 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4420 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 4421 }; 4422 map1 { 4423 trip = <&cpu5_top_alert1>; 4424 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4425 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4426 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4427 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 4428 }; 4429 }; 4430 }; 4431 4432 cpu6-top-thermal { 4433 polling-delay-passive = <250>; 4434 polling-delay = <1000>; 4435 4436 thermal-sensors = <&tsens0 9>; 4437 4438 trips { 4439 cpu6_top_alert0: trip-point0 { 4440 temperature = <90000>; 4441 hysteresis = <2000>; 4442 type = "passive"; 4443 }; 4444 4445 cpu6_top_alert1: trip-point1 { 4446 temperature = <95000>; 4447 hysteresis = <2000>; 4448 type = "passive"; 4449 }; 4450 4451 cpu6_top_crit: cpu_crit { 4452 temperature = <110000>; 4453 hysteresis = <1000>; 4454 type = "critical"; 4455 }; 4456 }; 4457 4458 cooling-maps { 4459 map0 { 4460 trip = <&cpu6_top_alert0>; 4461 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4462 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4463 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4464 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 4465 }; 4466 map1 { 4467 trip = <&cpu6_top_alert1>; 4468 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4469 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4470 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4471 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 4472 }; 4473 }; 4474 }; 4475 4476 cpu7-top-thermal { 4477 polling-delay-passive = <250>; 4478 polling-delay = <1000>; 4479 4480 thermal-sensors = <&tsens0 10>; 4481 4482 trips { 4483 cpu7_top_alert0: trip-point0 { 4484 temperature = <90000>; 4485 hysteresis = <2000>; 4486 type = "passive"; 4487 }; 4488 4489 cpu7_top_alert1: trip-point1 { 4490 temperature = <95000>; 4491 hysteresis = <2000>; 4492 type = "passive"; 4493 }; 4494 4495 cpu7_top_crit: cpu_crit { 4496 temperature = <110000>; 4497 hysteresis = <1000>; 4498 type = "critical"; 4499 }; 4500 }; 4501 4502 cooling-maps { 4503 map0 { 4504 trip = <&cpu7_top_alert0>; 4505 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4506 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4507 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4508 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 4509 }; 4510 map1 { 4511 trip = <&cpu7_top_alert1>; 4512 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4513 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4514 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4515 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 4516 }; 4517 }; 4518 }; 4519 4520 cpu4-bottom-thermal { 4521 polling-delay-passive = <250>; 4522 polling-delay = <1000>; 4523 4524 thermal-sensors = <&tsens0 11>; 4525 4526 trips { 4527 cpu4_bottom_alert0: trip-point0 { 4528 temperature = <90000>; 4529 hysteresis = <2000>; 4530 type = "passive"; 4531 }; 4532 4533 cpu4_bottom_alert1: trip-point1 { 4534 temperature = <95000>; 4535 hysteresis = <2000>; 4536 type = "passive"; 4537 }; 4538 4539 cpu4_bottom_crit: cpu_crit { 4540 temperature = <110000>; 4541 hysteresis = <1000>; 4542 type = "critical"; 4543 }; 4544 }; 4545 4546 cooling-maps { 4547 map0 { 4548 trip = <&cpu4_bottom_alert0>; 4549 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4550 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4551 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4552 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 4553 }; 4554 map1 { 4555 trip = <&cpu4_bottom_alert1>; 4556 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4557 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4558 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4559 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 4560 }; 4561 }; 4562 }; 4563 4564 cpu5-bottom-thermal { 4565 polling-delay-passive = <250>; 4566 polling-delay = <1000>; 4567 4568 thermal-sensors = <&tsens0 12>; 4569 4570 trips { 4571 cpu5_bottom_alert0: trip-point0 { 4572 temperature = <90000>; 4573 hysteresis = <2000>; 4574 type = "passive"; 4575 }; 4576 4577 cpu5_bottom_alert1: trip-point1 { 4578 temperature = <95000>; 4579 hysteresis = <2000>; 4580 type = "passive"; 4581 }; 4582 4583 cpu5_bottom_crit: cpu_crit { 4584 temperature = <110000>; 4585 hysteresis = <1000>; 4586 type = "critical"; 4587 }; 4588 }; 4589 4590 cooling-maps { 4591 map0 { 4592 trip = <&cpu5_bottom_alert0>; 4593 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4594 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4595 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4596 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 4597 }; 4598 map1 { 4599 trip = <&cpu5_bottom_alert1>; 4600 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4601 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4602 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4603 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 4604 }; 4605 }; 4606 }; 4607 4608 cpu6-bottom-thermal { 4609 polling-delay-passive = <250>; 4610 polling-delay = <1000>; 4611 4612 thermal-sensors = <&tsens0 13>; 4613 4614 trips { 4615 cpu6_bottom_alert0: trip-point0 { 4616 temperature = <90000>; 4617 hysteresis = <2000>; 4618 type = "passive"; 4619 }; 4620 4621 cpu6_bottom_alert1: trip-point1 { 4622 temperature = <95000>; 4623 hysteresis = <2000>; 4624 type = "passive"; 4625 }; 4626 4627 cpu6_bottom_crit: cpu_crit { 4628 temperature = <110000>; 4629 hysteresis = <1000>; 4630 type = "critical"; 4631 }; 4632 }; 4633 4634 cooling-maps { 4635 map0 { 4636 trip = <&cpu6_bottom_alert0>; 4637 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4638 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4639 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4640 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 4641 }; 4642 map1 { 4643 trip = <&cpu6_bottom_alert1>; 4644 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4645 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4646 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4647 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 4648 }; 4649 }; 4650 }; 4651 4652 cpu7-bottom-thermal { 4653 polling-delay-passive = <250>; 4654 polling-delay = <1000>; 4655 4656 thermal-sensors = <&tsens0 14>; 4657 4658 trips { 4659 cpu7_bottom_alert0: trip-point0 { 4660 temperature = <90000>; 4661 hysteresis = <2000>; 4662 type = "passive"; 4663 }; 4664 4665 cpu7_bottom_alert1: trip-point1 { 4666 temperature = <95000>; 4667 hysteresis = <2000>; 4668 type = "passive"; 4669 }; 4670 4671 cpu7_bottom_crit: cpu_crit { 4672 temperature = <110000>; 4673 hysteresis = <1000>; 4674 type = "critical"; 4675 }; 4676 }; 4677 4678 cooling-maps { 4679 map0 { 4680 trip = <&cpu7_bottom_alert0>; 4681 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4682 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4683 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4684 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 4685 }; 4686 map1 { 4687 trip = <&cpu7_bottom_alert1>; 4688 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4689 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4690 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 4691 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 4692 }; 4693 }; 4694 }; 4695 4696 aoss0-thermal { 4697 polling-delay-passive = <250>; 4698 polling-delay = <1000>; 4699 4700 thermal-sensors = <&tsens0 0>; 4701 4702 trips { 4703 aoss0_alert0: trip-point0 { 4704 temperature = <90000>; 4705 hysteresis = <2000>; 4706 type = "hot"; 4707 }; 4708 }; 4709 }; 4710 4711 cluster0-thermal { 4712 polling-delay-passive = <250>; 4713 polling-delay = <1000>; 4714 4715 thermal-sensors = <&tsens0 5>; 4716 4717 trips { 4718 cluster0_alert0: trip-point0 { 4719 temperature = <90000>; 4720 hysteresis = <2000>; 4721 type = "hot"; 4722 }; 4723 cluster0_crit: cluster0_crit { 4724 temperature = <110000>; 4725 hysteresis = <2000>; 4726 type = "critical"; 4727 }; 4728 }; 4729 }; 4730 4731 cluster1-thermal { 4732 polling-delay-passive = <250>; 4733 polling-delay = <1000>; 4734 4735 thermal-sensors = <&tsens0 6>; 4736 4737 trips { 4738 cluster1_alert0: trip-point0 { 4739 temperature = <90000>; 4740 hysteresis = <2000>; 4741 type = "hot"; 4742 }; 4743 cluster1_crit: cluster1_crit { 4744 temperature = <110000>; 4745 hysteresis = <2000>; 4746 type = "critical"; 4747 }; 4748 }; 4749 }; 4750 4751 gpu-top-thermal { 4752 polling-delay-passive = <250>; 4753 polling-delay = <1000>; 4754 4755 thermal-sensors = <&tsens0 15>; 4756 4757 trips { 4758 gpu1_alert0: trip-point0 { 4759 temperature = <90000>; 4760 hysteresis = <2000>; 4761 type = "hot"; 4762 }; 4763 }; 4764 }; 4765 4766 aoss1-thermal { 4767 polling-delay-passive = <250>; 4768 polling-delay = <1000>; 4769 4770 thermal-sensors = <&tsens1 0>; 4771 4772 trips { 4773 aoss1_alert0: trip-point0 { 4774 temperature = <90000>; 4775 hysteresis = <2000>; 4776 type = "hot"; 4777 }; 4778 }; 4779 }; 4780 4781 wlan-thermal { 4782 polling-delay-passive = <250>; 4783 polling-delay = <1000>; 4784 4785 thermal-sensors = <&tsens1 1>; 4786 4787 trips { 4788 wlan_alert0: trip-point0 { 4789 temperature = <90000>; 4790 hysteresis = <2000>; 4791 type = "hot"; 4792 }; 4793 }; 4794 }; 4795 4796 video-thermal { 4797 polling-delay-passive = <250>; 4798 polling-delay = <1000>; 4799 4800 thermal-sensors = <&tsens1 2>; 4801 4802 trips { 4803 video_alert0: trip-point0 { 4804 temperature = <90000>; 4805 hysteresis = <2000>; 4806 type = "hot"; 4807 }; 4808 }; 4809 }; 4810 4811 mem-thermal { 4812 polling-delay-passive = <250>; 4813 polling-delay = <1000>; 4814 4815 thermal-sensors = <&tsens1 3>; 4816 4817 trips { 4818 mem_alert0: trip-point0 { 4819 temperature = <90000>; 4820 hysteresis = <2000>; 4821 type = "hot"; 4822 }; 4823 }; 4824 }; 4825 4826 q6-hvx-thermal { 4827 polling-delay-passive = <250>; 4828 polling-delay = <1000>; 4829 4830 thermal-sensors = <&tsens1 4>; 4831 4832 trips { 4833 q6_hvx_alert0: trip-point0 { 4834 temperature = <90000>; 4835 hysteresis = <2000>; 4836 type = "hot"; 4837 }; 4838 }; 4839 }; 4840 4841 camera-thermal { 4842 polling-delay-passive = <250>; 4843 polling-delay = <1000>; 4844 4845 thermal-sensors = <&tsens1 5>; 4846 4847 trips { 4848 camera_alert0: trip-point0 { 4849 temperature = <90000>; 4850 hysteresis = <2000>; 4851 type = "hot"; 4852 }; 4853 }; 4854 }; 4855 4856 compute-thermal { 4857 polling-delay-passive = <250>; 4858 polling-delay = <1000>; 4859 4860 thermal-sensors = <&tsens1 6>; 4861 4862 trips { 4863 compute_alert0: trip-point0 { 4864 temperature = <90000>; 4865 hysteresis = <2000>; 4866 type = "hot"; 4867 }; 4868 }; 4869 }; 4870 4871 modem-thermal { 4872 polling-delay-passive = <250>; 4873 polling-delay = <1000>; 4874 4875 thermal-sensors = <&tsens1 7>; 4876 4877 trips { 4878 modem_alert0: trip-point0 { 4879 temperature = <90000>; 4880 hysteresis = <2000>; 4881 type = "hot"; 4882 }; 4883 }; 4884 }; 4885 4886 npu-thermal { 4887 polling-delay-passive = <250>; 4888 polling-delay = <1000>; 4889 4890 thermal-sensors = <&tsens1 8>; 4891 4892 trips { 4893 npu_alert0: trip-point0 { 4894 temperature = <90000>; 4895 hysteresis = <2000>; 4896 type = "hot"; 4897 }; 4898 }; 4899 }; 4900 4901 modem-vec-thermal { 4902 polling-delay-passive = <250>; 4903 polling-delay = <1000>; 4904 4905 thermal-sensors = <&tsens1 9>; 4906 4907 trips { 4908 modem_vec_alert0: trip-point0 { 4909 temperature = <90000>; 4910 hysteresis = <2000>; 4911 type = "hot"; 4912 }; 4913 }; 4914 }; 4915 4916 modem-scl-thermal { 4917 polling-delay-passive = <250>; 4918 polling-delay = <1000>; 4919 4920 thermal-sensors = <&tsens1 10>; 4921 4922 trips { 4923 modem_scl_alert0: trip-point0 { 4924 temperature = <90000>; 4925 hysteresis = <2000>; 4926 type = "hot"; 4927 }; 4928 }; 4929 }; 4930 4931 gpu-bottom-thermal { 4932 polling-delay-passive = <250>; 4933 polling-delay = <1000>; 4934 4935 thermal-sensors = <&tsens1 11>; 4936 4937 trips { 4938 gpu2_alert0: trip-point0 { 4939 temperature = <90000>; 4940 hysteresis = <2000>; 4941 type = "hot"; 4942 }; 4943 }; 4944 }; 4945 }; 4946}; 4947