1*4882a593Smuzhiyun// SPDX-License-Identifier: GPL-2.0 2*4882a593Smuzhiyun/* Copyright (c) 2016, The Linux Foundation. All rights reserved. */ 3*4882a593Smuzhiyun 4*4882a593Smuzhiyun#include <dt-bindings/interrupt-controller/arm-gic.h> 5*4882a593Smuzhiyun#include <dt-bindings/clock/qcom,gcc-msm8998.h> 6*4882a593Smuzhiyun#include <dt-bindings/clock/qcom,gpucc-msm8998.h> 7*4882a593Smuzhiyun#include <dt-bindings/clock/qcom,rpmcc.h> 8*4882a593Smuzhiyun#include <dt-bindings/power/qcom-rpmpd.h> 9*4882a593Smuzhiyun#include <dt-bindings/gpio/gpio.h> 10*4882a593Smuzhiyun 11*4882a593Smuzhiyun/ { 12*4882a593Smuzhiyun interrupt-parent = <&intc>; 13*4882a593Smuzhiyun 14*4882a593Smuzhiyun qcom,msm-id = <292 0x0>; 15*4882a593Smuzhiyun 16*4882a593Smuzhiyun #address-cells = <2>; 17*4882a593Smuzhiyun #size-cells = <2>; 18*4882a593Smuzhiyun 19*4882a593Smuzhiyun chosen { }; 20*4882a593Smuzhiyun 21*4882a593Smuzhiyun memory { 22*4882a593Smuzhiyun device_type = "memory"; 23*4882a593Smuzhiyun /* We expect the bootloader to fill in the reg */ 24*4882a593Smuzhiyun reg = <0 0 0 0>; 25*4882a593Smuzhiyun }; 26*4882a593Smuzhiyun 27*4882a593Smuzhiyun reserved-memory { 28*4882a593Smuzhiyun #address-cells = <2>; 29*4882a593Smuzhiyun #size-cells = <2>; 30*4882a593Smuzhiyun ranges; 31*4882a593Smuzhiyun 32*4882a593Smuzhiyun hyp_mem: memory@85800000 { 33*4882a593Smuzhiyun reg = <0x0 0x85800000 0x0 0x600000>; 34*4882a593Smuzhiyun no-map; 35*4882a593Smuzhiyun }; 36*4882a593Smuzhiyun 37*4882a593Smuzhiyun xbl_mem: memory@85e00000 { 38*4882a593Smuzhiyun reg = <0x0 0x85e00000 0x0 0x100000>; 39*4882a593Smuzhiyun no-map; 40*4882a593Smuzhiyun }; 41*4882a593Smuzhiyun 42*4882a593Smuzhiyun smem_mem: smem-mem@86000000 { 43*4882a593Smuzhiyun reg = <0x0 0x86000000 0x0 0x200000>; 44*4882a593Smuzhiyun no-map; 45*4882a593Smuzhiyun }; 46*4882a593Smuzhiyun 47*4882a593Smuzhiyun tz_mem: memory@86200000 { 48*4882a593Smuzhiyun reg = <0x0 0x86200000 0x0 0x2d00000>; 49*4882a593Smuzhiyun no-map; 50*4882a593Smuzhiyun }; 51*4882a593Smuzhiyun 52*4882a593Smuzhiyun rmtfs_mem: memory@88f00000 { 53*4882a593Smuzhiyun compatible = "qcom,rmtfs-mem"; 54*4882a593Smuzhiyun reg = <0x0 0x88f00000 0x0 0x200000>; 55*4882a593Smuzhiyun no-map; 56*4882a593Smuzhiyun 57*4882a593Smuzhiyun qcom,client-id = <1>; 58*4882a593Smuzhiyun qcom,vmid = <15>; 59*4882a593Smuzhiyun }; 60*4882a593Smuzhiyun 61*4882a593Smuzhiyun spss_mem: memory@8ab00000 { 62*4882a593Smuzhiyun reg = <0x0 0x8ab00000 0x0 0x700000>; 63*4882a593Smuzhiyun no-map; 64*4882a593Smuzhiyun }; 65*4882a593Smuzhiyun 66*4882a593Smuzhiyun adsp_mem: memory@8b200000 { 67*4882a593Smuzhiyun reg = <0x0 0x8b200000 0x0 0x1a00000>; 68*4882a593Smuzhiyun no-map; 69*4882a593Smuzhiyun }; 70*4882a593Smuzhiyun 71*4882a593Smuzhiyun mpss_mem: memory@8cc00000 { 72*4882a593Smuzhiyun reg = <0x0 0x8cc00000 0x0 0x7000000>; 73*4882a593Smuzhiyun no-map; 74*4882a593Smuzhiyun }; 75*4882a593Smuzhiyun 76*4882a593Smuzhiyun venus_mem: memory@93c00000 { 77*4882a593Smuzhiyun reg = <0x0 0x93c00000 0x0 0x500000>; 78*4882a593Smuzhiyun no-map; 79*4882a593Smuzhiyun }; 80*4882a593Smuzhiyun 81*4882a593Smuzhiyun mba_mem: memory@94100000 { 82*4882a593Smuzhiyun reg = <0x0 0x94100000 0x0 0x200000>; 83*4882a593Smuzhiyun no-map; 84*4882a593Smuzhiyun }; 85*4882a593Smuzhiyun 86*4882a593Smuzhiyun slpi_mem: memory@94300000 { 87*4882a593Smuzhiyun reg = <0x0 0x94300000 0x0 0xf00000>; 88*4882a593Smuzhiyun no-map; 89*4882a593Smuzhiyun }; 90*4882a593Smuzhiyun 91*4882a593Smuzhiyun ipa_fw_mem: memory@95200000 { 92*4882a593Smuzhiyun reg = <0x0 0x95200000 0x0 0x10000>; 93*4882a593Smuzhiyun no-map; 94*4882a593Smuzhiyun }; 95*4882a593Smuzhiyun 96*4882a593Smuzhiyun ipa_gsi_mem: memory@95210000 { 97*4882a593Smuzhiyun reg = <0x0 0x95210000 0x0 0x5000>; 98*4882a593Smuzhiyun no-map; 99*4882a593Smuzhiyun }; 100*4882a593Smuzhiyun 101*4882a593Smuzhiyun gpu_mem: memory@95600000 { 102*4882a593Smuzhiyun reg = <0x0 0x95600000 0x0 0x100000>; 103*4882a593Smuzhiyun no-map; 104*4882a593Smuzhiyun }; 105*4882a593Smuzhiyun 106*4882a593Smuzhiyun wlan_msa_mem: memory@95700000 { 107*4882a593Smuzhiyun reg = <0x0 0x95700000 0x0 0x100000>; 108*4882a593Smuzhiyun no-map; 109*4882a593Smuzhiyun }; 110*4882a593Smuzhiyun }; 111*4882a593Smuzhiyun 112*4882a593Smuzhiyun clocks { 113*4882a593Smuzhiyun xo: xo-board { 114*4882a593Smuzhiyun compatible = "fixed-clock"; 115*4882a593Smuzhiyun #clock-cells = <0>; 116*4882a593Smuzhiyun clock-frequency = <19200000>; 117*4882a593Smuzhiyun clock-output-names = "xo_board"; 118*4882a593Smuzhiyun }; 119*4882a593Smuzhiyun 120*4882a593Smuzhiyun sleep_clk { 121*4882a593Smuzhiyun compatible = "fixed-clock"; 122*4882a593Smuzhiyun #clock-cells = <0>; 123*4882a593Smuzhiyun clock-frequency = <32764>; 124*4882a593Smuzhiyun }; 125*4882a593Smuzhiyun }; 126*4882a593Smuzhiyun 127*4882a593Smuzhiyun cpus { 128*4882a593Smuzhiyun #address-cells = <2>; 129*4882a593Smuzhiyun #size-cells = <0>; 130*4882a593Smuzhiyun 131*4882a593Smuzhiyun CPU0: cpu@0 { 132*4882a593Smuzhiyun device_type = "cpu"; 133*4882a593Smuzhiyun compatible = "qcom,kryo280"; 134*4882a593Smuzhiyun reg = <0x0 0x0>; 135*4882a593Smuzhiyun enable-method = "psci"; 136*4882a593Smuzhiyun cpu-idle-states = <&LITTLE_CPU_SLEEP_0 &LITTLE_CPU_SLEEP_1>; 137*4882a593Smuzhiyun next-level-cache = <&L2_0>; 138*4882a593Smuzhiyun L2_0: l2-cache { 139*4882a593Smuzhiyun compatible = "arm,arch-cache"; 140*4882a593Smuzhiyun cache-level = <2>; 141*4882a593Smuzhiyun }; 142*4882a593Smuzhiyun L1_I_0: l1-icache { 143*4882a593Smuzhiyun compatible = "arm,arch-cache"; 144*4882a593Smuzhiyun }; 145*4882a593Smuzhiyun L1_D_0: l1-dcache { 146*4882a593Smuzhiyun compatible = "arm,arch-cache"; 147*4882a593Smuzhiyun }; 148*4882a593Smuzhiyun }; 149*4882a593Smuzhiyun 150*4882a593Smuzhiyun CPU1: cpu@1 { 151*4882a593Smuzhiyun device_type = "cpu"; 152*4882a593Smuzhiyun compatible = "qcom,kryo280"; 153*4882a593Smuzhiyun reg = <0x0 0x1>; 154*4882a593Smuzhiyun enable-method = "psci"; 155*4882a593Smuzhiyun cpu-idle-states = <&LITTLE_CPU_SLEEP_0 &LITTLE_CPU_SLEEP_1>; 156*4882a593Smuzhiyun next-level-cache = <&L2_0>; 157*4882a593Smuzhiyun L1_I_1: l1-icache { 158*4882a593Smuzhiyun compatible = "arm,arch-cache"; 159*4882a593Smuzhiyun }; 160*4882a593Smuzhiyun L1_D_1: l1-dcache { 161*4882a593Smuzhiyun compatible = "arm,arch-cache"; 162*4882a593Smuzhiyun }; 163*4882a593Smuzhiyun }; 164*4882a593Smuzhiyun 165*4882a593Smuzhiyun CPU2: cpu@2 { 166*4882a593Smuzhiyun device_type = "cpu"; 167*4882a593Smuzhiyun compatible = "qcom,kryo280"; 168*4882a593Smuzhiyun reg = <0x0 0x2>; 169*4882a593Smuzhiyun enable-method = "psci"; 170*4882a593Smuzhiyun cpu-idle-states = <&LITTLE_CPU_SLEEP_0 &LITTLE_CPU_SLEEP_1>; 171*4882a593Smuzhiyun next-level-cache = <&L2_0>; 172*4882a593Smuzhiyun L1_I_2: l1-icache { 173*4882a593Smuzhiyun compatible = "arm,arch-cache"; 174*4882a593Smuzhiyun }; 175*4882a593Smuzhiyun L1_D_2: l1-dcache { 176*4882a593Smuzhiyun compatible = "arm,arch-cache"; 177*4882a593Smuzhiyun }; 178*4882a593Smuzhiyun }; 179*4882a593Smuzhiyun 180*4882a593Smuzhiyun CPU3: cpu@3 { 181*4882a593Smuzhiyun device_type = "cpu"; 182*4882a593Smuzhiyun compatible = "qcom,kryo280"; 183*4882a593Smuzhiyun reg = <0x0 0x3>; 184*4882a593Smuzhiyun enable-method = "psci"; 185*4882a593Smuzhiyun cpu-idle-states = <&LITTLE_CPU_SLEEP_0 &LITTLE_CPU_SLEEP_1>; 186*4882a593Smuzhiyun next-level-cache = <&L2_0>; 187*4882a593Smuzhiyun L1_I_3: l1-icache { 188*4882a593Smuzhiyun compatible = "arm,arch-cache"; 189*4882a593Smuzhiyun }; 190*4882a593Smuzhiyun L1_D_3: l1-dcache { 191*4882a593Smuzhiyun compatible = "arm,arch-cache"; 192*4882a593Smuzhiyun }; 193*4882a593Smuzhiyun }; 194*4882a593Smuzhiyun 195*4882a593Smuzhiyun CPU4: cpu@100 { 196*4882a593Smuzhiyun device_type = "cpu"; 197*4882a593Smuzhiyun compatible = "qcom,kryo280"; 198*4882a593Smuzhiyun reg = <0x0 0x100>; 199*4882a593Smuzhiyun enable-method = "psci"; 200*4882a593Smuzhiyun cpu-idle-states = <&BIG_CPU_SLEEP_0 &BIG_CPU_SLEEP_1>; 201*4882a593Smuzhiyun next-level-cache = <&L2_1>; 202*4882a593Smuzhiyun L2_1: l2-cache { 203*4882a593Smuzhiyun compatible = "arm,arch-cache"; 204*4882a593Smuzhiyun cache-level = <2>; 205*4882a593Smuzhiyun }; 206*4882a593Smuzhiyun L1_I_100: l1-icache { 207*4882a593Smuzhiyun compatible = "arm,arch-cache"; 208*4882a593Smuzhiyun }; 209*4882a593Smuzhiyun L1_D_100: l1-dcache { 210*4882a593Smuzhiyun compatible = "arm,arch-cache"; 211*4882a593Smuzhiyun }; 212*4882a593Smuzhiyun }; 213*4882a593Smuzhiyun 214*4882a593Smuzhiyun CPU5: cpu@101 { 215*4882a593Smuzhiyun device_type = "cpu"; 216*4882a593Smuzhiyun compatible = "qcom,kryo280"; 217*4882a593Smuzhiyun reg = <0x0 0x101>; 218*4882a593Smuzhiyun enable-method = "psci"; 219*4882a593Smuzhiyun cpu-idle-states = <&BIG_CPU_SLEEP_0 &BIG_CPU_SLEEP_1>; 220*4882a593Smuzhiyun next-level-cache = <&L2_1>; 221*4882a593Smuzhiyun L1_I_101: l1-icache { 222*4882a593Smuzhiyun compatible = "arm,arch-cache"; 223*4882a593Smuzhiyun }; 224*4882a593Smuzhiyun L1_D_101: l1-dcache { 225*4882a593Smuzhiyun compatible = "arm,arch-cache"; 226*4882a593Smuzhiyun }; 227*4882a593Smuzhiyun }; 228*4882a593Smuzhiyun 229*4882a593Smuzhiyun CPU6: cpu@102 { 230*4882a593Smuzhiyun device_type = "cpu"; 231*4882a593Smuzhiyun compatible = "qcom,kryo280"; 232*4882a593Smuzhiyun reg = <0x0 0x102>; 233*4882a593Smuzhiyun enable-method = "psci"; 234*4882a593Smuzhiyun cpu-idle-states = <&BIG_CPU_SLEEP_0 &BIG_CPU_SLEEP_1>; 235*4882a593Smuzhiyun next-level-cache = <&L2_1>; 236*4882a593Smuzhiyun L1_I_102: l1-icache { 237*4882a593Smuzhiyun compatible = "arm,arch-cache"; 238*4882a593Smuzhiyun }; 239*4882a593Smuzhiyun L1_D_102: l1-dcache { 240*4882a593Smuzhiyun compatible = "arm,arch-cache"; 241*4882a593Smuzhiyun }; 242*4882a593Smuzhiyun }; 243*4882a593Smuzhiyun 244*4882a593Smuzhiyun CPU7: cpu@103 { 245*4882a593Smuzhiyun device_type = "cpu"; 246*4882a593Smuzhiyun compatible = "qcom,kryo280"; 247*4882a593Smuzhiyun reg = <0x0 0x103>; 248*4882a593Smuzhiyun enable-method = "psci"; 249*4882a593Smuzhiyun cpu-idle-states = <&BIG_CPU_SLEEP_0 &BIG_CPU_SLEEP_1>; 250*4882a593Smuzhiyun next-level-cache = <&L2_1>; 251*4882a593Smuzhiyun L1_I_103: l1-icache { 252*4882a593Smuzhiyun compatible = "arm,arch-cache"; 253*4882a593Smuzhiyun }; 254*4882a593Smuzhiyun L1_D_103: l1-dcache { 255*4882a593Smuzhiyun compatible = "arm,arch-cache"; 256*4882a593Smuzhiyun }; 257*4882a593Smuzhiyun }; 258*4882a593Smuzhiyun 259*4882a593Smuzhiyun cpu-map { 260*4882a593Smuzhiyun cluster0 { 261*4882a593Smuzhiyun core0 { 262*4882a593Smuzhiyun cpu = <&CPU0>; 263*4882a593Smuzhiyun }; 264*4882a593Smuzhiyun 265*4882a593Smuzhiyun core1 { 266*4882a593Smuzhiyun cpu = <&CPU1>; 267*4882a593Smuzhiyun }; 268*4882a593Smuzhiyun 269*4882a593Smuzhiyun core2 { 270*4882a593Smuzhiyun cpu = <&CPU2>; 271*4882a593Smuzhiyun }; 272*4882a593Smuzhiyun 273*4882a593Smuzhiyun core3 { 274*4882a593Smuzhiyun cpu = <&CPU3>; 275*4882a593Smuzhiyun }; 276*4882a593Smuzhiyun }; 277*4882a593Smuzhiyun 278*4882a593Smuzhiyun cluster1 { 279*4882a593Smuzhiyun core0 { 280*4882a593Smuzhiyun cpu = <&CPU4>; 281*4882a593Smuzhiyun }; 282*4882a593Smuzhiyun 283*4882a593Smuzhiyun core1 { 284*4882a593Smuzhiyun cpu = <&CPU5>; 285*4882a593Smuzhiyun }; 286*4882a593Smuzhiyun 287*4882a593Smuzhiyun core2 { 288*4882a593Smuzhiyun cpu = <&CPU6>; 289*4882a593Smuzhiyun }; 290*4882a593Smuzhiyun 291*4882a593Smuzhiyun core3 { 292*4882a593Smuzhiyun cpu = <&CPU7>; 293*4882a593Smuzhiyun }; 294*4882a593Smuzhiyun }; 295*4882a593Smuzhiyun }; 296*4882a593Smuzhiyun 297*4882a593Smuzhiyun idle-states { 298*4882a593Smuzhiyun entry-method = "psci"; 299*4882a593Smuzhiyun 300*4882a593Smuzhiyun LITTLE_CPU_SLEEP_0: cpu-sleep-0-0 { 301*4882a593Smuzhiyun compatible = "arm,idle-state"; 302*4882a593Smuzhiyun idle-state-name = "little-retention"; 303*4882a593Smuzhiyun /* CPU Retention (C2D), L2 Active */ 304*4882a593Smuzhiyun arm,psci-suspend-param = <0x00000002>; 305*4882a593Smuzhiyun entry-latency-us = <81>; 306*4882a593Smuzhiyun exit-latency-us = <86>; 307*4882a593Smuzhiyun min-residency-us = <504>; 308*4882a593Smuzhiyun }; 309*4882a593Smuzhiyun 310*4882a593Smuzhiyun LITTLE_CPU_SLEEP_1: cpu-sleep-0-1 { 311*4882a593Smuzhiyun compatible = "arm,idle-state"; 312*4882a593Smuzhiyun idle-state-name = "little-power-collapse"; 313*4882a593Smuzhiyun /* CPU + L2 Power Collapse (C3, D4) */ 314*4882a593Smuzhiyun arm,psci-suspend-param = <0x40000003>; 315*4882a593Smuzhiyun entry-latency-us = <814>; 316*4882a593Smuzhiyun exit-latency-us = <4562>; 317*4882a593Smuzhiyun min-residency-us = <9183>; 318*4882a593Smuzhiyun local-timer-stop; 319*4882a593Smuzhiyun }; 320*4882a593Smuzhiyun 321*4882a593Smuzhiyun BIG_CPU_SLEEP_0: cpu-sleep-1-0 { 322*4882a593Smuzhiyun compatible = "arm,idle-state"; 323*4882a593Smuzhiyun idle-state-name = "big-retention"; 324*4882a593Smuzhiyun /* CPU Retention (C2D), L2 Active */ 325*4882a593Smuzhiyun arm,psci-suspend-param = <0x00000002>; 326*4882a593Smuzhiyun entry-latency-us = <79>; 327*4882a593Smuzhiyun exit-latency-us = <82>; 328*4882a593Smuzhiyun min-residency-us = <1302>; 329*4882a593Smuzhiyun }; 330*4882a593Smuzhiyun 331*4882a593Smuzhiyun BIG_CPU_SLEEP_1: cpu-sleep-1-1 { 332*4882a593Smuzhiyun compatible = "arm,idle-state"; 333*4882a593Smuzhiyun idle-state-name = "big-power-collapse"; 334*4882a593Smuzhiyun /* CPU + L2 Power Collapse (C3, D4) */ 335*4882a593Smuzhiyun arm,psci-suspend-param = <0x40000003>; 336*4882a593Smuzhiyun entry-latency-us = <724>; 337*4882a593Smuzhiyun exit-latency-us = <2027>; 338*4882a593Smuzhiyun min-residency-us = <9419>; 339*4882a593Smuzhiyun local-timer-stop; 340*4882a593Smuzhiyun }; 341*4882a593Smuzhiyun }; 342*4882a593Smuzhiyun }; 343*4882a593Smuzhiyun 344*4882a593Smuzhiyun firmware { 345*4882a593Smuzhiyun scm { 346*4882a593Smuzhiyun compatible = "qcom,scm-msm8998", "qcom,scm"; 347*4882a593Smuzhiyun }; 348*4882a593Smuzhiyun }; 349*4882a593Smuzhiyun 350*4882a593Smuzhiyun tcsr_mutex: hwlock { 351*4882a593Smuzhiyun compatible = "qcom,tcsr-mutex"; 352*4882a593Smuzhiyun syscon = <&tcsr_mutex_regs 0 0x1000>; 353*4882a593Smuzhiyun #hwlock-cells = <1>; 354*4882a593Smuzhiyun }; 355*4882a593Smuzhiyun 356*4882a593Smuzhiyun psci { 357*4882a593Smuzhiyun compatible = "arm,psci-1.0"; 358*4882a593Smuzhiyun method = "smc"; 359*4882a593Smuzhiyun }; 360*4882a593Smuzhiyun 361*4882a593Smuzhiyun rpm-glink { 362*4882a593Smuzhiyun compatible = "qcom,glink-rpm"; 363*4882a593Smuzhiyun 364*4882a593Smuzhiyun interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>; 365*4882a593Smuzhiyun qcom,rpm-msg-ram = <&rpm_msg_ram>; 366*4882a593Smuzhiyun mboxes = <&apcs_glb 0>; 367*4882a593Smuzhiyun 368*4882a593Smuzhiyun rpm_requests: rpm-requests { 369*4882a593Smuzhiyun compatible = "qcom,rpm-msm8998"; 370*4882a593Smuzhiyun qcom,glink-channels = "rpm_requests"; 371*4882a593Smuzhiyun 372*4882a593Smuzhiyun rpmcc: clock-controller { 373*4882a593Smuzhiyun compatible = "qcom,rpmcc-msm8998", "qcom,rpmcc"; 374*4882a593Smuzhiyun #clock-cells = <1>; 375*4882a593Smuzhiyun }; 376*4882a593Smuzhiyun 377*4882a593Smuzhiyun rpmpd: power-controller { 378*4882a593Smuzhiyun compatible = "qcom,msm8998-rpmpd"; 379*4882a593Smuzhiyun #power-domain-cells = <1>; 380*4882a593Smuzhiyun operating-points-v2 = <&rpmpd_opp_table>; 381*4882a593Smuzhiyun 382*4882a593Smuzhiyun rpmpd_opp_table: opp-table { 383*4882a593Smuzhiyun compatible = "operating-points-v2"; 384*4882a593Smuzhiyun 385*4882a593Smuzhiyun rpmpd_opp_ret: opp1 { 386*4882a593Smuzhiyun opp-level = <16>; 387*4882a593Smuzhiyun }; 388*4882a593Smuzhiyun 389*4882a593Smuzhiyun rpmpd_opp_ret_plus: opp2 { 390*4882a593Smuzhiyun opp-level = <32>; 391*4882a593Smuzhiyun }; 392*4882a593Smuzhiyun 393*4882a593Smuzhiyun rpmpd_opp_min_svs: opp3 { 394*4882a593Smuzhiyun opp-level = <48>; 395*4882a593Smuzhiyun }; 396*4882a593Smuzhiyun 397*4882a593Smuzhiyun rpmpd_opp_low_svs: opp4 { 398*4882a593Smuzhiyun opp-level = <64>; 399*4882a593Smuzhiyun }; 400*4882a593Smuzhiyun 401*4882a593Smuzhiyun rpmpd_opp_svs: opp5 { 402*4882a593Smuzhiyun opp-level = <128>; 403*4882a593Smuzhiyun }; 404*4882a593Smuzhiyun 405*4882a593Smuzhiyun rpmpd_opp_svs_plus: opp6 { 406*4882a593Smuzhiyun opp-level = <192>; 407*4882a593Smuzhiyun }; 408*4882a593Smuzhiyun 409*4882a593Smuzhiyun rpmpd_opp_nom: opp7 { 410*4882a593Smuzhiyun opp-level = <256>; 411*4882a593Smuzhiyun }; 412*4882a593Smuzhiyun 413*4882a593Smuzhiyun rpmpd_opp_nom_plus: opp8 { 414*4882a593Smuzhiyun opp-level = <320>; 415*4882a593Smuzhiyun }; 416*4882a593Smuzhiyun 417*4882a593Smuzhiyun rpmpd_opp_turbo: opp9 { 418*4882a593Smuzhiyun opp-level = <384>; 419*4882a593Smuzhiyun }; 420*4882a593Smuzhiyun 421*4882a593Smuzhiyun rpmpd_opp_turbo_plus: opp10 { 422*4882a593Smuzhiyun opp-level = <512>; 423*4882a593Smuzhiyun }; 424*4882a593Smuzhiyun }; 425*4882a593Smuzhiyun }; 426*4882a593Smuzhiyun }; 427*4882a593Smuzhiyun }; 428*4882a593Smuzhiyun 429*4882a593Smuzhiyun smem { 430*4882a593Smuzhiyun compatible = "qcom,smem"; 431*4882a593Smuzhiyun memory-region = <&smem_mem>; 432*4882a593Smuzhiyun hwlocks = <&tcsr_mutex 3>; 433*4882a593Smuzhiyun }; 434*4882a593Smuzhiyun 435*4882a593Smuzhiyun smp2p-lpass { 436*4882a593Smuzhiyun compatible = "qcom,smp2p"; 437*4882a593Smuzhiyun qcom,smem = <443>, <429>; 438*4882a593Smuzhiyun 439*4882a593Smuzhiyun interrupts = <GIC_SPI 158 IRQ_TYPE_EDGE_RISING>; 440*4882a593Smuzhiyun 441*4882a593Smuzhiyun mboxes = <&apcs_glb 10>; 442*4882a593Smuzhiyun 443*4882a593Smuzhiyun qcom,local-pid = <0>; 444*4882a593Smuzhiyun qcom,remote-pid = <2>; 445*4882a593Smuzhiyun 446*4882a593Smuzhiyun adsp_smp2p_out: master-kernel { 447*4882a593Smuzhiyun qcom,entry-name = "master-kernel"; 448*4882a593Smuzhiyun #qcom,smem-state-cells = <1>; 449*4882a593Smuzhiyun }; 450*4882a593Smuzhiyun 451*4882a593Smuzhiyun adsp_smp2p_in: slave-kernel { 452*4882a593Smuzhiyun qcom,entry-name = "slave-kernel"; 453*4882a593Smuzhiyun 454*4882a593Smuzhiyun interrupt-controller; 455*4882a593Smuzhiyun #interrupt-cells = <2>; 456*4882a593Smuzhiyun }; 457*4882a593Smuzhiyun }; 458*4882a593Smuzhiyun 459*4882a593Smuzhiyun smp2p-mpss { 460*4882a593Smuzhiyun compatible = "qcom,smp2p"; 461*4882a593Smuzhiyun qcom,smem = <435>, <428>; 462*4882a593Smuzhiyun interrupts = <GIC_SPI 451 IRQ_TYPE_EDGE_RISING>; 463*4882a593Smuzhiyun mboxes = <&apcs_glb 14>; 464*4882a593Smuzhiyun qcom,local-pid = <0>; 465*4882a593Smuzhiyun qcom,remote-pid = <1>; 466*4882a593Smuzhiyun 467*4882a593Smuzhiyun modem_smp2p_out: master-kernel { 468*4882a593Smuzhiyun qcom,entry-name = "master-kernel"; 469*4882a593Smuzhiyun #qcom,smem-state-cells = <1>; 470*4882a593Smuzhiyun }; 471*4882a593Smuzhiyun 472*4882a593Smuzhiyun modem_smp2p_in: slave-kernel { 473*4882a593Smuzhiyun qcom,entry-name = "slave-kernel"; 474*4882a593Smuzhiyun interrupt-controller; 475*4882a593Smuzhiyun #interrupt-cells = <2>; 476*4882a593Smuzhiyun }; 477*4882a593Smuzhiyun }; 478*4882a593Smuzhiyun 479*4882a593Smuzhiyun smp2p-slpi { 480*4882a593Smuzhiyun compatible = "qcom,smp2p"; 481*4882a593Smuzhiyun qcom,smem = <481>, <430>; 482*4882a593Smuzhiyun interrupts = <GIC_SPI 178 IRQ_TYPE_EDGE_RISING>; 483*4882a593Smuzhiyun mboxes = <&apcs_glb 26>; 484*4882a593Smuzhiyun qcom,local-pid = <0>; 485*4882a593Smuzhiyun qcom,remote-pid = <3>; 486*4882a593Smuzhiyun 487*4882a593Smuzhiyun slpi_smp2p_out: master-kernel { 488*4882a593Smuzhiyun qcom,entry-name = "master-kernel"; 489*4882a593Smuzhiyun #qcom,smem-state-cells = <1>; 490*4882a593Smuzhiyun }; 491*4882a593Smuzhiyun 492*4882a593Smuzhiyun slpi_smp2p_in: slave-kernel { 493*4882a593Smuzhiyun qcom,entry-name = "slave-kernel"; 494*4882a593Smuzhiyun interrupt-controller; 495*4882a593Smuzhiyun #interrupt-cells = <2>; 496*4882a593Smuzhiyun }; 497*4882a593Smuzhiyun }; 498*4882a593Smuzhiyun 499*4882a593Smuzhiyun thermal-zones { 500*4882a593Smuzhiyun cpu0-thermal { 501*4882a593Smuzhiyun polling-delay-passive = <250>; 502*4882a593Smuzhiyun polling-delay = <1000>; 503*4882a593Smuzhiyun 504*4882a593Smuzhiyun thermal-sensors = <&tsens0 1>; 505*4882a593Smuzhiyun 506*4882a593Smuzhiyun trips { 507*4882a593Smuzhiyun cpu0_alert0: trip-point0 { 508*4882a593Smuzhiyun temperature = <75000>; 509*4882a593Smuzhiyun hysteresis = <2000>; 510*4882a593Smuzhiyun type = "passive"; 511*4882a593Smuzhiyun }; 512*4882a593Smuzhiyun 513*4882a593Smuzhiyun cpu0_crit: cpu_crit { 514*4882a593Smuzhiyun temperature = <110000>; 515*4882a593Smuzhiyun hysteresis = <2000>; 516*4882a593Smuzhiyun type = "critical"; 517*4882a593Smuzhiyun }; 518*4882a593Smuzhiyun }; 519*4882a593Smuzhiyun }; 520*4882a593Smuzhiyun 521*4882a593Smuzhiyun cpu1-thermal { 522*4882a593Smuzhiyun polling-delay-passive = <250>; 523*4882a593Smuzhiyun polling-delay = <1000>; 524*4882a593Smuzhiyun 525*4882a593Smuzhiyun thermal-sensors = <&tsens0 2>; 526*4882a593Smuzhiyun 527*4882a593Smuzhiyun trips { 528*4882a593Smuzhiyun cpu1_alert0: trip-point0 { 529*4882a593Smuzhiyun temperature = <75000>; 530*4882a593Smuzhiyun hysteresis = <2000>; 531*4882a593Smuzhiyun type = "passive"; 532*4882a593Smuzhiyun }; 533*4882a593Smuzhiyun 534*4882a593Smuzhiyun cpu1_crit: cpu_crit { 535*4882a593Smuzhiyun temperature = <110000>; 536*4882a593Smuzhiyun hysteresis = <2000>; 537*4882a593Smuzhiyun type = "critical"; 538*4882a593Smuzhiyun }; 539*4882a593Smuzhiyun }; 540*4882a593Smuzhiyun }; 541*4882a593Smuzhiyun 542*4882a593Smuzhiyun cpu2-thermal { 543*4882a593Smuzhiyun polling-delay-passive = <250>; 544*4882a593Smuzhiyun polling-delay = <1000>; 545*4882a593Smuzhiyun 546*4882a593Smuzhiyun thermal-sensors = <&tsens0 3>; 547*4882a593Smuzhiyun 548*4882a593Smuzhiyun trips { 549*4882a593Smuzhiyun cpu2_alert0: trip-point0 { 550*4882a593Smuzhiyun temperature = <75000>; 551*4882a593Smuzhiyun hysteresis = <2000>; 552*4882a593Smuzhiyun type = "passive"; 553*4882a593Smuzhiyun }; 554*4882a593Smuzhiyun 555*4882a593Smuzhiyun cpu2_crit: cpu_crit { 556*4882a593Smuzhiyun temperature = <110000>; 557*4882a593Smuzhiyun hysteresis = <2000>; 558*4882a593Smuzhiyun type = "critical"; 559*4882a593Smuzhiyun }; 560*4882a593Smuzhiyun }; 561*4882a593Smuzhiyun }; 562*4882a593Smuzhiyun 563*4882a593Smuzhiyun cpu3-thermal { 564*4882a593Smuzhiyun polling-delay-passive = <250>; 565*4882a593Smuzhiyun polling-delay = <1000>; 566*4882a593Smuzhiyun 567*4882a593Smuzhiyun thermal-sensors = <&tsens0 4>; 568*4882a593Smuzhiyun 569*4882a593Smuzhiyun trips { 570*4882a593Smuzhiyun cpu3_alert0: trip-point0 { 571*4882a593Smuzhiyun temperature = <75000>; 572*4882a593Smuzhiyun hysteresis = <2000>; 573*4882a593Smuzhiyun type = "passive"; 574*4882a593Smuzhiyun }; 575*4882a593Smuzhiyun 576*4882a593Smuzhiyun cpu3_crit: cpu_crit { 577*4882a593Smuzhiyun temperature = <110000>; 578*4882a593Smuzhiyun hysteresis = <2000>; 579*4882a593Smuzhiyun type = "critical"; 580*4882a593Smuzhiyun }; 581*4882a593Smuzhiyun }; 582*4882a593Smuzhiyun }; 583*4882a593Smuzhiyun 584*4882a593Smuzhiyun cpu4-thermal { 585*4882a593Smuzhiyun polling-delay-passive = <250>; 586*4882a593Smuzhiyun polling-delay = <1000>; 587*4882a593Smuzhiyun 588*4882a593Smuzhiyun thermal-sensors = <&tsens0 7>; 589*4882a593Smuzhiyun 590*4882a593Smuzhiyun trips { 591*4882a593Smuzhiyun cpu4_alert0: trip-point0 { 592*4882a593Smuzhiyun temperature = <75000>; 593*4882a593Smuzhiyun hysteresis = <2000>; 594*4882a593Smuzhiyun type = "passive"; 595*4882a593Smuzhiyun }; 596*4882a593Smuzhiyun 597*4882a593Smuzhiyun cpu4_crit: cpu_crit { 598*4882a593Smuzhiyun temperature = <110000>; 599*4882a593Smuzhiyun hysteresis = <2000>; 600*4882a593Smuzhiyun type = "critical"; 601*4882a593Smuzhiyun }; 602*4882a593Smuzhiyun }; 603*4882a593Smuzhiyun }; 604*4882a593Smuzhiyun 605*4882a593Smuzhiyun cpu5-thermal { 606*4882a593Smuzhiyun polling-delay-passive = <250>; 607*4882a593Smuzhiyun polling-delay = <1000>; 608*4882a593Smuzhiyun 609*4882a593Smuzhiyun thermal-sensors = <&tsens0 8>; 610*4882a593Smuzhiyun 611*4882a593Smuzhiyun trips { 612*4882a593Smuzhiyun cpu5_alert0: trip-point0 { 613*4882a593Smuzhiyun temperature = <75000>; 614*4882a593Smuzhiyun hysteresis = <2000>; 615*4882a593Smuzhiyun type = "passive"; 616*4882a593Smuzhiyun }; 617*4882a593Smuzhiyun 618*4882a593Smuzhiyun cpu5_crit: cpu_crit { 619*4882a593Smuzhiyun temperature = <110000>; 620*4882a593Smuzhiyun hysteresis = <2000>; 621*4882a593Smuzhiyun type = "critical"; 622*4882a593Smuzhiyun }; 623*4882a593Smuzhiyun }; 624*4882a593Smuzhiyun }; 625*4882a593Smuzhiyun 626*4882a593Smuzhiyun cpu6-thermal { 627*4882a593Smuzhiyun polling-delay-passive = <250>; 628*4882a593Smuzhiyun polling-delay = <1000>; 629*4882a593Smuzhiyun 630*4882a593Smuzhiyun thermal-sensors = <&tsens0 9>; 631*4882a593Smuzhiyun 632*4882a593Smuzhiyun trips { 633*4882a593Smuzhiyun cpu6_alert0: trip-point0 { 634*4882a593Smuzhiyun temperature = <75000>; 635*4882a593Smuzhiyun hysteresis = <2000>; 636*4882a593Smuzhiyun type = "passive"; 637*4882a593Smuzhiyun }; 638*4882a593Smuzhiyun 639*4882a593Smuzhiyun cpu6_crit: cpu_crit { 640*4882a593Smuzhiyun temperature = <110000>; 641*4882a593Smuzhiyun hysteresis = <2000>; 642*4882a593Smuzhiyun type = "critical"; 643*4882a593Smuzhiyun }; 644*4882a593Smuzhiyun }; 645*4882a593Smuzhiyun }; 646*4882a593Smuzhiyun 647*4882a593Smuzhiyun cpu7-thermal { 648*4882a593Smuzhiyun polling-delay-passive = <250>; 649*4882a593Smuzhiyun polling-delay = <1000>; 650*4882a593Smuzhiyun 651*4882a593Smuzhiyun thermal-sensors = <&tsens0 10>; 652*4882a593Smuzhiyun 653*4882a593Smuzhiyun trips { 654*4882a593Smuzhiyun cpu7_alert0: trip-point0 { 655*4882a593Smuzhiyun temperature = <75000>; 656*4882a593Smuzhiyun hysteresis = <2000>; 657*4882a593Smuzhiyun type = "passive"; 658*4882a593Smuzhiyun }; 659*4882a593Smuzhiyun 660*4882a593Smuzhiyun cpu7_crit: cpu_crit { 661*4882a593Smuzhiyun temperature = <110000>; 662*4882a593Smuzhiyun hysteresis = <2000>; 663*4882a593Smuzhiyun type = "critical"; 664*4882a593Smuzhiyun }; 665*4882a593Smuzhiyun }; 666*4882a593Smuzhiyun }; 667*4882a593Smuzhiyun 668*4882a593Smuzhiyun gpu-thermal-bottom { 669*4882a593Smuzhiyun polling-delay-passive = <250>; 670*4882a593Smuzhiyun polling-delay = <1000>; 671*4882a593Smuzhiyun 672*4882a593Smuzhiyun thermal-sensors = <&tsens0 12>; 673*4882a593Smuzhiyun 674*4882a593Smuzhiyun trips { 675*4882a593Smuzhiyun gpu1_alert0: trip-point0 { 676*4882a593Smuzhiyun temperature = <90000>; 677*4882a593Smuzhiyun hysteresis = <2000>; 678*4882a593Smuzhiyun type = "hot"; 679*4882a593Smuzhiyun }; 680*4882a593Smuzhiyun }; 681*4882a593Smuzhiyun }; 682*4882a593Smuzhiyun 683*4882a593Smuzhiyun gpu-thermal-top { 684*4882a593Smuzhiyun polling-delay-passive = <250>; 685*4882a593Smuzhiyun polling-delay = <1000>; 686*4882a593Smuzhiyun 687*4882a593Smuzhiyun thermal-sensors = <&tsens0 13>; 688*4882a593Smuzhiyun 689*4882a593Smuzhiyun trips { 690*4882a593Smuzhiyun gpu2_alert0: trip-point0 { 691*4882a593Smuzhiyun temperature = <90000>; 692*4882a593Smuzhiyun hysteresis = <2000>; 693*4882a593Smuzhiyun type = "hot"; 694*4882a593Smuzhiyun }; 695*4882a593Smuzhiyun }; 696*4882a593Smuzhiyun }; 697*4882a593Smuzhiyun 698*4882a593Smuzhiyun clust0-mhm-thermal { 699*4882a593Smuzhiyun polling-delay-passive = <250>; 700*4882a593Smuzhiyun polling-delay = <1000>; 701*4882a593Smuzhiyun 702*4882a593Smuzhiyun thermal-sensors = <&tsens0 5>; 703*4882a593Smuzhiyun 704*4882a593Smuzhiyun trips { 705*4882a593Smuzhiyun cluster0_mhm_alert0: trip-point0 { 706*4882a593Smuzhiyun temperature = <90000>; 707*4882a593Smuzhiyun hysteresis = <2000>; 708*4882a593Smuzhiyun type = "hot"; 709*4882a593Smuzhiyun }; 710*4882a593Smuzhiyun }; 711*4882a593Smuzhiyun }; 712*4882a593Smuzhiyun 713*4882a593Smuzhiyun clust1-mhm-thermal { 714*4882a593Smuzhiyun polling-delay-passive = <250>; 715*4882a593Smuzhiyun polling-delay = <1000>; 716*4882a593Smuzhiyun 717*4882a593Smuzhiyun thermal-sensors = <&tsens0 6>; 718*4882a593Smuzhiyun 719*4882a593Smuzhiyun trips { 720*4882a593Smuzhiyun cluster1_mhm_alert0: trip-point0 { 721*4882a593Smuzhiyun temperature = <90000>; 722*4882a593Smuzhiyun hysteresis = <2000>; 723*4882a593Smuzhiyun type = "hot"; 724*4882a593Smuzhiyun }; 725*4882a593Smuzhiyun }; 726*4882a593Smuzhiyun }; 727*4882a593Smuzhiyun 728*4882a593Smuzhiyun cluster1-l2-thermal { 729*4882a593Smuzhiyun polling-delay-passive = <250>; 730*4882a593Smuzhiyun polling-delay = <1000>; 731*4882a593Smuzhiyun 732*4882a593Smuzhiyun thermal-sensors = <&tsens0 11>; 733*4882a593Smuzhiyun 734*4882a593Smuzhiyun trips { 735*4882a593Smuzhiyun cluster1_l2_alert0: trip-point0 { 736*4882a593Smuzhiyun temperature = <90000>; 737*4882a593Smuzhiyun hysteresis = <2000>; 738*4882a593Smuzhiyun type = "hot"; 739*4882a593Smuzhiyun }; 740*4882a593Smuzhiyun }; 741*4882a593Smuzhiyun }; 742*4882a593Smuzhiyun 743*4882a593Smuzhiyun modem-thermal { 744*4882a593Smuzhiyun polling-delay-passive = <250>; 745*4882a593Smuzhiyun polling-delay = <1000>; 746*4882a593Smuzhiyun 747*4882a593Smuzhiyun thermal-sensors = <&tsens1 1>; 748*4882a593Smuzhiyun 749*4882a593Smuzhiyun trips { 750*4882a593Smuzhiyun modem_alert0: trip-point0 { 751*4882a593Smuzhiyun temperature = <90000>; 752*4882a593Smuzhiyun hysteresis = <2000>; 753*4882a593Smuzhiyun type = "hot"; 754*4882a593Smuzhiyun }; 755*4882a593Smuzhiyun }; 756*4882a593Smuzhiyun }; 757*4882a593Smuzhiyun 758*4882a593Smuzhiyun mem-thermal { 759*4882a593Smuzhiyun polling-delay-passive = <250>; 760*4882a593Smuzhiyun polling-delay = <1000>; 761*4882a593Smuzhiyun 762*4882a593Smuzhiyun thermal-sensors = <&tsens1 2>; 763*4882a593Smuzhiyun 764*4882a593Smuzhiyun trips { 765*4882a593Smuzhiyun mem_alert0: trip-point0 { 766*4882a593Smuzhiyun temperature = <90000>; 767*4882a593Smuzhiyun hysteresis = <2000>; 768*4882a593Smuzhiyun type = "hot"; 769*4882a593Smuzhiyun }; 770*4882a593Smuzhiyun }; 771*4882a593Smuzhiyun }; 772*4882a593Smuzhiyun 773*4882a593Smuzhiyun wlan-thermal { 774*4882a593Smuzhiyun polling-delay-passive = <250>; 775*4882a593Smuzhiyun polling-delay = <1000>; 776*4882a593Smuzhiyun 777*4882a593Smuzhiyun thermal-sensors = <&tsens1 3>; 778*4882a593Smuzhiyun 779*4882a593Smuzhiyun trips { 780*4882a593Smuzhiyun wlan_alert0: trip-point0 { 781*4882a593Smuzhiyun temperature = <90000>; 782*4882a593Smuzhiyun hysteresis = <2000>; 783*4882a593Smuzhiyun type = "hot"; 784*4882a593Smuzhiyun }; 785*4882a593Smuzhiyun }; 786*4882a593Smuzhiyun }; 787*4882a593Smuzhiyun 788*4882a593Smuzhiyun q6-dsp-thermal { 789*4882a593Smuzhiyun polling-delay-passive = <250>; 790*4882a593Smuzhiyun polling-delay = <1000>; 791*4882a593Smuzhiyun 792*4882a593Smuzhiyun thermal-sensors = <&tsens1 4>; 793*4882a593Smuzhiyun 794*4882a593Smuzhiyun trips { 795*4882a593Smuzhiyun q6_dsp_alert0: trip-point0 { 796*4882a593Smuzhiyun temperature = <90000>; 797*4882a593Smuzhiyun hysteresis = <2000>; 798*4882a593Smuzhiyun type = "hot"; 799*4882a593Smuzhiyun }; 800*4882a593Smuzhiyun }; 801*4882a593Smuzhiyun }; 802*4882a593Smuzhiyun 803*4882a593Smuzhiyun camera-thermal { 804*4882a593Smuzhiyun polling-delay-passive = <250>; 805*4882a593Smuzhiyun polling-delay = <1000>; 806*4882a593Smuzhiyun 807*4882a593Smuzhiyun thermal-sensors = <&tsens1 5>; 808*4882a593Smuzhiyun 809*4882a593Smuzhiyun trips { 810*4882a593Smuzhiyun camera_alert0: trip-point0 { 811*4882a593Smuzhiyun temperature = <90000>; 812*4882a593Smuzhiyun hysteresis = <2000>; 813*4882a593Smuzhiyun type = "hot"; 814*4882a593Smuzhiyun }; 815*4882a593Smuzhiyun }; 816*4882a593Smuzhiyun }; 817*4882a593Smuzhiyun 818*4882a593Smuzhiyun multimedia-thermal { 819*4882a593Smuzhiyun polling-delay-passive = <250>; 820*4882a593Smuzhiyun polling-delay = <1000>; 821*4882a593Smuzhiyun 822*4882a593Smuzhiyun thermal-sensors = <&tsens1 6>; 823*4882a593Smuzhiyun 824*4882a593Smuzhiyun trips { 825*4882a593Smuzhiyun multimedia_alert0: trip-point0 { 826*4882a593Smuzhiyun temperature = <90000>; 827*4882a593Smuzhiyun hysteresis = <2000>; 828*4882a593Smuzhiyun type = "hot"; 829*4882a593Smuzhiyun }; 830*4882a593Smuzhiyun }; 831*4882a593Smuzhiyun }; 832*4882a593Smuzhiyun }; 833*4882a593Smuzhiyun 834*4882a593Smuzhiyun timer { 835*4882a593Smuzhiyun compatible = "arm,armv8-timer"; 836*4882a593Smuzhiyun interrupts = <GIC_PPI 1 IRQ_TYPE_LEVEL_LOW>, 837*4882a593Smuzhiyun <GIC_PPI 2 IRQ_TYPE_LEVEL_LOW>, 838*4882a593Smuzhiyun <GIC_PPI 3 IRQ_TYPE_LEVEL_LOW>, 839*4882a593Smuzhiyun <GIC_PPI 0 IRQ_TYPE_LEVEL_LOW>; 840*4882a593Smuzhiyun }; 841*4882a593Smuzhiyun 842*4882a593Smuzhiyun soc: soc { 843*4882a593Smuzhiyun #address-cells = <1>; 844*4882a593Smuzhiyun #size-cells = <1>; 845*4882a593Smuzhiyun ranges = <0 0 0 0xffffffff>; 846*4882a593Smuzhiyun compatible = "simple-bus"; 847*4882a593Smuzhiyun 848*4882a593Smuzhiyun gcc: clock-controller@100000 { 849*4882a593Smuzhiyun compatible = "qcom,gcc-msm8998"; 850*4882a593Smuzhiyun #clock-cells = <1>; 851*4882a593Smuzhiyun #reset-cells = <1>; 852*4882a593Smuzhiyun #power-domain-cells = <1>; 853*4882a593Smuzhiyun reg = <0x00100000 0xb0000>; 854*4882a593Smuzhiyun }; 855*4882a593Smuzhiyun 856*4882a593Smuzhiyun rpm_msg_ram: memory@778000 { 857*4882a593Smuzhiyun compatible = "qcom,rpm-msg-ram"; 858*4882a593Smuzhiyun reg = <0x00778000 0x7000>; 859*4882a593Smuzhiyun }; 860*4882a593Smuzhiyun 861*4882a593Smuzhiyun qfprom: qfprom@780000 { 862*4882a593Smuzhiyun compatible = "qcom,qfprom"; 863*4882a593Smuzhiyun reg = <0x00780000 0x621c>; 864*4882a593Smuzhiyun #address-cells = <1>; 865*4882a593Smuzhiyun #size-cells = <1>; 866*4882a593Smuzhiyun 867*4882a593Smuzhiyun qusb2_hstx_trim: hstx-trim@423a { 868*4882a593Smuzhiyun reg = <0x423a 0x1>; 869*4882a593Smuzhiyun bits = <0 4>; 870*4882a593Smuzhiyun }; 871*4882a593Smuzhiyun }; 872*4882a593Smuzhiyun 873*4882a593Smuzhiyun tsens0: thermal@10ab000 { 874*4882a593Smuzhiyun compatible = "qcom,msm8998-tsens", "qcom,tsens-v2"; 875*4882a593Smuzhiyun reg = <0x010ab000 0x1000>, /* TM */ 876*4882a593Smuzhiyun <0x010aa000 0x1000>; /* SROT */ 877*4882a593Smuzhiyun #qcom,sensors = <14>; 878*4882a593Smuzhiyun interrupts = <GIC_SPI 458 IRQ_TYPE_LEVEL_HIGH>, 879*4882a593Smuzhiyun <GIC_SPI 445 IRQ_TYPE_LEVEL_HIGH>; 880*4882a593Smuzhiyun interrupt-names = "uplow", "critical"; 881*4882a593Smuzhiyun #thermal-sensor-cells = <1>; 882*4882a593Smuzhiyun }; 883*4882a593Smuzhiyun 884*4882a593Smuzhiyun tsens1: thermal@10ae000 { 885*4882a593Smuzhiyun compatible = "qcom,msm8998-tsens", "qcom,tsens-v2"; 886*4882a593Smuzhiyun reg = <0x010ae000 0x1000>, /* TM */ 887*4882a593Smuzhiyun <0x010ad000 0x1000>; /* SROT */ 888*4882a593Smuzhiyun #qcom,sensors = <8>; 889*4882a593Smuzhiyun interrupts = <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>, 890*4882a593Smuzhiyun <GIC_SPI 430 IRQ_TYPE_LEVEL_HIGH>; 891*4882a593Smuzhiyun interrupt-names = "uplow", "critical"; 892*4882a593Smuzhiyun #thermal-sensor-cells = <1>; 893*4882a593Smuzhiyun }; 894*4882a593Smuzhiyun 895*4882a593Smuzhiyun anoc1_smmu: iommu@1680000 { 896*4882a593Smuzhiyun compatible = "qcom,msm8998-smmu-v2", "qcom,smmu-v2"; 897*4882a593Smuzhiyun reg = <0x01680000 0x10000>; 898*4882a593Smuzhiyun #iommu-cells = <1>; 899*4882a593Smuzhiyun 900*4882a593Smuzhiyun #global-interrupts = <0>; 901*4882a593Smuzhiyun interrupts = 902*4882a593Smuzhiyun <GIC_SPI 364 IRQ_TYPE_EDGE_RISING>, 903*4882a593Smuzhiyun <GIC_SPI 365 IRQ_TYPE_EDGE_RISING>, 904*4882a593Smuzhiyun <GIC_SPI 366 IRQ_TYPE_EDGE_RISING>, 905*4882a593Smuzhiyun <GIC_SPI 367 IRQ_TYPE_EDGE_RISING>, 906*4882a593Smuzhiyun <GIC_SPI 368 IRQ_TYPE_EDGE_RISING>, 907*4882a593Smuzhiyun <GIC_SPI 369 IRQ_TYPE_EDGE_RISING>; 908*4882a593Smuzhiyun }; 909*4882a593Smuzhiyun 910*4882a593Smuzhiyun anoc2_smmu: iommu@16c0000 { 911*4882a593Smuzhiyun compatible = "qcom,msm8998-smmu-v2", "qcom,smmu-v2"; 912*4882a593Smuzhiyun reg = <0x016c0000 0x40000>; 913*4882a593Smuzhiyun #iommu-cells = <1>; 914*4882a593Smuzhiyun 915*4882a593Smuzhiyun #global-interrupts = <0>; 916*4882a593Smuzhiyun interrupts = 917*4882a593Smuzhiyun <GIC_SPI 373 IRQ_TYPE_EDGE_RISING>, 918*4882a593Smuzhiyun <GIC_SPI 374 IRQ_TYPE_EDGE_RISING>, 919*4882a593Smuzhiyun <GIC_SPI 375 IRQ_TYPE_EDGE_RISING>, 920*4882a593Smuzhiyun <GIC_SPI 376 IRQ_TYPE_EDGE_RISING>, 921*4882a593Smuzhiyun <GIC_SPI 377 IRQ_TYPE_EDGE_RISING>, 922*4882a593Smuzhiyun <GIC_SPI 378 IRQ_TYPE_EDGE_RISING>, 923*4882a593Smuzhiyun <GIC_SPI 462 IRQ_TYPE_EDGE_RISING>, 924*4882a593Smuzhiyun <GIC_SPI 463 IRQ_TYPE_EDGE_RISING>, 925*4882a593Smuzhiyun <GIC_SPI 464 IRQ_TYPE_EDGE_RISING>, 926*4882a593Smuzhiyun <GIC_SPI 465 IRQ_TYPE_EDGE_RISING>; 927*4882a593Smuzhiyun }; 928*4882a593Smuzhiyun 929*4882a593Smuzhiyun pcie0: pci@1c00000 { 930*4882a593Smuzhiyun compatible = "qcom,pcie-msm8996"; 931*4882a593Smuzhiyun reg = <0x01c00000 0x2000>, 932*4882a593Smuzhiyun <0x1b000000 0xf1d>, 933*4882a593Smuzhiyun <0x1b000f20 0xa8>, 934*4882a593Smuzhiyun <0x1b100000 0x100000>; 935*4882a593Smuzhiyun reg-names = "parf", "dbi", "elbi", "config"; 936*4882a593Smuzhiyun device_type = "pci"; 937*4882a593Smuzhiyun linux,pci-domain = <0>; 938*4882a593Smuzhiyun bus-range = <0x00 0xff>; 939*4882a593Smuzhiyun #address-cells = <3>; 940*4882a593Smuzhiyun #size-cells = <2>; 941*4882a593Smuzhiyun num-lanes = <1>; 942*4882a593Smuzhiyun phys = <&pciephy>; 943*4882a593Smuzhiyun phy-names = "pciephy"; 944*4882a593Smuzhiyun 945*4882a593Smuzhiyun ranges = <0x01000000 0x0 0x1b200000 0x1b200000 0x0 0x100000>, 946*4882a593Smuzhiyun <0x02000000 0x0 0x1b300000 0x1b300000 0x0 0xd00000>; 947*4882a593Smuzhiyun 948*4882a593Smuzhiyun #interrupt-cells = <1>; 949*4882a593Smuzhiyun interrupts = <GIC_SPI 405 IRQ_TYPE_LEVEL_HIGH>; 950*4882a593Smuzhiyun interrupt-names = "msi"; 951*4882a593Smuzhiyun interrupt-map-mask = <0 0 0 0x7>; 952*4882a593Smuzhiyun interrupt-map = <0 0 0 1 &intc 0 135 IRQ_TYPE_LEVEL_HIGH>, 953*4882a593Smuzhiyun <0 0 0 2 &intc 0 136 IRQ_TYPE_LEVEL_HIGH>, 954*4882a593Smuzhiyun <0 0 0 3 &intc 0 138 IRQ_TYPE_LEVEL_HIGH>, 955*4882a593Smuzhiyun <0 0 0 4 &intc 0 139 IRQ_TYPE_LEVEL_HIGH>; 956*4882a593Smuzhiyun 957*4882a593Smuzhiyun clocks = <&gcc GCC_PCIE_0_PIPE_CLK>, 958*4882a593Smuzhiyun <&gcc GCC_PCIE_0_MSTR_AXI_CLK>, 959*4882a593Smuzhiyun <&gcc GCC_PCIE_0_SLV_AXI_CLK>, 960*4882a593Smuzhiyun <&gcc GCC_PCIE_0_CFG_AHB_CLK>, 961*4882a593Smuzhiyun <&gcc GCC_PCIE_0_AUX_CLK>; 962*4882a593Smuzhiyun clock-names = "pipe", "bus_master", "bus_slave", "cfg", "aux"; 963*4882a593Smuzhiyun 964*4882a593Smuzhiyun power-domains = <&gcc PCIE_0_GDSC>; 965*4882a593Smuzhiyun iommu-map = <0x100 &anoc1_smmu 0x1480 1>; 966*4882a593Smuzhiyun perst-gpios = <&tlmm 35 GPIO_ACTIVE_LOW>; 967*4882a593Smuzhiyun }; 968*4882a593Smuzhiyun 969*4882a593Smuzhiyun phy@1c06000 { 970*4882a593Smuzhiyun compatible = "qcom,msm8998-qmp-pcie-phy"; 971*4882a593Smuzhiyun reg = <0x01c06000 0x18c>; 972*4882a593Smuzhiyun #address-cells = <1>; 973*4882a593Smuzhiyun #size-cells = <1>; 974*4882a593Smuzhiyun ranges; 975*4882a593Smuzhiyun 976*4882a593Smuzhiyun clocks = <&gcc GCC_PCIE_PHY_AUX_CLK>, 977*4882a593Smuzhiyun <&gcc GCC_PCIE_0_CFG_AHB_CLK>, 978*4882a593Smuzhiyun <&gcc GCC_PCIE_CLKREF_CLK>; 979*4882a593Smuzhiyun clock-names = "aux", "cfg_ahb", "ref"; 980*4882a593Smuzhiyun 981*4882a593Smuzhiyun resets = <&gcc GCC_PCIE_0_PHY_BCR>, <&gcc GCC_PCIE_PHY_BCR>; 982*4882a593Smuzhiyun reset-names = "phy", "common"; 983*4882a593Smuzhiyun 984*4882a593Smuzhiyun vdda-phy-supply = <&vreg_l1a_0p875>; 985*4882a593Smuzhiyun vdda-pll-supply = <&vreg_l2a_1p2>; 986*4882a593Smuzhiyun 987*4882a593Smuzhiyun pciephy: lane@1c06800 { 988*4882a593Smuzhiyun reg = <0x01c06200 0x128>, <0x01c06400 0x1fc>, <0x01c06800 0x20c>; 989*4882a593Smuzhiyun #phy-cells = <0>; 990*4882a593Smuzhiyun 991*4882a593Smuzhiyun clocks = <&gcc GCC_PCIE_0_PIPE_CLK>; 992*4882a593Smuzhiyun clock-names = "pipe0"; 993*4882a593Smuzhiyun clock-output-names = "pcie_0_pipe_clk_src"; 994*4882a593Smuzhiyun #clock-cells = <0>; 995*4882a593Smuzhiyun }; 996*4882a593Smuzhiyun }; 997*4882a593Smuzhiyun 998*4882a593Smuzhiyun ufshc: ufshc@1da4000 { 999*4882a593Smuzhiyun compatible = "qcom,msm8998-ufshc", "qcom,ufshc", "jedec,ufs-2.0"; 1000*4882a593Smuzhiyun reg = <0x01da4000 0x2500>; 1001*4882a593Smuzhiyun interrupts = <GIC_SPI 265 IRQ_TYPE_LEVEL_HIGH>; 1002*4882a593Smuzhiyun phys = <&ufsphy_lanes>; 1003*4882a593Smuzhiyun phy-names = "ufsphy"; 1004*4882a593Smuzhiyun lanes-per-direction = <2>; 1005*4882a593Smuzhiyun power-domains = <&gcc UFS_GDSC>; 1006*4882a593Smuzhiyun #reset-cells = <1>; 1007*4882a593Smuzhiyun 1008*4882a593Smuzhiyun clock-names = 1009*4882a593Smuzhiyun "core_clk", 1010*4882a593Smuzhiyun "bus_aggr_clk", 1011*4882a593Smuzhiyun "iface_clk", 1012*4882a593Smuzhiyun "core_clk_unipro", 1013*4882a593Smuzhiyun "ref_clk", 1014*4882a593Smuzhiyun "tx_lane0_sync_clk", 1015*4882a593Smuzhiyun "rx_lane0_sync_clk", 1016*4882a593Smuzhiyun "rx_lane1_sync_clk"; 1017*4882a593Smuzhiyun clocks = 1018*4882a593Smuzhiyun <&gcc GCC_UFS_AXI_CLK>, 1019*4882a593Smuzhiyun <&gcc GCC_AGGRE1_UFS_AXI_CLK>, 1020*4882a593Smuzhiyun <&gcc GCC_UFS_AHB_CLK>, 1021*4882a593Smuzhiyun <&gcc GCC_UFS_UNIPRO_CORE_CLK>, 1022*4882a593Smuzhiyun <&rpmcc RPM_SMD_LN_BB_CLK1>, 1023*4882a593Smuzhiyun <&gcc GCC_UFS_TX_SYMBOL_0_CLK>, 1024*4882a593Smuzhiyun <&gcc GCC_UFS_RX_SYMBOL_0_CLK>, 1025*4882a593Smuzhiyun <&gcc GCC_UFS_RX_SYMBOL_1_CLK>; 1026*4882a593Smuzhiyun freq-table-hz = 1027*4882a593Smuzhiyun <50000000 200000000>, 1028*4882a593Smuzhiyun <0 0>, 1029*4882a593Smuzhiyun <0 0>, 1030*4882a593Smuzhiyun <37500000 150000000>, 1031*4882a593Smuzhiyun <0 0>, 1032*4882a593Smuzhiyun <0 0>, 1033*4882a593Smuzhiyun <0 0>, 1034*4882a593Smuzhiyun <0 0>; 1035*4882a593Smuzhiyun 1036*4882a593Smuzhiyun resets = <&gcc GCC_UFS_BCR>; 1037*4882a593Smuzhiyun reset-names = "rst"; 1038*4882a593Smuzhiyun }; 1039*4882a593Smuzhiyun 1040*4882a593Smuzhiyun ufsphy: phy@1da7000 { 1041*4882a593Smuzhiyun compatible = "qcom,msm8998-qmp-ufs-phy"; 1042*4882a593Smuzhiyun reg = <0x01da7000 0x18c>; 1043*4882a593Smuzhiyun #address-cells = <1>; 1044*4882a593Smuzhiyun #size-cells = <1>; 1045*4882a593Smuzhiyun ranges; 1046*4882a593Smuzhiyun 1047*4882a593Smuzhiyun clock-names = 1048*4882a593Smuzhiyun "ref", 1049*4882a593Smuzhiyun "ref_aux"; 1050*4882a593Smuzhiyun clocks = 1051*4882a593Smuzhiyun <&gcc GCC_UFS_CLKREF_CLK>, 1052*4882a593Smuzhiyun <&gcc GCC_UFS_PHY_AUX_CLK>; 1053*4882a593Smuzhiyun 1054*4882a593Smuzhiyun reset-names = "ufsphy"; 1055*4882a593Smuzhiyun resets = <&ufshc 0>; 1056*4882a593Smuzhiyun 1057*4882a593Smuzhiyun ufsphy_lanes: lanes@1da7400 { 1058*4882a593Smuzhiyun reg = <0x01da7400 0x128>, 1059*4882a593Smuzhiyun <0x01da7600 0x1fc>, 1060*4882a593Smuzhiyun <0x01da7c00 0x1dc>, 1061*4882a593Smuzhiyun <0x01da7800 0x128>, 1062*4882a593Smuzhiyun <0x01da7a00 0x1fc>; 1063*4882a593Smuzhiyun #phy-cells = <0>; 1064*4882a593Smuzhiyun }; 1065*4882a593Smuzhiyun }; 1066*4882a593Smuzhiyun 1067*4882a593Smuzhiyun tcsr_mutex_regs: syscon@1f40000 { 1068*4882a593Smuzhiyun compatible = "syscon"; 1069*4882a593Smuzhiyun reg = <0x01f40000 0x40000>; 1070*4882a593Smuzhiyun }; 1071*4882a593Smuzhiyun 1072*4882a593Smuzhiyun tlmm: pinctrl@3400000 { 1073*4882a593Smuzhiyun compatible = "qcom,msm8998-pinctrl"; 1074*4882a593Smuzhiyun reg = <0x03400000 0xc00000>; 1075*4882a593Smuzhiyun interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>; 1076*4882a593Smuzhiyun gpio-controller; 1077*4882a593Smuzhiyun #gpio-cells = <0x2>; 1078*4882a593Smuzhiyun interrupt-controller; 1079*4882a593Smuzhiyun #interrupt-cells = <0x2>; 1080*4882a593Smuzhiyun }; 1081*4882a593Smuzhiyun 1082*4882a593Smuzhiyun remoteproc_mss: remoteproc@4080000 { 1083*4882a593Smuzhiyun compatible = "qcom,msm8998-mss-pil"; 1084*4882a593Smuzhiyun reg = <0x04080000 0x100>, <0x04180000 0x20>; 1085*4882a593Smuzhiyun reg-names = "qdsp6", "rmb"; 1086*4882a593Smuzhiyun 1087*4882a593Smuzhiyun interrupts-extended = 1088*4882a593Smuzhiyun <&intc GIC_SPI 448 IRQ_TYPE_EDGE_RISING>, 1089*4882a593Smuzhiyun <&modem_smp2p_in 0 IRQ_TYPE_EDGE_RISING>, 1090*4882a593Smuzhiyun <&modem_smp2p_in 1 IRQ_TYPE_EDGE_RISING>, 1091*4882a593Smuzhiyun <&modem_smp2p_in 2 IRQ_TYPE_EDGE_RISING>, 1092*4882a593Smuzhiyun <&modem_smp2p_in 3 IRQ_TYPE_EDGE_RISING>, 1093*4882a593Smuzhiyun <&modem_smp2p_in 7 IRQ_TYPE_EDGE_RISING>; 1094*4882a593Smuzhiyun interrupt-names = "wdog", "fatal", "ready", 1095*4882a593Smuzhiyun "handover", "stop-ack", 1096*4882a593Smuzhiyun "shutdown-ack"; 1097*4882a593Smuzhiyun 1098*4882a593Smuzhiyun clocks = <&gcc GCC_MSS_CFG_AHB_CLK>, 1099*4882a593Smuzhiyun <&gcc GCC_BIMC_MSS_Q6_AXI_CLK>, 1100*4882a593Smuzhiyun <&gcc GCC_BOOT_ROM_AHB_CLK>, 1101*4882a593Smuzhiyun <&gcc GCC_MSS_GPLL0_DIV_CLK_SRC>, 1102*4882a593Smuzhiyun <&gcc GCC_MSS_SNOC_AXI_CLK>, 1103*4882a593Smuzhiyun <&gcc GCC_MSS_MNOC_BIMC_AXI_CLK>, 1104*4882a593Smuzhiyun <&rpmcc RPM_SMD_QDSS_CLK>, 1105*4882a593Smuzhiyun <&rpmcc RPM_SMD_XO_CLK_SRC>; 1106*4882a593Smuzhiyun clock-names = "iface", "bus", "mem", "gpll0_mss", 1107*4882a593Smuzhiyun "snoc_axi", "mnoc_axi", "qdss", "xo"; 1108*4882a593Smuzhiyun 1109*4882a593Smuzhiyun qcom,smem-states = <&modem_smp2p_out 0>; 1110*4882a593Smuzhiyun qcom,smem-state-names = "stop"; 1111*4882a593Smuzhiyun 1112*4882a593Smuzhiyun resets = <&gcc GCC_MSS_RESTART>; 1113*4882a593Smuzhiyun reset-names = "mss_restart"; 1114*4882a593Smuzhiyun 1115*4882a593Smuzhiyun qcom,halt-regs = <&tcsr_mutex_regs 0x23000 0x25000 0x24000>; 1116*4882a593Smuzhiyun 1117*4882a593Smuzhiyun power-domains = <&rpmpd MSM8998_VDDCX>, 1118*4882a593Smuzhiyun <&rpmpd MSM8998_VDDMX>; 1119*4882a593Smuzhiyun power-domain-names = "cx", "mx"; 1120*4882a593Smuzhiyun 1121*4882a593Smuzhiyun mba { 1122*4882a593Smuzhiyun memory-region = <&mba_mem>; 1123*4882a593Smuzhiyun }; 1124*4882a593Smuzhiyun 1125*4882a593Smuzhiyun mpss { 1126*4882a593Smuzhiyun memory-region = <&mpss_mem>; 1127*4882a593Smuzhiyun }; 1128*4882a593Smuzhiyun 1129*4882a593Smuzhiyun glink-edge { 1130*4882a593Smuzhiyun interrupts = <GIC_SPI 452 IRQ_TYPE_EDGE_RISING>; 1131*4882a593Smuzhiyun label = "modem"; 1132*4882a593Smuzhiyun qcom,remote-pid = <1>; 1133*4882a593Smuzhiyun mboxes = <&apcs_glb 15>; 1134*4882a593Smuzhiyun }; 1135*4882a593Smuzhiyun }; 1136*4882a593Smuzhiyun 1137*4882a593Smuzhiyun gpucc: clock-controller@5065000 { 1138*4882a593Smuzhiyun compatible = "qcom,msm8998-gpucc"; 1139*4882a593Smuzhiyun #clock-cells = <1>; 1140*4882a593Smuzhiyun #reset-cells = <1>; 1141*4882a593Smuzhiyun #power-domain-cells = <1>; 1142*4882a593Smuzhiyun reg = <0x05065000 0x9000>; 1143*4882a593Smuzhiyun 1144*4882a593Smuzhiyun clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>, 1145*4882a593Smuzhiyun <&gcc GPLL0_OUT_MAIN>; 1146*4882a593Smuzhiyun clock-names = "xo", 1147*4882a593Smuzhiyun "gpll0"; 1148*4882a593Smuzhiyun }; 1149*4882a593Smuzhiyun 1150*4882a593Smuzhiyun remoteproc_slpi: remoteproc@5800000 { 1151*4882a593Smuzhiyun compatible = "qcom,msm8998-slpi-pas"; 1152*4882a593Smuzhiyun reg = <0x05800000 0x4040>; 1153*4882a593Smuzhiyun 1154*4882a593Smuzhiyun interrupts-extended = <&intc GIC_SPI 390 IRQ_TYPE_EDGE_RISING>, 1155*4882a593Smuzhiyun <&slpi_smp2p_in 0 IRQ_TYPE_EDGE_RISING>, 1156*4882a593Smuzhiyun <&slpi_smp2p_in 1 IRQ_TYPE_EDGE_RISING>, 1157*4882a593Smuzhiyun <&slpi_smp2p_in 2 IRQ_TYPE_EDGE_RISING>, 1158*4882a593Smuzhiyun <&slpi_smp2p_in 3 IRQ_TYPE_EDGE_RISING>; 1159*4882a593Smuzhiyun interrupt-names = "wdog", "fatal", "ready", 1160*4882a593Smuzhiyun "handover", "stop-ack"; 1161*4882a593Smuzhiyun 1162*4882a593Smuzhiyun px-supply = <&vreg_lvs2a_1p8>; 1163*4882a593Smuzhiyun 1164*4882a593Smuzhiyun clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>, 1165*4882a593Smuzhiyun <&rpmcc RPM_SMD_AGGR2_NOC_CLK>; 1166*4882a593Smuzhiyun clock-names = "xo", "aggre2"; 1167*4882a593Smuzhiyun 1168*4882a593Smuzhiyun memory-region = <&slpi_mem>; 1169*4882a593Smuzhiyun 1170*4882a593Smuzhiyun qcom,smem-states = <&slpi_smp2p_out 0>; 1171*4882a593Smuzhiyun qcom,smem-state-names = "stop"; 1172*4882a593Smuzhiyun 1173*4882a593Smuzhiyun power-domains = <&rpmpd MSM8998_SSCCX>; 1174*4882a593Smuzhiyun power-domain-names = "ssc_cx"; 1175*4882a593Smuzhiyun 1176*4882a593Smuzhiyun status = "disabled"; 1177*4882a593Smuzhiyun 1178*4882a593Smuzhiyun glink-edge { 1179*4882a593Smuzhiyun interrupts = <GIC_SPI 179 IRQ_TYPE_EDGE_RISING>; 1180*4882a593Smuzhiyun label = "dsps"; 1181*4882a593Smuzhiyun qcom,remote-pid = <3>; 1182*4882a593Smuzhiyun mboxes = <&apcs_glb 27>; 1183*4882a593Smuzhiyun }; 1184*4882a593Smuzhiyun }; 1185*4882a593Smuzhiyun 1186*4882a593Smuzhiyun stm: stm@6002000 { 1187*4882a593Smuzhiyun compatible = "arm,coresight-stm", "arm,primecell"; 1188*4882a593Smuzhiyun reg = <0x06002000 0x1000>, 1189*4882a593Smuzhiyun <0x16280000 0x180000>; 1190*4882a593Smuzhiyun reg-names = "stm-base", "stm-data-base"; 1191*4882a593Smuzhiyun status = "disabled"; 1192*4882a593Smuzhiyun 1193*4882a593Smuzhiyun clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; 1194*4882a593Smuzhiyun clock-names = "apb_pclk", "atclk"; 1195*4882a593Smuzhiyun 1196*4882a593Smuzhiyun out-ports { 1197*4882a593Smuzhiyun port { 1198*4882a593Smuzhiyun stm_out: endpoint { 1199*4882a593Smuzhiyun remote-endpoint = <&funnel0_in7>; 1200*4882a593Smuzhiyun }; 1201*4882a593Smuzhiyun }; 1202*4882a593Smuzhiyun }; 1203*4882a593Smuzhiyun }; 1204*4882a593Smuzhiyun 1205*4882a593Smuzhiyun funnel1: funnel@6041000 { 1206*4882a593Smuzhiyun compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 1207*4882a593Smuzhiyun reg = <0x06041000 0x1000>; 1208*4882a593Smuzhiyun status = "disabled"; 1209*4882a593Smuzhiyun 1210*4882a593Smuzhiyun clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; 1211*4882a593Smuzhiyun clock-names = "apb_pclk", "atclk"; 1212*4882a593Smuzhiyun 1213*4882a593Smuzhiyun out-ports { 1214*4882a593Smuzhiyun port { 1215*4882a593Smuzhiyun funnel0_out: endpoint { 1216*4882a593Smuzhiyun remote-endpoint = 1217*4882a593Smuzhiyun <&merge_funnel_in0>; 1218*4882a593Smuzhiyun }; 1219*4882a593Smuzhiyun }; 1220*4882a593Smuzhiyun }; 1221*4882a593Smuzhiyun 1222*4882a593Smuzhiyun in-ports { 1223*4882a593Smuzhiyun #address-cells = <1>; 1224*4882a593Smuzhiyun #size-cells = <0>; 1225*4882a593Smuzhiyun 1226*4882a593Smuzhiyun port@7 { 1227*4882a593Smuzhiyun reg = <7>; 1228*4882a593Smuzhiyun funnel0_in7: endpoint { 1229*4882a593Smuzhiyun remote-endpoint = <&stm_out>; 1230*4882a593Smuzhiyun }; 1231*4882a593Smuzhiyun }; 1232*4882a593Smuzhiyun }; 1233*4882a593Smuzhiyun }; 1234*4882a593Smuzhiyun 1235*4882a593Smuzhiyun funnel2: funnel@6042000 { 1236*4882a593Smuzhiyun compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 1237*4882a593Smuzhiyun reg = <0x06042000 0x1000>; 1238*4882a593Smuzhiyun status = "disabled"; 1239*4882a593Smuzhiyun 1240*4882a593Smuzhiyun clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; 1241*4882a593Smuzhiyun clock-names = "apb_pclk", "atclk"; 1242*4882a593Smuzhiyun 1243*4882a593Smuzhiyun out-ports { 1244*4882a593Smuzhiyun port { 1245*4882a593Smuzhiyun funnel1_out: endpoint { 1246*4882a593Smuzhiyun remote-endpoint = 1247*4882a593Smuzhiyun <&merge_funnel_in1>; 1248*4882a593Smuzhiyun }; 1249*4882a593Smuzhiyun }; 1250*4882a593Smuzhiyun }; 1251*4882a593Smuzhiyun 1252*4882a593Smuzhiyun in-ports { 1253*4882a593Smuzhiyun #address-cells = <1>; 1254*4882a593Smuzhiyun #size-cells = <0>; 1255*4882a593Smuzhiyun 1256*4882a593Smuzhiyun port@6 { 1257*4882a593Smuzhiyun reg = <6>; 1258*4882a593Smuzhiyun funnel1_in6: endpoint { 1259*4882a593Smuzhiyun remote-endpoint = 1260*4882a593Smuzhiyun <&apss_merge_funnel_out>; 1261*4882a593Smuzhiyun }; 1262*4882a593Smuzhiyun }; 1263*4882a593Smuzhiyun }; 1264*4882a593Smuzhiyun }; 1265*4882a593Smuzhiyun 1266*4882a593Smuzhiyun funnel3: funnel@6045000 { 1267*4882a593Smuzhiyun compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 1268*4882a593Smuzhiyun reg = <0x06045000 0x1000>; 1269*4882a593Smuzhiyun status = "disabled"; 1270*4882a593Smuzhiyun 1271*4882a593Smuzhiyun clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; 1272*4882a593Smuzhiyun clock-names = "apb_pclk", "atclk"; 1273*4882a593Smuzhiyun 1274*4882a593Smuzhiyun out-ports { 1275*4882a593Smuzhiyun port { 1276*4882a593Smuzhiyun merge_funnel_out: endpoint { 1277*4882a593Smuzhiyun remote-endpoint = 1278*4882a593Smuzhiyun <&etf_in>; 1279*4882a593Smuzhiyun }; 1280*4882a593Smuzhiyun }; 1281*4882a593Smuzhiyun }; 1282*4882a593Smuzhiyun 1283*4882a593Smuzhiyun in-ports { 1284*4882a593Smuzhiyun #address-cells = <1>; 1285*4882a593Smuzhiyun #size-cells = <0>; 1286*4882a593Smuzhiyun 1287*4882a593Smuzhiyun port@0 { 1288*4882a593Smuzhiyun reg = <0>; 1289*4882a593Smuzhiyun merge_funnel_in0: endpoint { 1290*4882a593Smuzhiyun remote-endpoint = 1291*4882a593Smuzhiyun <&funnel0_out>; 1292*4882a593Smuzhiyun }; 1293*4882a593Smuzhiyun }; 1294*4882a593Smuzhiyun 1295*4882a593Smuzhiyun port@1 { 1296*4882a593Smuzhiyun reg = <1>; 1297*4882a593Smuzhiyun merge_funnel_in1: endpoint { 1298*4882a593Smuzhiyun remote-endpoint = 1299*4882a593Smuzhiyun <&funnel1_out>; 1300*4882a593Smuzhiyun }; 1301*4882a593Smuzhiyun }; 1302*4882a593Smuzhiyun }; 1303*4882a593Smuzhiyun }; 1304*4882a593Smuzhiyun 1305*4882a593Smuzhiyun replicator1: replicator@6046000 { 1306*4882a593Smuzhiyun compatible = "arm,coresight-dynamic-replicator", "arm,primecell"; 1307*4882a593Smuzhiyun reg = <0x06046000 0x1000>; 1308*4882a593Smuzhiyun status = "disabled"; 1309*4882a593Smuzhiyun 1310*4882a593Smuzhiyun clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; 1311*4882a593Smuzhiyun clock-names = "apb_pclk", "atclk"; 1312*4882a593Smuzhiyun 1313*4882a593Smuzhiyun out-ports { 1314*4882a593Smuzhiyun port { 1315*4882a593Smuzhiyun replicator_out: endpoint { 1316*4882a593Smuzhiyun remote-endpoint = <&etr_in>; 1317*4882a593Smuzhiyun }; 1318*4882a593Smuzhiyun }; 1319*4882a593Smuzhiyun }; 1320*4882a593Smuzhiyun 1321*4882a593Smuzhiyun in-ports { 1322*4882a593Smuzhiyun port { 1323*4882a593Smuzhiyun replicator_in: endpoint { 1324*4882a593Smuzhiyun remote-endpoint = <&etf_out>; 1325*4882a593Smuzhiyun }; 1326*4882a593Smuzhiyun }; 1327*4882a593Smuzhiyun }; 1328*4882a593Smuzhiyun }; 1329*4882a593Smuzhiyun 1330*4882a593Smuzhiyun etf: etf@6047000 { 1331*4882a593Smuzhiyun compatible = "arm,coresight-tmc", "arm,primecell"; 1332*4882a593Smuzhiyun reg = <0x06047000 0x1000>; 1333*4882a593Smuzhiyun status = "disabled"; 1334*4882a593Smuzhiyun 1335*4882a593Smuzhiyun clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; 1336*4882a593Smuzhiyun clock-names = "apb_pclk", "atclk"; 1337*4882a593Smuzhiyun 1338*4882a593Smuzhiyun out-ports { 1339*4882a593Smuzhiyun port { 1340*4882a593Smuzhiyun etf_out: endpoint { 1341*4882a593Smuzhiyun remote-endpoint = 1342*4882a593Smuzhiyun <&replicator_in>; 1343*4882a593Smuzhiyun }; 1344*4882a593Smuzhiyun }; 1345*4882a593Smuzhiyun }; 1346*4882a593Smuzhiyun 1347*4882a593Smuzhiyun in-ports { 1348*4882a593Smuzhiyun port { 1349*4882a593Smuzhiyun etf_in: endpoint { 1350*4882a593Smuzhiyun remote-endpoint = 1351*4882a593Smuzhiyun <&merge_funnel_out>; 1352*4882a593Smuzhiyun }; 1353*4882a593Smuzhiyun }; 1354*4882a593Smuzhiyun }; 1355*4882a593Smuzhiyun }; 1356*4882a593Smuzhiyun 1357*4882a593Smuzhiyun etr: etr@6048000 { 1358*4882a593Smuzhiyun compatible = "arm,coresight-tmc", "arm,primecell"; 1359*4882a593Smuzhiyun reg = <0x06048000 0x1000>; 1360*4882a593Smuzhiyun status = "disabled"; 1361*4882a593Smuzhiyun 1362*4882a593Smuzhiyun clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; 1363*4882a593Smuzhiyun clock-names = "apb_pclk", "atclk"; 1364*4882a593Smuzhiyun arm,scatter-gather; 1365*4882a593Smuzhiyun 1366*4882a593Smuzhiyun in-ports { 1367*4882a593Smuzhiyun port { 1368*4882a593Smuzhiyun etr_in: endpoint { 1369*4882a593Smuzhiyun remote-endpoint = 1370*4882a593Smuzhiyun <&replicator_out>; 1371*4882a593Smuzhiyun }; 1372*4882a593Smuzhiyun }; 1373*4882a593Smuzhiyun }; 1374*4882a593Smuzhiyun }; 1375*4882a593Smuzhiyun 1376*4882a593Smuzhiyun etm1: etm@7840000 { 1377*4882a593Smuzhiyun compatible = "arm,coresight-etm4x", "arm,primecell"; 1378*4882a593Smuzhiyun reg = <0x07840000 0x1000>; 1379*4882a593Smuzhiyun status = "disabled"; 1380*4882a593Smuzhiyun 1381*4882a593Smuzhiyun clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; 1382*4882a593Smuzhiyun clock-names = "apb_pclk", "atclk"; 1383*4882a593Smuzhiyun 1384*4882a593Smuzhiyun cpu = <&CPU0>; 1385*4882a593Smuzhiyun 1386*4882a593Smuzhiyun out-ports { 1387*4882a593Smuzhiyun port { 1388*4882a593Smuzhiyun etm0_out: endpoint { 1389*4882a593Smuzhiyun remote-endpoint = 1390*4882a593Smuzhiyun <&apss_funnel_in0>; 1391*4882a593Smuzhiyun }; 1392*4882a593Smuzhiyun }; 1393*4882a593Smuzhiyun }; 1394*4882a593Smuzhiyun }; 1395*4882a593Smuzhiyun 1396*4882a593Smuzhiyun etm2: etm@7940000 { 1397*4882a593Smuzhiyun compatible = "arm,coresight-etm4x", "arm,primecell"; 1398*4882a593Smuzhiyun reg = <0x07940000 0x1000>; 1399*4882a593Smuzhiyun status = "disabled"; 1400*4882a593Smuzhiyun 1401*4882a593Smuzhiyun clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; 1402*4882a593Smuzhiyun clock-names = "apb_pclk", "atclk"; 1403*4882a593Smuzhiyun 1404*4882a593Smuzhiyun cpu = <&CPU1>; 1405*4882a593Smuzhiyun 1406*4882a593Smuzhiyun out-ports { 1407*4882a593Smuzhiyun port { 1408*4882a593Smuzhiyun etm1_out: endpoint { 1409*4882a593Smuzhiyun remote-endpoint = 1410*4882a593Smuzhiyun <&apss_funnel_in1>; 1411*4882a593Smuzhiyun }; 1412*4882a593Smuzhiyun }; 1413*4882a593Smuzhiyun }; 1414*4882a593Smuzhiyun }; 1415*4882a593Smuzhiyun 1416*4882a593Smuzhiyun etm3: etm@7a40000 { 1417*4882a593Smuzhiyun compatible = "arm,coresight-etm4x", "arm,primecell"; 1418*4882a593Smuzhiyun reg = <0x07a40000 0x1000>; 1419*4882a593Smuzhiyun status = "disabled"; 1420*4882a593Smuzhiyun 1421*4882a593Smuzhiyun clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; 1422*4882a593Smuzhiyun clock-names = "apb_pclk", "atclk"; 1423*4882a593Smuzhiyun 1424*4882a593Smuzhiyun cpu = <&CPU2>; 1425*4882a593Smuzhiyun 1426*4882a593Smuzhiyun out-ports { 1427*4882a593Smuzhiyun port { 1428*4882a593Smuzhiyun etm2_out: endpoint { 1429*4882a593Smuzhiyun remote-endpoint = 1430*4882a593Smuzhiyun <&apss_funnel_in2>; 1431*4882a593Smuzhiyun }; 1432*4882a593Smuzhiyun }; 1433*4882a593Smuzhiyun }; 1434*4882a593Smuzhiyun }; 1435*4882a593Smuzhiyun 1436*4882a593Smuzhiyun etm4: etm@7b40000 { 1437*4882a593Smuzhiyun compatible = "arm,coresight-etm4x", "arm,primecell"; 1438*4882a593Smuzhiyun reg = <0x07b40000 0x1000>; 1439*4882a593Smuzhiyun status = "disabled"; 1440*4882a593Smuzhiyun 1441*4882a593Smuzhiyun clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; 1442*4882a593Smuzhiyun clock-names = "apb_pclk", "atclk"; 1443*4882a593Smuzhiyun 1444*4882a593Smuzhiyun cpu = <&CPU3>; 1445*4882a593Smuzhiyun 1446*4882a593Smuzhiyun out-ports { 1447*4882a593Smuzhiyun port { 1448*4882a593Smuzhiyun etm3_out: endpoint { 1449*4882a593Smuzhiyun remote-endpoint = 1450*4882a593Smuzhiyun <&apss_funnel_in3>; 1451*4882a593Smuzhiyun }; 1452*4882a593Smuzhiyun }; 1453*4882a593Smuzhiyun }; 1454*4882a593Smuzhiyun }; 1455*4882a593Smuzhiyun 1456*4882a593Smuzhiyun funnel4: funnel@7b60000 { /* APSS Funnel */ 1457*4882a593Smuzhiyun compatible = "arm,coresight-etm4x", "arm,primecell"; 1458*4882a593Smuzhiyun reg = <0x07b60000 0x1000>; 1459*4882a593Smuzhiyun status = "disabled"; 1460*4882a593Smuzhiyun 1461*4882a593Smuzhiyun clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; 1462*4882a593Smuzhiyun clock-names = "apb_pclk", "atclk"; 1463*4882a593Smuzhiyun 1464*4882a593Smuzhiyun out-ports { 1465*4882a593Smuzhiyun port { 1466*4882a593Smuzhiyun apss_funnel_out: endpoint { 1467*4882a593Smuzhiyun remote-endpoint = 1468*4882a593Smuzhiyun <&apss_merge_funnel_in>; 1469*4882a593Smuzhiyun }; 1470*4882a593Smuzhiyun }; 1471*4882a593Smuzhiyun }; 1472*4882a593Smuzhiyun 1473*4882a593Smuzhiyun in-ports { 1474*4882a593Smuzhiyun #address-cells = <1>; 1475*4882a593Smuzhiyun #size-cells = <0>; 1476*4882a593Smuzhiyun 1477*4882a593Smuzhiyun port@0 { 1478*4882a593Smuzhiyun reg = <0>; 1479*4882a593Smuzhiyun apss_funnel_in0: endpoint { 1480*4882a593Smuzhiyun remote-endpoint = 1481*4882a593Smuzhiyun <&etm0_out>; 1482*4882a593Smuzhiyun }; 1483*4882a593Smuzhiyun }; 1484*4882a593Smuzhiyun 1485*4882a593Smuzhiyun port@1 { 1486*4882a593Smuzhiyun reg = <1>; 1487*4882a593Smuzhiyun apss_funnel_in1: endpoint { 1488*4882a593Smuzhiyun remote-endpoint = 1489*4882a593Smuzhiyun <&etm1_out>; 1490*4882a593Smuzhiyun }; 1491*4882a593Smuzhiyun }; 1492*4882a593Smuzhiyun 1493*4882a593Smuzhiyun port@2 { 1494*4882a593Smuzhiyun reg = <2>; 1495*4882a593Smuzhiyun apss_funnel_in2: endpoint { 1496*4882a593Smuzhiyun remote-endpoint = 1497*4882a593Smuzhiyun <&etm2_out>; 1498*4882a593Smuzhiyun }; 1499*4882a593Smuzhiyun }; 1500*4882a593Smuzhiyun 1501*4882a593Smuzhiyun port@3 { 1502*4882a593Smuzhiyun reg = <3>; 1503*4882a593Smuzhiyun apss_funnel_in3: endpoint { 1504*4882a593Smuzhiyun remote-endpoint = 1505*4882a593Smuzhiyun <&etm3_out>; 1506*4882a593Smuzhiyun }; 1507*4882a593Smuzhiyun }; 1508*4882a593Smuzhiyun 1509*4882a593Smuzhiyun port@4 { 1510*4882a593Smuzhiyun reg = <4>; 1511*4882a593Smuzhiyun apss_funnel_in4: endpoint { 1512*4882a593Smuzhiyun remote-endpoint = 1513*4882a593Smuzhiyun <&etm4_out>; 1514*4882a593Smuzhiyun }; 1515*4882a593Smuzhiyun }; 1516*4882a593Smuzhiyun 1517*4882a593Smuzhiyun port@5 { 1518*4882a593Smuzhiyun reg = <5>; 1519*4882a593Smuzhiyun apss_funnel_in5: endpoint { 1520*4882a593Smuzhiyun remote-endpoint = 1521*4882a593Smuzhiyun <&etm5_out>; 1522*4882a593Smuzhiyun }; 1523*4882a593Smuzhiyun }; 1524*4882a593Smuzhiyun 1525*4882a593Smuzhiyun port@6 { 1526*4882a593Smuzhiyun reg = <6>; 1527*4882a593Smuzhiyun apss_funnel_in6: endpoint { 1528*4882a593Smuzhiyun remote-endpoint = 1529*4882a593Smuzhiyun <&etm6_out>; 1530*4882a593Smuzhiyun }; 1531*4882a593Smuzhiyun }; 1532*4882a593Smuzhiyun 1533*4882a593Smuzhiyun port@7 { 1534*4882a593Smuzhiyun reg = <7>; 1535*4882a593Smuzhiyun apss_funnel_in7: endpoint { 1536*4882a593Smuzhiyun remote-endpoint = 1537*4882a593Smuzhiyun <&etm7_out>; 1538*4882a593Smuzhiyun }; 1539*4882a593Smuzhiyun }; 1540*4882a593Smuzhiyun }; 1541*4882a593Smuzhiyun }; 1542*4882a593Smuzhiyun 1543*4882a593Smuzhiyun funnel5: funnel@7b70000 { 1544*4882a593Smuzhiyun compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 1545*4882a593Smuzhiyun reg = <0x07b70000 0x1000>; 1546*4882a593Smuzhiyun status = "disabled"; 1547*4882a593Smuzhiyun 1548*4882a593Smuzhiyun clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; 1549*4882a593Smuzhiyun clock-names = "apb_pclk", "atclk"; 1550*4882a593Smuzhiyun 1551*4882a593Smuzhiyun out-ports { 1552*4882a593Smuzhiyun port { 1553*4882a593Smuzhiyun apss_merge_funnel_out: endpoint { 1554*4882a593Smuzhiyun remote-endpoint = 1555*4882a593Smuzhiyun <&funnel1_in6>; 1556*4882a593Smuzhiyun }; 1557*4882a593Smuzhiyun }; 1558*4882a593Smuzhiyun }; 1559*4882a593Smuzhiyun 1560*4882a593Smuzhiyun in-ports { 1561*4882a593Smuzhiyun port { 1562*4882a593Smuzhiyun apss_merge_funnel_in: endpoint { 1563*4882a593Smuzhiyun remote-endpoint = 1564*4882a593Smuzhiyun <&apss_funnel_out>; 1565*4882a593Smuzhiyun }; 1566*4882a593Smuzhiyun }; 1567*4882a593Smuzhiyun }; 1568*4882a593Smuzhiyun }; 1569*4882a593Smuzhiyun 1570*4882a593Smuzhiyun etm5: etm@7c40000 { 1571*4882a593Smuzhiyun compatible = "arm,coresight-etm4x", "arm,primecell"; 1572*4882a593Smuzhiyun reg = <0x07c40000 0x1000>; 1573*4882a593Smuzhiyun status = "disabled"; 1574*4882a593Smuzhiyun 1575*4882a593Smuzhiyun clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; 1576*4882a593Smuzhiyun clock-names = "apb_pclk", "atclk"; 1577*4882a593Smuzhiyun 1578*4882a593Smuzhiyun cpu = <&CPU4>; 1579*4882a593Smuzhiyun 1580*4882a593Smuzhiyun port{ 1581*4882a593Smuzhiyun etm4_out: endpoint { 1582*4882a593Smuzhiyun remote-endpoint = <&apss_funnel_in4>; 1583*4882a593Smuzhiyun }; 1584*4882a593Smuzhiyun }; 1585*4882a593Smuzhiyun }; 1586*4882a593Smuzhiyun 1587*4882a593Smuzhiyun etm6: etm@7d40000 { 1588*4882a593Smuzhiyun compatible = "arm,coresight-etm4x", "arm,primecell"; 1589*4882a593Smuzhiyun reg = <0x07d40000 0x1000>; 1590*4882a593Smuzhiyun status = "disabled"; 1591*4882a593Smuzhiyun 1592*4882a593Smuzhiyun clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; 1593*4882a593Smuzhiyun clock-names = "apb_pclk", "atclk"; 1594*4882a593Smuzhiyun 1595*4882a593Smuzhiyun cpu = <&CPU5>; 1596*4882a593Smuzhiyun 1597*4882a593Smuzhiyun port{ 1598*4882a593Smuzhiyun etm5_out: endpoint { 1599*4882a593Smuzhiyun remote-endpoint = <&apss_funnel_in5>; 1600*4882a593Smuzhiyun }; 1601*4882a593Smuzhiyun }; 1602*4882a593Smuzhiyun }; 1603*4882a593Smuzhiyun 1604*4882a593Smuzhiyun etm7: etm@7e40000 { 1605*4882a593Smuzhiyun compatible = "arm,coresight-etm4x", "arm,primecell"; 1606*4882a593Smuzhiyun reg = <0x07e40000 0x1000>; 1607*4882a593Smuzhiyun status = "disabled"; 1608*4882a593Smuzhiyun 1609*4882a593Smuzhiyun clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; 1610*4882a593Smuzhiyun clock-names = "apb_pclk", "atclk"; 1611*4882a593Smuzhiyun 1612*4882a593Smuzhiyun cpu = <&CPU6>; 1613*4882a593Smuzhiyun 1614*4882a593Smuzhiyun port{ 1615*4882a593Smuzhiyun etm6_out: endpoint { 1616*4882a593Smuzhiyun remote-endpoint = <&apss_funnel_in6>; 1617*4882a593Smuzhiyun }; 1618*4882a593Smuzhiyun }; 1619*4882a593Smuzhiyun }; 1620*4882a593Smuzhiyun 1621*4882a593Smuzhiyun etm8: etm@7f40000 { 1622*4882a593Smuzhiyun compatible = "arm,coresight-etm4x", "arm,primecell"; 1623*4882a593Smuzhiyun reg = <0x07f40000 0x1000>; 1624*4882a593Smuzhiyun status = "disabled"; 1625*4882a593Smuzhiyun 1626*4882a593Smuzhiyun clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; 1627*4882a593Smuzhiyun clock-names = "apb_pclk", "atclk"; 1628*4882a593Smuzhiyun 1629*4882a593Smuzhiyun cpu = <&CPU7>; 1630*4882a593Smuzhiyun 1631*4882a593Smuzhiyun port{ 1632*4882a593Smuzhiyun etm7_out: endpoint { 1633*4882a593Smuzhiyun remote-endpoint = <&apss_funnel_in7>; 1634*4882a593Smuzhiyun }; 1635*4882a593Smuzhiyun }; 1636*4882a593Smuzhiyun }; 1637*4882a593Smuzhiyun 1638*4882a593Smuzhiyun spmi_bus: spmi@800f000 { 1639*4882a593Smuzhiyun compatible = "qcom,spmi-pmic-arb"; 1640*4882a593Smuzhiyun reg = <0x0800f000 0x1000>, 1641*4882a593Smuzhiyun <0x08400000 0x1000000>, 1642*4882a593Smuzhiyun <0x09400000 0x1000000>, 1643*4882a593Smuzhiyun <0x0a400000 0x220000>, 1644*4882a593Smuzhiyun <0x0800a000 0x3000>; 1645*4882a593Smuzhiyun reg-names = "core", "chnls", "obsrvr", "intr", "cnfg"; 1646*4882a593Smuzhiyun interrupt-names = "periph_irq"; 1647*4882a593Smuzhiyun interrupts = <GIC_SPI 326 IRQ_TYPE_LEVEL_HIGH>; 1648*4882a593Smuzhiyun qcom,ee = <0>; 1649*4882a593Smuzhiyun qcom,channel = <0>; 1650*4882a593Smuzhiyun #address-cells = <2>; 1651*4882a593Smuzhiyun #size-cells = <0>; 1652*4882a593Smuzhiyun interrupt-controller; 1653*4882a593Smuzhiyun #interrupt-cells = <4>; 1654*4882a593Smuzhiyun cell-index = <0>; 1655*4882a593Smuzhiyun }; 1656*4882a593Smuzhiyun 1657*4882a593Smuzhiyun usb3: usb@a8f8800 { 1658*4882a593Smuzhiyun compatible = "qcom,msm8998-dwc3", "qcom,dwc3"; 1659*4882a593Smuzhiyun reg = <0x0a8f8800 0x400>; 1660*4882a593Smuzhiyun status = "disabled"; 1661*4882a593Smuzhiyun #address-cells = <1>; 1662*4882a593Smuzhiyun #size-cells = <1>; 1663*4882a593Smuzhiyun ranges; 1664*4882a593Smuzhiyun 1665*4882a593Smuzhiyun clocks = <&gcc GCC_CFG_NOC_USB3_AXI_CLK>, 1666*4882a593Smuzhiyun <&gcc GCC_USB30_MASTER_CLK>, 1667*4882a593Smuzhiyun <&gcc GCC_AGGRE1_USB3_AXI_CLK>, 1668*4882a593Smuzhiyun <&gcc GCC_USB30_MOCK_UTMI_CLK>, 1669*4882a593Smuzhiyun <&gcc GCC_USB30_SLEEP_CLK>; 1670*4882a593Smuzhiyun clock-names = "cfg_noc", "core", "iface", "mock_utmi", 1671*4882a593Smuzhiyun "sleep"; 1672*4882a593Smuzhiyun 1673*4882a593Smuzhiyun assigned-clocks = <&gcc GCC_USB30_MOCK_UTMI_CLK>, 1674*4882a593Smuzhiyun <&gcc GCC_USB30_MASTER_CLK>; 1675*4882a593Smuzhiyun assigned-clock-rates = <19200000>, <120000000>; 1676*4882a593Smuzhiyun 1677*4882a593Smuzhiyun interrupts = <GIC_SPI 347 IRQ_TYPE_LEVEL_HIGH>, 1678*4882a593Smuzhiyun <GIC_SPI 243 IRQ_TYPE_LEVEL_HIGH>; 1679*4882a593Smuzhiyun interrupt-names = "hs_phy_irq", "ss_phy_irq"; 1680*4882a593Smuzhiyun 1681*4882a593Smuzhiyun power-domains = <&gcc USB_30_GDSC>; 1682*4882a593Smuzhiyun 1683*4882a593Smuzhiyun resets = <&gcc GCC_USB_30_BCR>; 1684*4882a593Smuzhiyun 1685*4882a593Smuzhiyun usb3_dwc3: dwc3@a800000 { 1686*4882a593Smuzhiyun compatible = "snps,dwc3"; 1687*4882a593Smuzhiyun reg = <0x0a800000 0xcd00>; 1688*4882a593Smuzhiyun interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>; 1689*4882a593Smuzhiyun snps,dis_u2_susphy_quirk; 1690*4882a593Smuzhiyun snps,dis_enblslpm_quirk; 1691*4882a593Smuzhiyun phys = <&qusb2phy>, <&usb1_ssphy>; 1692*4882a593Smuzhiyun phy-names = "usb2-phy", "usb3-phy"; 1693*4882a593Smuzhiyun snps,has-lpm-erratum; 1694*4882a593Smuzhiyun snps,hird-threshold = /bits/ 8 <0x10>; 1695*4882a593Smuzhiyun }; 1696*4882a593Smuzhiyun }; 1697*4882a593Smuzhiyun 1698*4882a593Smuzhiyun usb3phy: phy@c010000 { 1699*4882a593Smuzhiyun compatible = "qcom,msm8998-qmp-usb3-phy"; 1700*4882a593Smuzhiyun reg = <0x0c010000 0x18c>; 1701*4882a593Smuzhiyun status = "disabled"; 1702*4882a593Smuzhiyun #clock-cells = <1>; 1703*4882a593Smuzhiyun #address-cells = <1>; 1704*4882a593Smuzhiyun #size-cells = <1>; 1705*4882a593Smuzhiyun ranges; 1706*4882a593Smuzhiyun 1707*4882a593Smuzhiyun clocks = <&gcc GCC_USB3_PHY_AUX_CLK>, 1708*4882a593Smuzhiyun <&gcc GCC_USB_PHY_CFG_AHB2PHY_CLK>, 1709*4882a593Smuzhiyun <&gcc GCC_USB3_CLKREF_CLK>; 1710*4882a593Smuzhiyun clock-names = "aux", "cfg_ahb", "ref"; 1711*4882a593Smuzhiyun 1712*4882a593Smuzhiyun resets = <&gcc GCC_USB3_PHY_BCR>, 1713*4882a593Smuzhiyun <&gcc GCC_USB3PHY_PHY_BCR>; 1714*4882a593Smuzhiyun reset-names = "phy", "common"; 1715*4882a593Smuzhiyun 1716*4882a593Smuzhiyun usb1_ssphy: lane@c010200 { 1717*4882a593Smuzhiyun reg = <0xc010200 0x128>, 1718*4882a593Smuzhiyun <0xc010400 0x200>, 1719*4882a593Smuzhiyun <0xc010c00 0x20c>, 1720*4882a593Smuzhiyun <0xc010600 0x128>, 1721*4882a593Smuzhiyun <0xc010800 0x200>; 1722*4882a593Smuzhiyun #phy-cells = <0>; 1723*4882a593Smuzhiyun clocks = <&gcc GCC_USB3_PHY_PIPE_CLK>; 1724*4882a593Smuzhiyun clock-names = "pipe0"; 1725*4882a593Smuzhiyun clock-output-names = "usb3_phy_pipe_clk_src"; 1726*4882a593Smuzhiyun }; 1727*4882a593Smuzhiyun }; 1728*4882a593Smuzhiyun 1729*4882a593Smuzhiyun qusb2phy: phy@c012000 { 1730*4882a593Smuzhiyun compatible = "qcom,msm8998-qusb2-phy"; 1731*4882a593Smuzhiyun reg = <0x0c012000 0x2a8>; 1732*4882a593Smuzhiyun status = "disabled"; 1733*4882a593Smuzhiyun #phy-cells = <0>; 1734*4882a593Smuzhiyun 1735*4882a593Smuzhiyun clocks = <&gcc GCC_USB_PHY_CFG_AHB2PHY_CLK>, 1736*4882a593Smuzhiyun <&gcc GCC_RX1_USB2_CLKREF_CLK>; 1737*4882a593Smuzhiyun clock-names = "cfg_ahb", "ref"; 1738*4882a593Smuzhiyun 1739*4882a593Smuzhiyun resets = <&gcc GCC_QUSB2PHY_PRIM_BCR>; 1740*4882a593Smuzhiyun 1741*4882a593Smuzhiyun nvmem-cells = <&qusb2_hstx_trim>; 1742*4882a593Smuzhiyun }; 1743*4882a593Smuzhiyun 1744*4882a593Smuzhiyun sdhc2: sdhci@c0a4900 { 1745*4882a593Smuzhiyun compatible = "qcom,sdhci-msm-v4"; 1746*4882a593Smuzhiyun reg = <0x0c0a4900 0x314>, <0x0c0a4000 0x800>; 1747*4882a593Smuzhiyun reg-names = "hc_mem", "core_mem"; 1748*4882a593Smuzhiyun 1749*4882a593Smuzhiyun interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>, 1750*4882a593Smuzhiyun <GIC_SPI 221 IRQ_TYPE_LEVEL_HIGH>; 1751*4882a593Smuzhiyun interrupt-names = "hc_irq", "pwr_irq"; 1752*4882a593Smuzhiyun 1753*4882a593Smuzhiyun clock-names = "iface", "core", "xo"; 1754*4882a593Smuzhiyun clocks = <&gcc GCC_SDCC2_AHB_CLK>, 1755*4882a593Smuzhiyun <&gcc GCC_SDCC2_APPS_CLK>, 1756*4882a593Smuzhiyun <&xo>; 1757*4882a593Smuzhiyun bus-width = <4>; 1758*4882a593Smuzhiyun status = "disabled"; 1759*4882a593Smuzhiyun }; 1760*4882a593Smuzhiyun 1761*4882a593Smuzhiyun blsp1_dma: dma@c144000 { 1762*4882a593Smuzhiyun compatible = "qcom,bam-v1.7.0"; 1763*4882a593Smuzhiyun reg = <0x0c144000 0x25000>; 1764*4882a593Smuzhiyun interrupts = <GIC_SPI 238 IRQ_TYPE_LEVEL_HIGH>; 1765*4882a593Smuzhiyun clocks = <&gcc GCC_BLSP1_AHB_CLK>; 1766*4882a593Smuzhiyun clock-names = "bam_clk"; 1767*4882a593Smuzhiyun #dma-cells = <1>; 1768*4882a593Smuzhiyun qcom,ee = <0>; 1769*4882a593Smuzhiyun qcom,controlled-remotely; 1770*4882a593Smuzhiyun num-channels = <18>; 1771*4882a593Smuzhiyun qcom,num-ees = <4>; 1772*4882a593Smuzhiyun }; 1773*4882a593Smuzhiyun 1774*4882a593Smuzhiyun blsp1_uart3: serial@c171000 { 1775*4882a593Smuzhiyun compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm"; 1776*4882a593Smuzhiyun reg = <0x0c171000 0x1000>; 1777*4882a593Smuzhiyun interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>; 1778*4882a593Smuzhiyun clocks = <&gcc GCC_BLSP1_UART3_APPS_CLK>, 1779*4882a593Smuzhiyun <&gcc GCC_BLSP1_AHB_CLK>; 1780*4882a593Smuzhiyun clock-names = "core", "iface"; 1781*4882a593Smuzhiyun dmas = <&blsp1_dma 4>, <&blsp1_dma 5>; 1782*4882a593Smuzhiyun dma-names = "tx", "rx"; 1783*4882a593Smuzhiyun pinctrl-names = "default"; 1784*4882a593Smuzhiyun pinctrl-0 = <&blsp1_uart3_on>; 1785*4882a593Smuzhiyun status = "disabled"; 1786*4882a593Smuzhiyun }; 1787*4882a593Smuzhiyun 1788*4882a593Smuzhiyun blsp1_i2c1: i2c@c175000 { 1789*4882a593Smuzhiyun compatible = "qcom,i2c-qup-v2.2.1"; 1790*4882a593Smuzhiyun reg = <0x0c175000 0x600>; 1791*4882a593Smuzhiyun interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>; 1792*4882a593Smuzhiyun 1793*4882a593Smuzhiyun clocks = <&gcc GCC_BLSP1_QUP1_I2C_APPS_CLK>, 1794*4882a593Smuzhiyun <&gcc GCC_BLSP1_AHB_CLK>; 1795*4882a593Smuzhiyun clock-names = "core", "iface"; 1796*4882a593Smuzhiyun clock-frequency = <400000>; 1797*4882a593Smuzhiyun 1798*4882a593Smuzhiyun status = "disabled"; 1799*4882a593Smuzhiyun #address-cells = <1>; 1800*4882a593Smuzhiyun #size-cells = <0>; 1801*4882a593Smuzhiyun }; 1802*4882a593Smuzhiyun 1803*4882a593Smuzhiyun blsp1_i2c2: i2c@c176000 { 1804*4882a593Smuzhiyun compatible = "qcom,i2c-qup-v2.2.1"; 1805*4882a593Smuzhiyun reg = <0x0c176000 0x600>; 1806*4882a593Smuzhiyun interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>; 1807*4882a593Smuzhiyun 1808*4882a593Smuzhiyun clocks = <&gcc GCC_BLSP1_QUP2_I2C_APPS_CLK>, 1809*4882a593Smuzhiyun <&gcc GCC_BLSP1_AHB_CLK>; 1810*4882a593Smuzhiyun clock-names = "core", "iface"; 1811*4882a593Smuzhiyun clock-frequency = <400000>; 1812*4882a593Smuzhiyun 1813*4882a593Smuzhiyun status = "disabled"; 1814*4882a593Smuzhiyun #address-cells = <1>; 1815*4882a593Smuzhiyun #size-cells = <0>; 1816*4882a593Smuzhiyun }; 1817*4882a593Smuzhiyun 1818*4882a593Smuzhiyun blsp1_i2c3: i2c@c177000 { 1819*4882a593Smuzhiyun compatible = "qcom,i2c-qup-v2.2.1"; 1820*4882a593Smuzhiyun reg = <0x0c177000 0x600>; 1821*4882a593Smuzhiyun interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>; 1822*4882a593Smuzhiyun 1823*4882a593Smuzhiyun clocks = <&gcc GCC_BLSP1_QUP3_I2C_APPS_CLK>, 1824*4882a593Smuzhiyun <&gcc GCC_BLSP1_AHB_CLK>; 1825*4882a593Smuzhiyun clock-names = "core", "iface"; 1826*4882a593Smuzhiyun clock-frequency = <400000>; 1827*4882a593Smuzhiyun 1828*4882a593Smuzhiyun status = "disabled"; 1829*4882a593Smuzhiyun #address-cells = <1>; 1830*4882a593Smuzhiyun #size-cells = <0>; 1831*4882a593Smuzhiyun }; 1832*4882a593Smuzhiyun 1833*4882a593Smuzhiyun blsp1_i2c4: i2c@c178000 { 1834*4882a593Smuzhiyun compatible = "qcom,i2c-qup-v2.2.1"; 1835*4882a593Smuzhiyun reg = <0x0c178000 0x600>; 1836*4882a593Smuzhiyun interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>; 1837*4882a593Smuzhiyun 1838*4882a593Smuzhiyun clocks = <&gcc GCC_BLSP1_QUP4_I2C_APPS_CLK>, 1839*4882a593Smuzhiyun <&gcc GCC_BLSP1_AHB_CLK>; 1840*4882a593Smuzhiyun clock-names = "core", "iface"; 1841*4882a593Smuzhiyun clock-frequency = <400000>; 1842*4882a593Smuzhiyun 1843*4882a593Smuzhiyun status = "disabled"; 1844*4882a593Smuzhiyun #address-cells = <1>; 1845*4882a593Smuzhiyun #size-cells = <0>; 1846*4882a593Smuzhiyun }; 1847*4882a593Smuzhiyun 1848*4882a593Smuzhiyun blsp1_i2c5: i2c@c179000 { 1849*4882a593Smuzhiyun compatible = "qcom,i2c-qup-v2.2.1"; 1850*4882a593Smuzhiyun reg = <0x0c179000 0x600>; 1851*4882a593Smuzhiyun interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>; 1852*4882a593Smuzhiyun 1853*4882a593Smuzhiyun clocks = <&gcc GCC_BLSP1_QUP5_I2C_APPS_CLK>, 1854*4882a593Smuzhiyun <&gcc GCC_BLSP1_AHB_CLK>; 1855*4882a593Smuzhiyun clock-names = "core", "iface"; 1856*4882a593Smuzhiyun clock-frequency = <400000>; 1857*4882a593Smuzhiyun 1858*4882a593Smuzhiyun status = "disabled"; 1859*4882a593Smuzhiyun #address-cells = <1>; 1860*4882a593Smuzhiyun #size-cells = <0>; 1861*4882a593Smuzhiyun }; 1862*4882a593Smuzhiyun 1863*4882a593Smuzhiyun blsp1_i2c6: i2c@c17a000 { 1864*4882a593Smuzhiyun compatible = "qcom,i2c-qup-v2.2.1"; 1865*4882a593Smuzhiyun reg = <0x0c17a000 0x600>; 1866*4882a593Smuzhiyun interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>; 1867*4882a593Smuzhiyun 1868*4882a593Smuzhiyun clocks = <&gcc GCC_BLSP1_QUP6_I2C_APPS_CLK>, 1869*4882a593Smuzhiyun <&gcc GCC_BLSP1_AHB_CLK>; 1870*4882a593Smuzhiyun clock-names = "core", "iface"; 1871*4882a593Smuzhiyun clock-frequency = <400000>; 1872*4882a593Smuzhiyun 1873*4882a593Smuzhiyun status = "disabled"; 1874*4882a593Smuzhiyun #address-cells = <1>; 1875*4882a593Smuzhiyun #size-cells = <0>; 1876*4882a593Smuzhiyun }; 1877*4882a593Smuzhiyun 1878*4882a593Smuzhiyun blsp2_uart1: serial@c1b0000 { 1879*4882a593Smuzhiyun compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm"; 1880*4882a593Smuzhiyun reg = <0x0c1b0000 0x1000>; 1881*4882a593Smuzhiyun interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>; 1882*4882a593Smuzhiyun clocks = <&gcc GCC_BLSP2_UART2_APPS_CLK>, 1883*4882a593Smuzhiyun <&gcc GCC_BLSP2_AHB_CLK>; 1884*4882a593Smuzhiyun clock-names = "core", "iface"; 1885*4882a593Smuzhiyun status = "disabled"; 1886*4882a593Smuzhiyun }; 1887*4882a593Smuzhiyun 1888*4882a593Smuzhiyun blsp2_i2c0: i2c@c1b5000 { 1889*4882a593Smuzhiyun compatible = "qcom,i2c-qup-v2.2.1"; 1890*4882a593Smuzhiyun reg = <0x0c1b5000 0x600>; 1891*4882a593Smuzhiyun interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>; 1892*4882a593Smuzhiyun 1893*4882a593Smuzhiyun clocks = <&gcc GCC_BLSP2_QUP1_I2C_APPS_CLK>, 1894*4882a593Smuzhiyun <&gcc GCC_BLSP2_AHB_CLK>; 1895*4882a593Smuzhiyun clock-names = "core", "iface"; 1896*4882a593Smuzhiyun clock-frequency = <400000>; 1897*4882a593Smuzhiyun 1898*4882a593Smuzhiyun status = "disabled"; 1899*4882a593Smuzhiyun #address-cells = <1>; 1900*4882a593Smuzhiyun #size-cells = <0>; 1901*4882a593Smuzhiyun }; 1902*4882a593Smuzhiyun 1903*4882a593Smuzhiyun blsp2_i2c1: i2c@c1b6000 { 1904*4882a593Smuzhiyun compatible = "qcom,i2c-qup-v2.2.1"; 1905*4882a593Smuzhiyun reg = <0x0c1b6000 0x600>; 1906*4882a593Smuzhiyun interrupts = <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>; 1907*4882a593Smuzhiyun 1908*4882a593Smuzhiyun clocks = <&gcc GCC_BLSP2_QUP2_I2C_APPS_CLK>, 1909*4882a593Smuzhiyun <&gcc GCC_BLSP2_AHB_CLK>; 1910*4882a593Smuzhiyun clock-names = "core", "iface"; 1911*4882a593Smuzhiyun clock-frequency = <400000>; 1912*4882a593Smuzhiyun 1913*4882a593Smuzhiyun status = "disabled"; 1914*4882a593Smuzhiyun #address-cells = <1>; 1915*4882a593Smuzhiyun #size-cells = <0>; 1916*4882a593Smuzhiyun }; 1917*4882a593Smuzhiyun 1918*4882a593Smuzhiyun blsp2_i2c2: i2c@c1b7000 { 1919*4882a593Smuzhiyun compatible = "qcom,i2c-qup-v2.2.1"; 1920*4882a593Smuzhiyun reg = <0x0c1b7000 0x600>; 1921*4882a593Smuzhiyun interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>; 1922*4882a593Smuzhiyun 1923*4882a593Smuzhiyun clocks = <&gcc GCC_BLSP2_QUP3_I2C_APPS_CLK>, 1924*4882a593Smuzhiyun <&gcc GCC_BLSP2_AHB_CLK>; 1925*4882a593Smuzhiyun clock-names = "core", "iface"; 1926*4882a593Smuzhiyun clock-frequency = <400000>; 1927*4882a593Smuzhiyun 1928*4882a593Smuzhiyun status = "disabled"; 1929*4882a593Smuzhiyun #address-cells = <1>; 1930*4882a593Smuzhiyun #size-cells = <0>; 1931*4882a593Smuzhiyun }; 1932*4882a593Smuzhiyun 1933*4882a593Smuzhiyun blsp2_i2c3: i2c@c1b8000 { 1934*4882a593Smuzhiyun compatible = "qcom,i2c-qup-v2.2.1"; 1935*4882a593Smuzhiyun reg = <0x0c1b8000 0x600>; 1936*4882a593Smuzhiyun interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>; 1937*4882a593Smuzhiyun 1938*4882a593Smuzhiyun clocks = <&gcc GCC_BLSP2_QUP4_I2C_APPS_CLK>, 1939*4882a593Smuzhiyun <&gcc GCC_BLSP2_AHB_CLK>; 1940*4882a593Smuzhiyun clock-names = "core", "iface"; 1941*4882a593Smuzhiyun clock-frequency = <400000>; 1942*4882a593Smuzhiyun 1943*4882a593Smuzhiyun status = "disabled"; 1944*4882a593Smuzhiyun #address-cells = <1>; 1945*4882a593Smuzhiyun #size-cells = <0>; 1946*4882a593Smuzhiyun }; 1947*4882a593Smuzhiyun 1948*4882a593Smuzhiyun blsp2_i2c4: i2c@c1b9000 { 1949*4882a593Smuzhiyun compatible = "qcom,i2c-qup-v2.2.1"; 1950*4882a593Smuzhiyun reg = <0x0c1b9000 0x600>; 1951*4882a593Smuzhiyun interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>; 1952*4882a593Smuzhiyun 1953*4882a593Smuzhiyun clocks = <&gcc GCC_BLSP2_QUP5_I2C_APPS_CLK>, 1954*4882a593Smuzhiyun <&gcc GCC_BLSP2_AHB_CLK>; 1955*4882a593Smuzhiyun clock-names = "core", "iface"; 1956*4882a593Smuzhiyun clock-frequency = <400000>; 1957*4882a593Smuzhiyun 1958*4882a593Smuzhiyun status = "disabled"; 1959*4882a593Smuzhiyun #address-cells = <1>; 1960*4882a593Smuzhiyun #size-cells = <0>; 1961*4882a593Smuzhiyun }; 1962*4882a593Smuzhiyun 1963*4882a593Smuzhiyun blsp2_i2c5: i2c@c1ba000 { 1964*4882a593Smuzhiyun compatible = "qcom,i2c-qup-v2.2.1"; 1965*4882a593Smuzhiyun reg = <0x0c1ba000 0x600>; 1966*4882a593Smuzhiyun interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>; 1967*4882a593Smuzhiyun 1968*4882a593Smuzhiyun clocks = <&gcc GCC_BLSP2_QUP6_I2C_APPS_CLK>, 1969*4882a593Smuzhiyun <&gcc GCC_BLSP2_AHB_CLK>; 1970*4882a593Smuzhiyun clock-names = "core", "iface"; 1971*4882a593Smuzhiyun clock-frequency = <400000>; 1972*4882a593Smuzhiyun 1973*4882a593Smuzhiyun status = "disabled"; 1974*4882a593Smuzhiyun #address-cells = <1>; 1975*4882a593Smuzhiyun #size-cells = <0>; 1976*4882a593Smuzhiyun }; 1977*4882a593Smuzhiyun 1978*4882a593Smuzhiyun remoteproc_adsp: remoteproc@17300000 { 1979*4882a593Smuzhiyun compatible = "qcom,msm8998-adsp-pas"; 1980*4882a593Smuzhiyun reg = <0x17300000 0x4040>; 1981*4882a593Smuzhiyun 1982*4882a593Smuzhiyun interrupts-extended = <&intc GIC_SPI 162 IRQ_TYPE_EDGE_RISING>, 1983*4882a593Smuzhiyun <&adsp_smp2p_in 0 IRQ_TYPE_EDGE_RISING>, 1984*4882a593Smuzhiyun <&adsp_smp2p_in 1 IRQ_TYPE_EDGE_RISING>, 1985*4882a593Smuzhiyun <&adsp_smp2p_in 2 IRQ_TYPE_EDGE_RISING>, 1986*4882a593Smuzhiyun <&adsp_smp2p_in 3 IRQ_TYPE_EDGE_RISING>; 1987*4882a593Smuzhiyun interrupt-names = "wdog", "fatal", "ready", 1988*4882a593Smuzhiyun "handover", "stop-ack"; 1989*4882a593Smuzhiyun 1990*4882a593Smuzhiyun clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>; 1991*4882a593Smuzhiyun clock-names = "xo"; 1992*4882a593Smuzhiyun 1993*4882a593Smuzhiyun memory-region = <&adsp_mem>; 1994*4882a593Smuzhiyun 1995*4882a593Smuzhiyun qcom,smem-states = <&adsp_smp2p_out 0>; 1996*4882a593Smuzhiyun qcom,smem-state-names = "stop"; 1997*4882a593Smuzhiyun 1998*4882a593Smuzhiyun power-domains = <&rpmpd MSM8998_VDDCX>; 1999*4882a593Smuzhiyun power-domain-names = "cx"; 2000*4882a593Smuzhiyun 2001*4882a593Smuzhiyun status = "disabled"; 2002*4882a593Smuzhiyun 2003*4882a593Smuzhiyun glink-edge { 2004*4882a593Smuzhiyun interrupts = <GIC_SPI 157 IRQ_TYPE_EDGE_RISING>; 2005*4882a593Smuzhiyun label = "lpass"; 2006*4882a593Smuzhiyun qcom,remote-pid = <2>; 2007*4882a593Smuzhiyun mboxes = <&apcs_glb 9>; 2008*4882a593Smuzhiyun }; 2009*4882a593Smuzhiyun }; 2010*4882a593Smuzhiyun 2011*4882a593Smuzhiyun apcs_glb: mailbox@17911000 { 2012*4882a593Smuzhiyun compatible = "qcom,msm8998-apcs-hmss-global"; 2013*4882a593Smuzhiyun reg = <0x17911000 0x1000>; 2014*4882a593Smuzhiyun 2015*4882a593Smuzhiyun #mbox-cells = <1>; 2016*4882a593Smuzhiyun }; 2017*4882a593Smuzhiyun 2018*4882a593Smuzhiyun timer@17920000 { 2019*4882a593Smuzhiyun #address-cells = <1>; 2020*4882a593Smuzhiyun #size-cells = <1>; 2021*4882a593Smuzhiyun ranges; 2022*4882a593Smuzhiyun compatible = "arm,armv7-timer-mem"; 2023*4882a593Smuzhiyun reg = <0x17920000 0x1000>; 2024*4882a593Smuzhiyun 2025*4882a593Smuzhiyun frame@17921000 { 2026*4882a593Smuzhiyun frame-number = <0>; 2027*4882a593Smuzhiyun interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>, 2028*4882a593Smuzhiyun <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; 2029*4882a593Smuzhiyun reg = <0x17921000 0x1000>, 2030*4882a593Smuzhiyun <0x17922000 0x1000>; 2031*4882a593Smuzhiyun }; 2032*4882a593Smuzhiyun 2033*4882a593Smuzhiyun frame@17923000 { 2034*4882a593Smuzhiyun frame-number = <1>; 2035*4882a593Smuzhiyun interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>; 2036*4882a593Smuzhiyun reg = <0x17923000 0x1000>; 2037*4882a593Smuzhiyun status = "disabled"; 2038*4882a593Smuzhiyun }; 2039*4882a593Smuzhiyun 2040*4882a593Smuzhiyun frame@17924000 { 2041*4882a593Smuzhiyun frame-number = <2>; 2042*4882a593Smuzhiyun interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>; 2043*4882a593Smuzhiyun reg = <0x17924000 0x1000>; 2044*4882a593Smuzhiyun status = "disabled"; 2045*4882a593Smuzhiyun }; 2046*4882a593Smuzhiyun 2047*4882a593Smuzhiyun frame@17925000 { 2048*4882a593Smuzhiyun frame-number = <3>; 2049*4882a593Smuzhiyun interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>; 2050*4882a593Smuzhiyun reg = <0x17925000 0x1000>; 2051*4882a593Smuzhiyun status = "disabled"; 2052*4882a593Smuzhiyun }; 2053*4882a593Smuzhiyun 2054*4882a593Smuzhiyun frame@17926000 { 2055*4882a593Smuzhiyun frame-number = <4>; 2056*4882a593Smuzhiyun interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>; 2057*4882a593Smuzhiyun reg = <0x17926000 0x1000>; 2058*4882a593Smuzhiyun status = "disabled"; 2059*4882a593Smuzhiyun }; 2060*4882a593Smuzhiyun 2061*4882a593Smuzhiyun frame@17927000 { 2062*4882a593Smuzhiyun frame-number = <5>; 2063*4882a593Smuzhiyun interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>; 2064*4882a593Smuzhiyun reg = <0x17927000 0x1000>; 2065*4882a593Smuzhiyun status = "disabled"; 2066*4882a593Smuzhiyun }; 2067*4882a593Smuzhiyun 2068*4882a593Smuzhiyun frame@17928000 { 2069*4882a593Smuzhiyun frame-number = <6>; 2070*4882a593Smuzhiyun interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>; 2071*4882a593Smuzhiyun reg = <0x17928000 0x1000>; 2072*4882a593Smuzhiyun status = "disabled"; 2073*4882a593Smuzhiyun }; 2074*4882a593Smuzhiyun }; 2075*4882a593Smuzhiyun 2076*4882a593Smuzhiyun intc: interrupt-controller@17a00000 { 2077*4882a593Smuzhiyun compatible = "arm,gic-v3"; 2078*4882a593Smuzhiyun reg = <0x17a00000 0x10000>, /* GICD */ 2079*4882a593Smuzhiyun <0x17b00000 0x100000>; /* GICR * 8 */ 2080*4882a593Smuzhiyun #interrupt-cells = <3>; 2081*4882a593Smuzhiyun #address-cells = <1>; 2082*4882a593Smuzhiyun #size-cells = <1>; 2083*4882a593Smuzhiyun ranges; 2084*4882a593Smuzhiyun interrupt-controller; 2085*4882a593Smuzhiyun #redistributor-regions = <1>; 2086*4882a593Smuzhiyun redistributor-stride = <0x0 0x20000>; 2087*4882a593Smuzhiyun interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>; 2088*4882a593Smuzhiyun }; 2089*4882a593Smuzhiyun 2090*4882a593Smuzhiyun wifi: wifi@18800000 { 2091*4882a593Smuzhiyun compatible = "qcom,wcn3990-wifi"; 2092*4882a593Smuzhiyun status = "disabled"; 2093*4882a593Smuzhiyun reg = <0x18800000 0x800000>; 2094*4882a593Smuzhiyun reg-names = "membase"; 2095*4882a593Smuzhiyun memory-region = <&wlan_msa_mem>; 2096*4882a593Smuzhiyun clocks = <&rpmcc RPM_SMD_RF_CLK2_PIN>; 2097*4882a593Smuzhiyun clock-names = "cxo_ref_clk_pin"; 2098*4882a593Smuzhiyun interrupts = 2099*4882a593Smuzhiyun <GIC_SPI 413 IRQ_TYPE_LEVEL_HIGH>, 2100*4882a593Smuzhiyun <GIC_SPI 414 IRQ_TYPE_LEVEL_HIGH>, 2101*4882a593Smuzhiyun <GIC_SPI 415 IRQ_TYPE_LEVEL_HIGH>, 2102*4882a593Smuzhiyun <GIC_SPI 416 IRQ_TYPE_LEVEL_HIGH>, 2103*4882a593Smuzhiyun <GIC_SPI 417 IRQ_TYPE_LEVEL_HIGH>, 2104*4882a593Smuzhiyun <GIC_SPI 418 IRQ_TYPE_LEVEL_HIGH>, 2105*4882a593Smuzhiyun <GIC_SPI 420 IRQ_TYPE_LEVEL_HIGH>, 2106*4882a593Smuzhiyun <GIC_SPI 421 IRQ_TYPE_LEVEL_HIGH>, 2107*4882a593Smuzhiyun <GIC_SPI 422 IRQ_TYPE_LEVEL_HIGH>, 2108*4882a593Smuzhiyun <GIC_SPI 423 IRQ_TYPE_LEVEL_HIGH>, 2109*4882a593Smuzhiyun <GIC_SPI 424 IRQ_TYPE_LEVEL_HIGH>, 2110*4882a593Smuzhiyun <GIC_SPI 425 IRQ_TYPE_LEVEL_HIGH>; 2111*4882a593Smuzhiyun iommus = <&anoc2_smmu 0x1900>, 2112*4882a593Smuzhiyun <&anoc2_smmu 0x1901>; 2113*4882a593Smuzhiyun qcom,snoc-host-cap-8bit-quirk; 2114*4882a593Smuzhiyun }; 2115*4882a593Smuzhiyun }; 2116*4882a593Smuzhiyun}; 2117*4882a593Smuzhiyun 2118*4882a593Smuzhiyun#include "msm8998-pins.dtsi" 2119