1*2b488183SChunyan Zhang// SPDX-License-Identifier: (GPL-2.0 OR MIT) 2*2b488183SChunyan Zhang/* 3*2b488183SChunyan Zhang * Unisoc UMS512 SoC DTS file 4*2b488183SChunyan Zhang * 5*2b488183SChunyan Zhang * Copyright (C) 2021, Unisoc Inc. 6*2b488183SChunyan Zhang */ 7*2b488183SChunyan Zhang 8*2b488183SChunyan Zhang#include <dt-bindings/clock/sprd,ums512-clk.h> 9*2b488183SChunyan Zhang#include <dt-bindings/interrupt-controller/arm-gic.h> 10*2b488183SChunyan Zhang 11*2b488183SChunyan Zhang/ { 12*2b488183SChunyan Zhang interrupt-parent = <&gic>; 13*2b488183SChunyan Zhang #address-cells = <2>; 14*2b488183SChunyan Zhang #size-cells = <2>; 15*2b488183SChunyan Zhang 16*2b488183SChunyan Zhang cpus { 17*2b488183SChunyan Zhang #address-cells = <2>; 18*2b488183SChunyan Zhang #size-cells = <0>; 19*2b488183SChunyan Zhang 20*2b488183SChunyan Zhang cpu-map { 21*2b488183SChunyan Zhang cluster0 { 22*2b488183SChunyan Zhang core0 { 23*2b488183SChunyan Zhang cpu = <&CPU0>; 24*2b488183SChunyan Zhang }; 25*2b488183SChunyan Zhang core1 { 26*2b488183SChunyan Zhang cpu = <&CPU1>; 27*2b488183SChunyan Zhang }; 28*2b488183SChunyan Zhang core2 { 29*2b488183SChunyan Zhang cpu = <&CPU2>; 30*2b488183SChunyan Zhang }; 31*2b488183SChunyan Zhang core3 { 32*2b488183SChunyan Zhang cpu = <&CPU3>; 33*2b488183SChunyan Zhang }; 34*2b488183SChunyan Zhang core4 { 35*2b488183SChunyan Zhang cpu = <&CPU4>; 36*2b488183SChunyan Zhang }; 37*2b488183SChunyan Zhang core5 { 38*2b488183SChunyan Zhang cpu = <&CPU5>; 39*2b488183SChunyan Zhang }; 40*2b488183SChunyan Zhang core6 { 41*2b488183SChunyan Zhang cpu = <&CPU6>; 42*2b488183SChunyan Zhang }; 43*2b488183SChunyan Zhang core7 { 44*2b488183SChunyan Zhang cpu = <&CPU7>; 45*2b488183SChunyan Zhang }; 46*2b488183SChunyan Zhang }; 47*2b488183SChunyan Zhang }; 48*2b488183SChunyan Zhang 49*2b488183SChunyan Zhang CPU0: cpu@0 { 50*2b488183SChunyan Zhang device_type = "cpu"; 51*2b488183SChunyan Zhang compatible = "arm,cortex-a55"; 52*2b488183SChunyan Zhang reg = <0x0 0x0>; 53*2b488183SChunyan Zhang enable-method = "psci"; 54*2b488183SChunyan Zhang cpu-idle-states = <&CORE_PD>; 55*2b488183SChunyan Zhang }; 56*2b488183SChunyan Zhang 57*2b488183SChunyan Zhang CPU1: cpu@100 { 58*2b488183SChunyan Zhang device_type = "cpu"; 59*2b488183SChunyan Zhang compatible = "arm,cortex-a55"; 60*2b488183SChunyan Zhang reg = <0x0 0x100>; 61*2b488183SChunyan Zhang enable-method = "psci"; 62*2b488183SChunyan Zhang cpu-idle-states = <&CORE_PD>; 63*2b488183SChunyan Zhang }; 64*2b488183SChunyan Zhang 65*2b488183SChunyan Zhang CPU2: cpu@200 { 66*2b488183SChunyan Zhang device_type = "cpu"; 67*2b488183SChunyan Zhang compatible = "arm,cortex-a55"; 68*2b488183SChunyan Zhang reg = <0x0 0x200>; 69*2b488183SChunyan Zhang enable-method = "psci"; 70*2b488183SChunyan Zhang cpu-idle-states = <&CORE_PD>; 71*2b488183SChunyan Zhang }; 72*2b488183SChunyan Zhang 73*2b488183SChunyan Zhang CPU3: cpu@300 { 74*2b488183SChunyan Zhang device_type = "cpu"; 75*2b488183SChunyan Zhang compatible = "arm,cortex-a55"; 76*2b488183SChunyan Zhang reg = <0x0 0x300>; 77*2b488183SChunyan Zhang enable-method = "psci"; 78*2b488183SChunyan Zhang cpu-idle-states = <&CORE_PD>; 79*2b488183SChunyan Zhang }; 80*2b488183SChunyan Zhang 81*2b488183SChunyan Zhang CPU4: cpu@400 { 82*2b488183SChunyan Zhang device_type = "cpu"; 83*2b488183SChunyan Zhang compatible = "arm,cortex-a55"; 84*2b488183SChunyan Zhang reg = <0x0 0x400>; 85*2b488183SChunyan Zhang enable-method = "psci"; 86*2b488183SChunyan Zhang cpu-idle-states = <&CORE_PD>; 87*2b488183SChunyan Zhang }; 88*2b488183SChunyan Zhang 89*2b488183SChunyan Zhang CPU5: cpu@500 { 90*2b488183SChunyan Zhang device_type = "cpu"; 91*2b488183SChunyan Zhang compatible = "arm,cortex-a55"; 92*2b488183SChunyan Zhang reg = <0x0 0x500>; 93*2b488183SChunyan Zhang enable-method = "psci"; 94*2b488183SChunyan Zhang cpu-idle-states = <&CORE_PD>; 95*2b488183SChunyan Zhang }; 96*2b488183SChunyan Zhang 97*2b488183SChunyan Zhang CPU6: cpu@600 { 98*2b488183SChunyan Zhang device_type = "cpu"; 99*2b488183SChunyan Zhang compatible = "arm,cortex-a55"; 100*2b488183SChunyan Zhang reg = <0x0 0x600>; 101*2b488183SChunyan Zhang enable-method = "psci"; 102*2b488183SChunyan Zhang cpu-idle-states = <&CORE_PD>; 103*2b488183SChunyan Zhang }; 104*2b488183SChunyan Zhang 105*2b488183SChunyan Zhang CPU7: cpu@700 { 106*2b488183SChunyan Zhang device_type = "cpu"; 107*2b488183SChunyan Zhang compatible = "arm,cortex-a55"; 108*2b488183SChunyan Zhang reg = <0x0 0x700>; 109*2b488183SChunyan Zhang enable-method = "psci"; 110*2b488183SChunyan Zhang cpu-idle-states = <&CORE_PD>; 111*2b488183SChunyan Zhang }; 112*2b488183SChunyan Zhang }; 113*2b488183SChunyan Zhang 114*2b488183SChunyan Zhang idle-states { 115*2b488183SChunyan Zhang entry-method = "psci"; 116*2b488183SChunyan Zhang CORE_PD: core-pd { 117*2b488183SChunyan Zhang compatible = "arm,idle-state"; 118*2b488183SChunyan Zhang entry-latency-us = <4000>; 119*2b488183SChunyan Zhang exit-latency-us = <4000>; 120*2b488183SChunyan Zhang min-residency-us = <10000>; 121*2b488183SChunyan Zhang local-timer-stop; 122*2b488183SChunyan Zhang arm,psci-suspend-param = <0x00010000>; 123*2b488183SChunyan Zhang }; 124*2b488183SChunyan Zhang }; 125*2b488183SChunyan Zhang 126*2b488183SChunyan Zhang psci { 127*2b488183SChunyan Zhang compatible = "arm,psci-0.2"; 128*2b488183SChunyan Zhang method = "smc"; 129*2b488183SChunyan Zhang }; 130*2b488183SChunyan Zhang 131*2b488183SChunyan Zhang timer { 132*2b488183SChunyan Zhang compatible = "arm,armv8-timer"; 133*2b488183SChunyan Zhang interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_HIGH>, /* Physical Secure PPI */ 134*2b488183SChunyan Zhang <GIC_PPI 14 IRQ_TYPE_LEVEL_HIGH>, /* Physical Non-Secure PPI */ 135*2b488183SChunyan Zhang <GIC_PPI 11 IRQ_TYPE_LEVEL_HIGH>, /* Virtual PPI */ 136*2b488183SChunyan Zhang <GIC_PPI 10 IRQ_TYPE_LEVEL_HIGH>; /* Hipervisor PPI */ 137*2b488183SChunyan Zhang }; 138*2b488183SChunyan Zhang 139*2b488183SChunyan Zhang pmu { 140*2b488183SChunyan Zhang compatible = "arm,armv8-pmuv3"; 141*2b488183SChunyan Zhang interrupts = <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>, 142*2b488183SChunyan Zhang <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>, 143*2b488183SChunyan Zhang <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>, 144*2b488183SChunyan Zhang <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>, 145*2b488183SChunyan Zhang <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>, 146*2b488183SChunyan Zhang <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>, 147*2b488183SChunyan Zhang <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>, 148*2b488183SChunyan Zhang <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>; 149*2b488183SChunyan Zhang }; 150*2b488183SChunyan Zhang 151*2b488183SChunyan Zhang soc: soc { 152*2b488183SChunyan Zhang compatible = "simple-bus"; 153*2b488183SChunyan Zhang #address-cells = <2>; 154*2b488183SChunyan Zhang #size-cells = <2>; 155*2b488183SChunyan Zhang ranges; 156*2b488183SChunyan Zhang 157*2b488183SChunyan Zhang gic: interrupt-controller@12000000 { 158*2b488183SChunyan Zhang compatible = "arm,gic-v3"; 159*2b488183SChunyan Zhang reg = <0x0 0x12000000 0 0x20000>, /* GICD */ 160*2b488183SChunyan Zhang <0x0 0x12040000 0 0x100000>; /* GICR */ 161*2b488183SChunyan Zhang #interrupt-cells = <3>; 162*2b488183SChunyan Zhang #address-cells = <2>; 163*2b488183SChunyan Zhang #size-cells = <2>; 164*2b488183SChunyan Zhang ranges; 165*2b488183SChunyan Zhang redistributor-stride = <0x0 0x20000>; /* 128KB stride */ 166*2b488183SChunyan Zhang #redistributor-regions = <1>; 167*2b488183SChunyan Zhang interrupt-controller; 168*2b488183SChunyan Zhang interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>; 169*2b488183SChunyan Zhang }; 170*2b488183SChunyan Zhang 171*2b488183SChunyan Zhang ap_ahb_regs: syscon@20100000 { 172*2b488183SChunyan Zhang compatible = "sprd,ums512-glbregs", "syscon", 173*2b488183SChunyan Zhang "simple-mfd"; 174*2b488183SChunyan Zhang reg = <0 0x20100000 0 0x4000>; 175*2b488183SChunyan Zhang #address-cells = <1>; 176*2b488183SChunyan Zhang #size-cells = <1>; 177*2b488183SChunyan Zhang ranges = <0 0 0x20100000 0x4000>; 178*2b488183SChunyan Zhang 179*2b488183SChunyan Zhang apahb_gate: clock-controller@0 { 180*2b488183SChunyan Zhang compatible = "sprd,ums512-apahb-gate"; 181*2b488183SChunyan Zhang reg = <0x0 0x3000>; 182*2b488183SChunyan Zhang clocks = <&ext_26m>; 183*2b488183SChunyan Zhang clock-names = "ext-26m"; 184*2b488183SChunyan Zhang #clock-cells = <1>; 185*2b488183SChunyan Zhang }; 186*2b488183SChunyan Zhang }; 187*2b488183SChunyan Zhang 188*2b488183SChunyan Zhang pub_apb_regs: syscon@31050000 { 189*2b488183SChunyan Zhang compatible = "sprd,ums512-glbregs", "syscon", 190*2b488183SChunyan Zhang "simple-mfd"; 191*2b488183SChunyan Zhang reg = <0 0x31050000 0 0x9000>; 192*2b488183SChunyan Zhang }; 193*2b488183SChunyan Zhang 194*2b488183SChunyan Zhang top_dvfs_apb_regs: syscon@322a0000 { 195*2b488183SChunyan Zhang compatible = "sprd,ums512-glbregs", "syscon", 196*2b488183SChunyan Zhang "simple-mfd"; 197*2b488183SChunyan Zhang reg = <0 0x322a0000 0 0x8000>; 198*2b488183SChunyan Zhang }; 199*2b488183SChunyan Zhang 200*2b488183SChunyan Zhang ap_intc0_regs: syscon@32310000 { 201*2b488183SChunyan Zhang compatible = "sprd,ums512-glbregs", "syscon", 202*2b488183SChunyan Zhang "simple-mfd"; 203*2b488183SChunyan Zhang reg = <0 0x32310000 0 0x1000>; 204*2b488183SChunyan Zhang }; 205*2b488183SChunyan Zhang 206*2b488183SChunyan Zhang ap_intc1_regs: syscon@32320000 { 207*2b488183SChunyan Zhang compatible = "sprd,ums512-glbregs", "syscon", 208*2b488183SChunyan Zhang "simple-mfd"; 209*2b488183SChunyan Zhang reg = <0 0x32320000 0 0x1000>; 210*2b488183SChunyan Zhang }; 211*2b488183SChunyan Zhang 212*2b488183SChunyan Zhang ap_intc2_regs: syscon@32330000 { 213*2b488183SChunyan Zhang compatible = "sprd,ums512-glbregs", "syscon", 214*2b488183SChunyan Zhang "simple-mfd"; 215*2b488183SChunyan Zhang reg = <0 0x32330000 0 0x1000>; 216*2b488183SChunyan Zhang }; 217*2b488183SChunyan Zhang 218*2b488183SChunyan Zhang ap_intc3_regs: syscon@32340000 { 219*2b488183SChunyan Zhang compatible = "sprd,ums512-glbregs", "syscon", 220*2b488183SChunyan Zhang "simple-mfd"; 221*2b488183SChunyan Zhang reg = <0 0x32340000 0 0x1000>; 222*2b488183SChunyan Zhang }; 223*2b488183SChunyan Zhang 224*2b488183SChunyan Zhang ap_intc4_regs: syscon@32350000 { 225*2b488183SChunyan Zhang compatible = "sprd,ums512-glbregs", "syscon", 226*2b488183SChunyan Zhang "simple-mfd"; 227*2b488183SChunyan Zhang reg = <0 0x32350000 0 0x1000>; 228*2b488183SChunyan Zhang }; 229*2b488183SChunyan Zhang 230*2b488183SChunyan Zhang ap_intc5_regs: syscon@32360000 { 231*2b488183SChunyan Zhang compatible = "sprd,ums512-glbregs", "syscon", 232*2b488183SChunyan Zhang "simple-mfd"; 233*2b488183SChunyan Zhang reg = <0 0x32360000 0 0x1000>; 234*2b488183SChunyan Zhang }; 235*2b488183SChunyan Zhang 236*2b488183SChunyan Zhang anlg_phy_g0_regs: syscon@32390000 { 237*2b488183SChunyan Zhang compatible = "sprd,ums512-glbregs", "syscon", 238*2b488183SChunyan Zhang "simple-mfd"; 239*2b488183SChunyan Zhang reg = <0 0x32390000 0 0x3000>; 240*2b488183SChunyan Zhang #address-cells = <1>; 241*2b488183SChunyan Zhang #size-cells = <1>; 242*2b488183SChunyan Zhang ranges = <0 0 0x32390000 0x3000>; 243*2b488183SChunyan Zhang 244*2b488183SChunyan Zhang dpll0: clock-controller@0 { 245*2b488183SChunyan Zhang compatible = "sprd,ums512-g0-pll"; 246*2b488183SChunyan Zhang reg = <0x0 0x100>; 247*2b488183SChunyan Zhang #clock-cells = <1>; 248*2b488183SChunyan Zhang }; 249*2b488183SChunyan Zhang }; 250*2b488183SChunyan Zhang 251*2b488183SChunyan Zhang anlg_phy_g2_regs: syscon@323b0000 { 252*2b488183SChunyan Zhang compatible = "sprd,ums512-glbregs", "syscon", 253*2b488183SChunyan Zhang "simple-mfd"; 254*2b488183SChunyan Zhang reg = <0 0x323b0000 0 0x3000>; 255*2b488183SChunyan Zhang #address-cells = <1>; 256*2b488183SChunyan Zhang #size-cells = <1>; 257*2b488183SChunyan Zhang ranges = <0 0 0x323b0000 0x3000>; 258*2b488183SChunyan Zhang 259*2b488183SChunyan Zhang mpll1: clock-controller@0 { 260*2b488183SChunyan Zhang compatible = "sprd,ums512-g2-pll"; 261*2b488183SChunyan Zhang reg = <0x0 0x100>; 262*2b488183SChunyan Zhang #clock-cells = <1>; 263*2b488183SChunyan Zhang }; 264*2b488183SChunyan Zhang }; 265*2b488183SChunyan Zhang 266*2b488183SChunyan Zhang anlg_phy_g3_regs: syscon@323c0000 { 267*2b488183SChunyan Zhang compatible = "sprd,ums512-glbregs", "syscon", 268*2b488183SChunyan Zhang "simple-mfd"; 269*2b488183SChunyan Zhang reg = <0 0x323c0000 0 0x3000>; 270*2b488183SChunyan Zhang #address-cells = <1>; 271*2b488183SChunyan Zhang #size-cells = <1>; 272*2b488183SChunyan Zhang ranges = <0 0 0x323c0000 0x3000>; 273*2b488183SChunyan Zhang 274*2b488183SChunyan Zhang pll1: clock-controller@0 { 275*2b488183SChunyan Zhang compatible = "sprd,ums512-g3-pll"; 276*2b488183SChunyan Zhang reg = <0x0 0x3000>; 277*2b488183SChunyan Zhang clocks = <&ext_26m>; 278*2b488183SChunyan Zhang clock-names = "ext-26m"; 279*2b488183SChunyan Zhang #clock-cells = <1>; 280*2b488183SChunyan Zhang }; 281*2b488183SChunyan Zhang }; 282*2b488183SChunyan Zhang 283*2b488183SChunyan Zhang anlg_phy_gc_regs: syscon@323e0000 { 284*2b488183SChunyan Zhang compatible = "sprd,ums512-glbregs", "syscon", 285*2b488183SChunyan Zhang "simple-mfd"; 286*2b488183SChunyan Zhang reg = <0 0x323e0000 0 0x3000>; 287*2b488183SChunyan Zhang #address-cells = <1>; 288*2b488183SChunyan Zhang #size-cells = <1>; 289*2b488183SChunyan Zhang ranges = <0 0 0x323e0000 0x3000>; 290*2b488183SChunyan Zhang 291*2b488183SChunyan Zhang pll2: clock-controller@0 { 292*2b488183SChunyan Zhang compatible = "sprd,ums512-gc-pll"; 293*2b488183SChunyan Zhang reg = <0x0 0x100>; 294*2b488183SChunyan Zhang clock-names = "ext-26m"; 295*2b488183SChunyan Zhang #clock-cells = <1>; 296*2b488183SChunyan Zhang }; 297*2b488183SChunyan Zhang }; 298*2b488183SChunyan Zhang 299*2b488183SChunyan Zhang anlg_phy_g10_regs: syscon@323f0000 { 300*2b488183SChunyan Zhang compatible = "sprd,ums512-glbregs", "syscon", 301*2b488183SChunyan Zhang "simple-mfd"; 302*2b488183SChunyan Zhang reg = <0 0x323f0000 0 0x3000>; 303*2b488183SChunyan Zhang }; 304*2b488183SChunyan Zhang 305*2b488183SChunyan Zhang aon_apb_regs: syscon@327d0000 { 306*2b488183SChunyan Zhang compatible = "sprd,ums512-glbregs", "syscon", 307*2b488183SChunyan Zhang "simple-mfd"; 308*2b488183SChunyan Zhang reg = <0 0x327d0000 0 0x3000>; 309*2b488183SChunyan Zhang #address-cells = <1>; 310*2b488183SChunyan Zhang #size-cells = <1>; 311*2b488183SChunyan Zhang ranges = <0 0 0x327d0000 0x3000>; 312*2b488183SChunyan Zhang 313*2b488183SChunyan Zhang aonapb_gate: clock-controller@0 { 314*2b488183SChunyan Zhang compatible = "sprd,ums512-aon-gate"; 315*2b488183SChunyan Zhang reg = <0x0 0x3000>; 316*2b488183SChunyan Zhang clocks = <&ext_26m>; 317*2b488183SChunyan Zhang clock-names = "ext-26m"; 318*2b488183SChunyan Zhang #clock-cells = <1>; 319*2b488183SChunyan Zhang }; 320*2b488183SChunyan Zhang }; 321*2b488183SChunyan Zhang 322*2b488183SChunyan Zhang pmu_apb_regs: syscon@327e0000 { 323*2b488183SChunyan Zhang compatible = "sprd,ums512-glbregs", "syscon", 324*2b488183SChunyan Zhang "simple-mfd"; 325*2b488183SChunyan Zhang reg = <0 0x327e0000 0 0x3000>; 326*2b488183SChunyan Zhang #address-cells = <1>; 327*2b488183SChunyan Zhang #size-cells = <1>; 328*2b488183SChunyan Zhang ranges = <0 0 0x327e0000 0x3000>; 329*2b488183SChunyan Zhang 330*2b488183SChunyan Zhang pmu_gate: clock-controller@0 { 331*2b488183SChunyan Zhang compatible = "sprd,ums512-pmu-gate"; 332*2b488183SChunyan Zhang reg = <0x0 0x3000>; 333*2b488183SChunyan Zhang clocks = <&ext_26m>; 334*2b488183SChunyan Zhang clock-names = "ext-26m"; 335*2b488183SChunyan Zhang #clock-cells = <1>; 336*2b488183SChunyan Zhang }; 337*2b488183SChunyan Zhang }; 338*2b488183SChunyan Zhang 339*2b488183SChunyan Zhang audcp_apb_regs: syscon@3350d000 { 340*2b488183SChunyan Zhang compatible = "sprd,ums512-glbregs", "syscon", 341*2b488183SChunyan Zhang "simple-mfd"; 342*2b488183SChunyan Zhang reg = <0 0x3350d000 0 0x1000>; 343*2b488183SChunyan Zhang #address-cells = <1>; 344*2b488183SChunyan Zhang #size-cells = <1>; 345*2b488183SChunyan Zhang ranges = <0 0 0x3350d000 0x1000>; 346*2b488183SChunyan Zhang 347*2b488183SChunyan Zhang audcpapb_gate: clock-controller@0 { 348*2b488183SChunyan Zhang compatible = "sprd,ums512-audcpapb-gate"; 349*2b488183SChunyan Zhang reg = <0x0 0x300>; 350*2b488183SChunyan Zhang #clock-cells = <1>; 351*2b488183SChunyan Zhang }; 352*2b488183SChunyan Zhang }; 353*2b488183SChunyan Zhang 354*2b488183SChunyan Zhang audcp_ahb_regs: syscon@335e0000 { 355*2b488183SChunyan Zhang compatible = "sprd,ums512-glbregs", "syscon", 356*2b488183SChunyan Zhang "simple-mfd"; 357*2b488183SChunyan Zhang reg = <0 0x335e0000 0 0x1000>; 358*2b488183SChunyan Zhang #address-cells = <1>; 359*2b488183SChunyan Zhang #size-cells = <1>; 360*2b488183SChunyan Zhang ranges = <0 0 0x335e0000 0x1000>; 361*2b488183SChunyan Zhang 362*2b488183SChunyan Zhang audcpahb_gate: clock-controller@0 { 363*2b488183SChunyan Zhang compatible = "sprd,ums512-audcpahb-gate"; 364*2b488183SChunyan Zhang reg = <0x0 0x300>; 365*2b488183SChunyan Zhang #clock-cells = <1>; 366*2b488183SChunyan Zhang }; 367*2b488183SChunyan Zhang }; 368*2b488183SChunyan Zhang 369*2b488183SChunyan Zhang gpu_apb_regs: syscon@60100000 { 370*2b488183SChunyan Zhang compatible = "sprd,ums512-glbregs", "syscon", 371*2b488183SChunyan Zhang "simple-mfd"; 372*2b488183SChunyan Zhang reg = <0 0x60100000 0 0x3000>; 373*2b488183SChunyan Zhang #address-cells = <1>; 374*2b488183SChunyan Zhang #size-cells = <1>; 375*2b488183SChunyan Zhang ranges = <0 0 0x60100000 0x3000>; 376*2b488183SChunyan Zhang 377*2b488183SChunyan Zhang gpu_clk: clock-controller@0 { 378*2b488183SChunyan Zhang compatible = "sprd,ums512-gpu-clk"; 379*2b488183SChunyan Zhang clocks = <&ext_26m>; 380*2b488183SChunyan Zhang clock-names = "ext-26m"; 381*2b488183SChunyan Zhang reg = <0x0 0x100>; 382*2b488183SChunyan Zhang #clock-cells = <1>; 383*2b488183SChunyan Zhang }; 384*2b488183SChunyan Zhang }; 385*2b488183SChunyan Zhang 386*2b488183SChunyan Zhang gpu_dvfs_apb_regs: syscon@60110000 { 387*2b488183SChunyan Zhang compatible = "sprd,ums512-glbregs", "syscon", 388*2b488183SChunyan Zhang "simple-mfd"; 389*2b488183SChunyan Zhang reg = <0 0x60110000 0 0x3000>; 390*2b488183SChunyan Zhang }; 391*2b488183SChunyan Zhang 392*2b488183SChunyan Zhang mm_ahb_regs: syscon@62200000 { 393*2b488183SChunyan Zhang compatible = "sprd,ums512-glbregs", "syscon", 394*2b488183SChunyan Zhang "simple-mfd"; 395*2b488183SChunyan Zhang reg = <0 0x62200000 0 0x3000>; 396*2b488183SChunyan Zhang #address-cells = <1>; 397*2b488183SChunyan Zhang #size-cells = <1>; 398*2b488183SChunyan Zhang ranges = <0 0 0x62200000 0x3000>; 399*2b488183SChunyan Zhang 400*2b488183SChunyan Zhang mm_gate: clock-controller@0 { 401*2b488183SChunyan Zhang compatible = "sprd,ums512-mm-gate-clk"; 402*2b488183SChunyan Zhang reg = <0x0 0x3000>; 403*2b488183SChunyan Zhang #clock-cells = <1>; 404*2b488183SChunyan Zhang }; 405*2b488183SChunyan Zhang }; 406*2b488183SChunyan Zhang 407*2b488183SChunyan Zhang ap_apb_regs: syscon@71000000 { 408*2b488183SChunyan Zhang compatible = "sprd,ums512-glbregs", "syscon", 409*2b488183SChunyan Zhang "simple-mfd"; 410*2b488183SChunyan Zhang reg = <0 0x71000000 0 0x3000>; 411*2b488183SChunyan Zhang #address-cells = <1>; 412*2b488183SChunyan Zhang #size-cells = <1>; 413*2b488183SChunyan Zhang ranges = <0 0 0x71000000 0x3000>; 414*2b488183SChunyan Zhang 415*2b488183SChunyan Zhang apapb_gate: clock-controller@0 { 416*2b488183SChunyan Zhang compatible = "sprd,ums512-apapb-gate"; 417*2b488183SChunyan Zhang reg = <0x0 0x3000>; 418*2b488183SChunyan Zhang #clock-cells = <1>; 419*2b488183SChunyan Zhang }; 420*2b488183SChunyan Zhang }; 421*2b488183SChunyan Zhang 422*2b488183SChunyan Zhang ap_clk: clock-controller@20200000 { 423*2b488183SChunyan Zhang compatible = "sprd,ums512-ap-clk"; 424*2b488183SChunyan Zhang reg = <0 0x20200000 0 0x1000>; 425*2b488183SChunyan Zhang clocks = <&ext_26m>; 426*2b488183SChunyan Zhang clock-names = "ext-26m"; 427*2b488183SChunyan Zhang #clock-cells = <1>; 428*2b488183SChunyan Zhang }; 429*2b488183SChunyan Zhang 430*2b488183SChunyan Zhang aon_clk: clock-controller@32080000 { 431*2b488183SChunyan Zhang compatible = "sprd,ums512-aonapb-clk"; 432*2b488183SChunyan Zhang reg = <0 0x32080000 0 0x1000>; 433*2b488183SChunyan Zhang clocks = <&ext_26m>, <&ext_32k>, 434*2b488183SChunyan Zhang <&ext_4m>, <&rco_100m>; 435*2b488183SChunyan Zhang clock-names = "ext-26m", "ext-32k", 436*2b488183SChunyan Zhang "ext-4m", "rco-100m"; 437*2b488183SChunyan Zhang #clock-cells = <1>; 438*2b488183SChunyan Zhang }; 439*2b488183SChunyan Zhang 440*2b488183SChunyan Zhang mm_clk: clock-controller@62100000 { 441*2b488183SChunyan Zhang compatible = "sprd,ums512-mm-clk"; 442*2b488183SChunyan Zhang reg = <0 0x62100000 0 0x1000>; 443*2b488183SChunyan Zhang clocks = <&ext_26m>; 444*2b488183SChunyan Zhang clock-names = "ext-26m"; 445*2b488183SChunyan Zhang #clock-cells = <1>; 446*2b488183SChunyan Zhang }; 447*2b488183SChunyan Zhang 448*2b488183SChunyan Zhang /* SoC Funnel */ 449*2b488183SChunyan Zhang funnel@3c002000 { 450*2b488183SChunyan Zhang compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 451*2b488183SChunyan Zhang reg = <0 0x3c002000 0 0x1000>; 452*2b488183SChunyan Zhang clocks = <&ext_26m>; 453*2b488183SChunyan Zhang clock-names = "apb_pclk"; 454*2b488183SChunyan Zhang 455*2b488183SChunyan Zhang out-ports { 456*2b488183SChunyan Zhang port { 457*2b488183SChunyan Zhang funnel_soc_out_port: endpoint { 458*2b488183SChunyan Zhang remote-endpoint = <&etb_in>; 459*2b488183SChunyan Zhang }; 460*2b488183SChunyan Zhang }; 461*2b488183SChunyan Zhang }; 462*2b488183SChunyan Zhang 463*2b488183SChunyan Zhang in-ports { 464*2b488183SChunyan Zhang #address-cells = <1>; 465*2b488183SChunyan Zhang #size-cells = <0>; 466*2b488183SChunyan Zhang 467*2b488183SChunyan Zhang port@1 { 468*2b488183SChunyan Zhang reg = <1>; 469*2b488183SChunyan Zhang funnel_soc_in_port: endpoint { 470*2b488183SChunyan Zhang remote-endpoint = 471*2b488183SChunyan Zhang <&funnel_corinth_out_port>; 472*2b488183SChunyan Zhang }; 473*2b488183SChunyan Zhang }; 474*2b488183SChunyan Zhang }; 475*2b488183SChunyan Zhang }; 476*2b488183SChunyan Zhang 477*2b488183SChunyan Zhang /* SoC ETF */ 478*2b488183SChunyan Zhang soc_etb: etb@3c003000 { 479*2b488183SChunyan Zhang compatible = "arm,coresight-tmc", "arm,primecell"; 480*2b488183SChunyan Zhang reg = <0 0x3c003000 0 0x1000>; 481*2b488183SChunyan Zhang clocks = <&ext_26m>; 482*2b488183SChunyan Zhang clock-names = "apb_pclk"; 483*2b488183SChunyan Zhang 484*2b488183SChunyan Zhang in-ports { 485*2b488183SChunyan Zhang port { 486*2b488183SChunyan Zhang etb_in: endpoint { 487*2b488183SChunyan Zhang remote-endpoint = 488*2b488183SChunyan Zhang <&funnel_soc_out_port>; 489*2b488183SChunyan Zhang }; 490*2b488183SChunyan Zhang }; 491*2b488183SChunyan Zhang }; 492*2b488183SChunyan Zhang }; 493*2b488183SChunyan Zhang 494*2b488183SChunyan Zhang /* AP-CPU Funnel for core3/4/5/7 */ 495*2b488183SChunyan Zhang funnel@3e001000 { 496*2b488183SChunyan Zhang compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 497*2b488183SChunyan Zhang reg = <0 0x3e001000 0 0x1000>; 498*2b488183SChunyan Zhang clocks = <&ext_26m>; 499*2b488183SChunyan Zhang clock-names = "apb_pclk"; 500*2b488183SChunyan Zhang 501*2b488183SChunyan Zhang out-ports { 502*2b488183SChunyan Zhang port { 503*2b488183SChunyan Zhang funnel_corinth_lit_out_port: endpoint { 504*2b488183SChunyan Zhang remote-endpoint = 505*2b488183SChunyan Zhang <&corinth_etf_lit_in>; 506*2b488183SChunyan Zhang }; 507*2b488183SChunyan Zhang }; 508*2b488183SChunyan Zhang }; 509*2b488183SChunyan Zhang 510*2b488183SChunyan Zhang in-ports { 511*2b488183SChunyan Zhang #address-cells = <1>; 512*2b488183SChunyan Zhang #size-cells = <0>; 513*2b488183SChunyan Zhang 514*2b488183SChunyan Zhang port@0 { 515*2b488183SChunyan Zhang reg = <0>; 516*2b488183SChunyan Zhang funnel_core_in_port3: endpoint { 517*2b488183SChunyan Zhang remote-endpoint = <&etm3_out>; 518*2b488183SChunyan Zhang }; 519*2b488183SChunyan Zhang }; 520*2b488183SChunyan Zhang 521*2b488183SChunyan Zhang port@1 { 522*2b488183SChunyan Zhang reg = <1>; 523*2b488183SChunyan Zhang funnel_core_in_port4: endpoint { 524*2b488183SChunyan Zhang remote-endpoint = <&etm4_out>; 525*2b488183SChunyan Zhang }; 526*2b488183SChunyan Zhang }; 527*2b488183SChunyan Zhang 528*2b488183SChunyan Zhang port@2 { 529*2b488183SChunyan Zhang reg = <2>; 530*2b488183SChunyan Zhang funnel_core_in_port5: endpoint { 531*2b488183SChunyan Zhang remote-endpoint = <&etm5_out>; 532*2b488183SChunyan Zhang }; 533*2b488183SChunyan Zhang }; 534*2b488183SChunyan Zhang 535*2b488183SChunyan Zhang port@3 { 536*2b488183SChunyan Zhang reg = <3>; 537*2b488183SChunyan Zhang funnel_core_in_port7: endpoint { 538*2b488183SChunyan Zhang remote-endpoint = <&etm7_out>; 539*2b488183SChunyan Zhang }; 540*2b488183SChunyan Zhang }; 541*2b488183SChunyan Zhang }; 542*2b488183SChunyan Zhang }; 543*2b488183SChunyan Zhang 544*2b488183SChunyan Zhang /* AP-CPU ETF for little cores */ 545*2b488183SChunyan Zhang etf@3e002000 { 546*2b488183SChunyan Zhang compatible = "arm,coresight-tmc", "arm,primecell"; 547*2b488183SChunyan Zhang reg = <0 0x3e002000 0 0x1000>; 548*2b488183SChunyan Zhang clocks = <&ext_26m>; 549*2b488183SChunyan Zhang clock-names = "apb_pclk"; 550*2b488183SChunyan Zhang 551*2b488183SChunyan Zhang out-ports { 552*2b488183SChunyan Zhang port { 553*2b488183SChunyan Zhang corinth_etf_lit_out: endpoint { 554*2b488183SChunyan Zhang remote-endpoint = 555*2b488183SChunyan Zhang <&funnel_corinth_from_lit_in_port>; 556*2b488183SChunyan Zhang }; 557*2b488183SChunyan Zhang }; 558*2b488183SChunyan Zhang }; 559*2b488183SChunyan Zhang 560*2b488183SChunyan Zhang in-ports { 561*2b488183SChunyan Zhang port { 562*2b488183SChunyan Zhang corinth_etf_lit_in: endpoint { 563*2b488183SChunyan Zhang remote-endpoint = 564*2b488183SChunyan Zhang <&funnel_corinth_lit_out_port>; 565*2b488183SChunyan Zhang }; 566*2b488183SChunyan Zhang }; 567*2b488183SChunyan Zhang }; 568*2b488183SChunyan Zhang }; 569*2b488183SChunyan Zhang 570*2b488183SChunyan Zhang /* AP-CPU ETF for big cores */ 571*2b488183SChunyan Zhang etf@3e003000 { 572*2b488183SChunyan Zhang compatible = "arm,coresight-tmc", "arm,primecell"; 573*2b488183SChunyan Zhang reg = <0 0x3e003000 0 0x1000>; 574*2b488183SChunyan Zhang clocks = <&ext_26m>; 575*2b488183SChunyan Zhang clock-names = "apb_pclk"; 576*2b488183SChunyan Zhang 577*2b488183SChunyan Zhang out-ports { 578*2b488183SChunyan Zhang port { 579*2b488183SChunyan Zhang corinth_etf_big_out: endpoint { 580*2b488183SChunyan Zhang remote-endpoint = 581*2b488183SChunyan Zhang <&funnel_corinth_from_big_in_port>; 582*2b488183SChunyan Zhang }; 583*2b488183SChunyan Zhang }; 584*2b488183SChunyan Zhang }; 585*2b488183SChunyan Zhang 586*2b488183SChunyan Zhang in-ports { 587*2b488183SChunyan Zhang port { 588*2b488183SChunyan Zhang corinth_etf_big_in: endpoint { 589*2b488183SChunyan Zhang remote-endpoint = 590*2b488183SChunyan Zhang <&funnel_corinth_big_out_port>; 591*2b488183SChunyan Zhang }; 592*2b488183SChunyan Zhang }; 593*2b488183SChunyan Zhang }; 594*2b488183SChunyan Zhang }; 595*2b488183SChunyan Zhang 596*2b488183SChunyan Zhang /* Funnel to SoC */ 597*2b488183SChunyan Zhang funnel@3e004000 { 598*2b488183SChunyan Zhang compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 599*2b488183SChunyan Zhang reg = <0 0x3e004000 0 0x1000>; 600*2b488183SChunyan Zhang clocks = <&ext_26m>; 601*2b488183SChunyan Zhang clock-names = "apb_pclk"; 602*2b488183SChunyan Zhang 603*2b488183SChunyan Zhang out-ports { 604*2b488183SChunyan Zhang port { 605*2b488183SChunyan Zhang funnel_corinth_out_port: endpoint { 606*2b488183SChunyan Zhang remote-endpoint = 607*2b488183SChunyan Zhang <&funnel_soc_in_port>; 608*2b488183SChunyan Zhang }; 609*2b488183SChunyan Zhang }; 610*2b488183SChunyan Zhang }; 611*2b488183SChunyan Zhang 612*2b488183SChunyan Zhang in-ports { 613*2b488183SChunyan Zhang #address-cells = <1>; 614*2b488183SChunyan Zhang #size-cells = <0>; 615*2b488183SChunyan Zhang 616*2b488183SChunyan Zhang port@0 { 617*2b488183SChunyan Zhang reg = <0>; 618*2b488183SChunyan Zhang funnel_corinth_from_lit_in_port: endpoint { 619*2b488183SChunyan Zhang remote-endpoint = <&corinth_etf_lit_out>; 620*2b488183SChunyan Zhang }; 621*2b488183SChunyan Zhang }; 622*2b488183SChunyan Zhang 623*2b488183SChunyan Zhang port@1 { 624*2b488183SChunyan Zhang reg = <1>; 625*2b488183SChunyan Zhang funnel_corinth_from_big_in_port: endpoint { 626*2b488183SChunyan Zhang remote-endpoint = <&corinth_etf_big_out>; 627*2b488183SChunyan Zhang }; 628*2b488183SChunyan Zhang }; 629*2b488183SChunyan Zhang }; 630*2b488183SChunyan Zhang }; 631*2b488183SChunyan Zhang 632*2b488183SChunyan Zhang /* AP-CPU Funnel for core0/1/2/6 */ 633*2b488183SChunyan Zhang funnel@3e005000 { 634*2b488183SChunyan Zhang compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 635*2b488183SChunyan Zhang reg = <0 0x3e005000 0 0x1000>; 636*2b488183SChunyan Zhang clocks = <&ext_26m>; 637*2b488183SChunyan Zhang clock-names = "apb_pclk"; 638*2b488183SChunyan Zhang 639*2b488183SChunyan Zhang out-ports { 640*2b488183SChunyan Zhang port { 641*2b488183SChunyan Zhang funnel_corinth_big_out_port: endpoint { 642*2b488183SChunyan Zhang remote-endpoint = <&corinth_etf_big_in>; 643*2b488183SChunyan Zhang }; 644*2b488183SChunyan Zhang }; 645*2b488183SChunyan Zhang }; 646*2b488183SChunyan Zhang 647*2b488183SChunyan Zhang in-ports { 648*2b488183SChunyan Zhang #address-cells = <1>; 649*2b488183SChunyan Zhang #size-cells = <0>; 650*2b488183SChunyan Zhang 651*2b488183SChunyan Zhang port@0 { 652*2b488183SChunyan Zhang reg = <0>; 653*2b488183SChunyan Zhang funnel_core_in_port0: endpoint { 654*2b488183SChunyan Zhang remote-endpoint = <&etm0_out>; 655*2b488183SChunyan Zhang }; 656*2b488183SChunyan Zhang }; 657*2b488183SChunyan Zhang 658*2b488183SChunyan Zhang port@1 { 659*2b488183SChunyan Zhang reg = <1>; 660*2b488183SChunyan Zhang funnel_core_in_port1: endpoint { 661*2b488183SChunyan Zhang remote-endpoint = <&etm1_out>; 662*2b488183SChunyan Zhang }; 663*2b488183SChunyan Zhang }; 664*2b488183SChunyan Zhang 665*2b488183SChunyan Zhang port@2 { 666*2b488183SChunyan Zhang reg = <2>; 667*2b488183SChunyan Zhang funnel_core_in_port2: endpoint { 668*2b488183SChunyan Zhang remote-endpoint = <&etm2_out>; 669*2b488183SChunyan Zhang }; 670*2b488183SChunyan Zhang }; 671*2b488183SChunyan Zhang 672*2b488183SChunyan Zhang port@3 { 673*2b488183SChunyan Zhang reg = <3>; 674*2b488183SChunyan Zhang funnel_core_in_port6: endpoint { 675*2b488183SChunyan Zhang remote-endpoint = <&etm6_out>; 676*2b488183SChunyan Zhang }; 677*2b488183SChunyan Zhang }; 678*2b488183SChunyan Zhang }; 679*2b488183SChunyan Zhang }; 680*2b488183SChunyan Zhang 681*2b488183SChunyan Zhang etm0: etm@3f040000 { 682*2b488183SChunyan Zhang compatible = "arm,coresight-etm4x", "arm,primecell"; 683*2b488183SChunyan Zhang reg = <0 0x3f040000 0 0x1000>; 684*2b488183SChunyan Zhang cpu = <&CPU0>; 685*2b488183SChunyan Zhang clocks = <&ext_26m>, <&aon_clk CLK_CSSYS>, <&pll2 CLK_TWPLL_512M>; 686*2b488183SChunyan Zhang clock-names = "apb_pclk", "clk_cs", "cs_src"; 687*2b488183SChunyan Zhang 688*2b488183SChunyan Zhang out-ports { 689*2b488183SChunyan Zhang port { 690*2b488183SChunyan Zhang etm0_out: endpoint { 691*2b488183SChunyan Zhang remote-endpoint = 692*2b488183SChunyan Zhang <&funnel_core_in_port0>; 693*2b488183SChunyan Zhang }; 694*2b488183SChunyan Zhang }; 695*2b488183SChunyan Zhang }; 696*2b488183SChunyan Zhang }; 697*2b488183SChunyan Zhang 698*2b488183SChunyan Zhang etm1: etm@3f140000 { 699*2b488183SChunyan Zhang compatible = "arm,coresight-etm4x", "arm,primecell"; 700*2b488183SChunyan Zhang reg = <0 0x3f140000 0 0x1000>; 701*2b488183SChunyan Zhang cpu = <&CPU1>; 702*2b488183SChunyan Zhang clocks = <&ext_26m>, <&aon_clk CLK_CSSYS>, <&pll2 CLK_TWPLL_512M>; 703*2b488183SChunyan Zhang clock-names = "apb_pclk", "clk_cs", "cs_src"; 704*2b488183SChunyan Zhang 705*2b488183SChunyan Zhang out-ports { 706*2b488183SChunyan Zhang port { 707*2b488183SChunyan Zhang etm1_out: endpoint { 708*2b488183SChunyan Zhang remote-endpoint = 709*2b488183SChunyan Zhang <&funnel_core_in_port1>; 710*2b488183SChunyan Zhang }; 711*2b488183SChunyan Zhang }; 712*2b488183SChunyan Zhang }; 713*2b488183SChunyan Zhang }; 714*2b488183SChunyan Zhang 715*2b488183SChunyan Zhang etm2: etm@3f240000 { 716*2b488183SChunyan Zhang compatible = "arm,coresight-etm4x", "arm,primecell"; 717*2b488183SChunyan Zhang reg = <0 0x3f240000 0 0x1000>; 718*2b488183SChunyan Zhang cpu = <&CPU2>; 719*2b488183SChunyan Zhang clocks = <&ext_26m>, <&aon_clk CLK_CSSYS>, <&pll2 CLK_TWPLL_512M>; 720*2b488183SChunyan Zhang clock-names = "apb_pclk", "clk_cs", "cs_src"; 721*2b488183SChunyan Zhang 722*2b488183SChunyan Zhang out-ports { 723*2b488183SChunyan Zhang port { 724*2b488183SChunyan Zhang etm2_out: endpoint { 725*2b488183SChunyan Zhang remote-endpoint = 726*2b488183SChunyan Zhang <&funnel_core_in_port2>; 727*2b488183SChunyan Zhang }; 728*2b488183SChunyan Zhang }; 729*2b488183SChunyan Zhang }; 730*2b488183SChunyan Zhang }; 731*2b488183SChunyan Zhang 732*2b488183SChunyan Zhang etm3: etm@3f340000 { 733*2b488183SChunyan Zhang compatible = "arm,coresight-etm4x", "arm,primecell"; 734*2b488183SChunyan Zhang reg = <0 0x3f340000 0 0x1000>; 735*2b488183SChunyan Zhang cpu = <&CPU3>; 736*2b488183SChunyan Zhang clocks = <&ext_26m>, <&aon_clk CLK_CSSYS>, <&pll2 CLK_TWPLL_512M>; 737*2b488183SChunyan Zhang clock-names = "apb_pclk", "clk_cs", "cs_src"; 738*2b488183SChunyan Zhang 739*2b488183SChunyan Zhang out-ports { 740*2b488183SChunyan Zhang port { 741*2b488183SChunyan Zhang etm3_out: endpoint { 742*2b488183SChunyan Zhang remote-endpoint = 743*2b488183SChunyan Zhang <&funnel_core_in_port3>; 744*2b488183SChunyan Zhang }; 745*2b488183SChunyan Zhang }; 746*2b488183SChunyan Zhang }; 747*2b488183SChunyan Zhang }; 748*2b488183SChunyan Zhang 749*2b488183SChunyan Zhang etm4: etm@3f440000 { 750*2b488183SChunyan Zhang compatible = "arm,coresight-etm4x", "arm,primecell"; 751*2b488183SChunyan Zhang reg = <0 0x3f440000 0 0x1000>; 752*2b488183SChunyan Zhang cpu = <&CPU4>; 753*2b488183SChunyan Zhang clocks = <&ext_26m>, <&aon_clk CLK_CSSYS>, <&pll2 CLK_TWPLL_512M>; 754*2b488183SChunyan Zhang clock-names = "apb_pclk", "clk_cs", "cs_src"; 755*2b488183SChunyan Zhang 756*2b488183SChunyan Zhang out-ports { 757*2b488183SChunyan Zhang port { 758*2b488183SChunyan Zhang etm4_out: endpoint { 759*2b488183SChunyan Zhang remote-endpoint = 760*2b488183SChunyan Zhang <&funnel_core_in_port4>; 761*2b488183SChunyan Zhang }; 762*2b488183SChunyan Zhang }; 763*2b488183SChunyan Zhang }; 764*2b488183SChunyan Zhang }; 765*2b488183SChunyan Zhang 766*2b488183SChunyan Zhang etm5: etm@3f540000 { 767*2b488183SChunyan Zhang compatible = "arm,coresight-etm4x", "arm,primecell"; 768*2b488183SChunyan Zhang reg = <0 0x3f540000 0 0x1000>; 769*2b488183SChunyan Zhang cpu = <&CPU5>; 770*2b488183SChunyan Zhang clocks = <&ext_26m>, <&aon_clk CLK_CSSYS>, <&pll2 CLK_TWPLL_512M>; 771*2b488183SChunyan Zhang clock-names = "apb_pclk", "clk_cs", "cs_src"; 772*2b488183SChunyan Zhang 773*2b488183SChunyan Zhang out-ports { 774*2b488183SChunyan Zhang port { 775*2b488183SChunyan Zhang etm5_out: endpoint { 776*2b488183SChunyan Zhang remote-endpoint = 777*2b488183SChunyan Zhang <&funnel_core_in_port5>; 778*2b488183SChunyan Zhang }; 779*2b488183SChunyan Zhang }; 780*2b488183SChunyan Zhang }; 781*2b488183SChunyan Zhang }; 782*2b488183SChunyan Zhang 783*2b488183SChunyan Zhang etm6: etm@3f640000 { 784*2b488183SChunyan Zhang compatible = "arm,coresight-etm4x", "arm,primecell"; 785*2b488183SChunyan Zhang reg = <0 0x3f640000 0 0x1000>; 786*2b488183SChunyan Zhang cpu = <&CPU6>; 787*2b488183SChunyan Zhang clocks = <&ext_26m>, <&aon_clk CLK_CSSYS>, <&pll2 CLK_TWPLL_512M>; 788*2b488183SChunyan Zhang clock-names = "apb_pclk", "clk_cs", "cs_src"; 789*2b488183SChunyan Zhang 790*2b488183SChunyan Zhang out-ports { 791*2b488183SChunyan Zhang port { 792*2b488183SChunyan Zhang etm6_out: endpoint { 793*2b488183SChunyan Zhang remote-endpoint = 794*2b488183SChunyan Zhang <&funnel_core_in_port6>; 795*2b488183SChunyan Zhang }; 796*2b488183SChunyan Zhang }; 797*2b488183SChunyan Zhang }; 798*2b488183SChunyan Zhang }; 799*2b488183SChunyan Zhang 800*2b488183SChunyan Zhang etm7: etm@3f740000 { 801*2b488183SChunyan Zhang compatible = "arm,coresight-etm4x", "arm,primecell"; 802*2b488183SChunyan Zhang reg = <0 0x3f740000 0 0x1000>; 803*2b488183SChunyan Zhang cpu = <&CPU7>; 804*2b488183SChunyan Zhang clocks = <&ext_26m>, <&aon_clk CLK_CSSYS>, <&pll2 CLK_TWPLL_512M>; 805*2b488183SChunyan Zhang clock-names = "apb_pclk", "clk_cs", "cs_src"; 806*2b488183SChunyan Zhang 807*2b488183SChunyan Zhang out-ports { 808*2b488183SChunyan Zhang port { 809*2b488183SChunyan Zhang etm7_out: endpoint { 810*2b488183SChunyan Zhang remote-endpoint = 811*2b488183SChunyan Zhang <&funnel_core_in_port7>; 812*2b488183SChunyan Zhang }; 813*2b488183SChunyan Zhang }; 814*2b488183SChunyan Zhang }; 815*2b488183SChunyan Zhang }; 816*2b488183SChunyan Zhang 817*2b488183SChunyan Zhang apb@70000000 { 818*2b488183SChunyan Zhang compatible = "simple-bus"; 819*2b488183SChunyan Zhang #address-cells = <1>; 820*2b488183SChunyan Zhang #size-cells = <1>; 821*2b488183SChunyan Zhang ranges = <0 0x0 0x70000000 0x10000000>; 822*2b488183SChunyan Zhang 823*2b488183SChunyan Zhang uart0: serial@0 { 824*2b488183SChunyan Zhang compatible = "sprd,ums512-uart", 825*2b488183SChunyan Zhang "sprd,sc9836-uart"; 826*2b488183SChunyan Zhang reg = <0x0 0x100>; 827*2b488183SChunyan Zhang interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>; 828*2b488183SChunyan Zhang clocks = <&ext_26m>; 829*2b488183SChunyan Zhang status = "disabled"; 830*2b488183SChunyan Zhang }; 831*2b488183SChunyan Zhang 832*2b488183SChunyan Zhang uart1: serial@100000 { 833*2b488183SChunyan Zhang compatible = "sprd,ums512-uart", 834*2b488183SChunyan Zhang "sprd,sc9836-uart"; 835*2b488183SChunyan Zhang reg = <0x100000 0x100>; 836*2b488183SChunyan Zhang interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>; 837*2b488183SChunyan Zhang clocks = <&ext_26m>; 838*2b488183SChunyan Zhang status = "disabled"; 839*2b488183SChunyan Zhang }; 840*2b488183SChunyan Zhang 841*2b488183SChunyan Zhang sdio0: mmc@1100000 { 842*2b488183SChunyan Zhang compatible = "sprd,sdhci-r11"; 843*2b488183SChunyan Zhang reg = <0x1100000 0x1000>; 844*2b488183SChunyan Zhang interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>; 845*2b488183SChunyan Zhang clock-names = "sdio", "enable"; 846*2b488183SChunyan Zhang clocks = <&ap_clk CLK_SDIO0_2X>, 847*2b488183SChunyan Zhang <&apapb_gate CLK_SDIO0_EB>; 848*2b488183SChunyan Zhang assigned-clocks = <&ap_clk CLK_SDIO0_2X>; 849*2b488183SChunyan Zhang assigned-clock-parents = <&pll1 CLK_RPLL>; 850*2b488183SChunyan Zhang status = "disabled"; 851*2b488183SChunyan Zhang }; 852*2b488183SChunyan Zhang 853*2b488183SChunyan Zhang sdio3: mmc@1400000 { 854*2b488183SChunyan Zhang compatible = "sprd,sdhci-r11"; 855*2b488183SChunyan Zhang reg = <0x1400000 0x1000>; 856*2b488183SChunyan Zhang interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>; 857*2b488183SChunyan Zhang clock-names = "sdio", "enable"; 858*2b488183SChunyan Zhang clocks = <&ap_clk CLK_EMMC_2X>, 859*2b488183SChunyan Zhang <&apapb_gate CLK_EMMC_EB>; 860*2b488183SChunyan Zhang assigned-clocks = <&ap_clk CLK_EMMC_2X>; 861*2b488183SChunyan Zhang assigned-clock-parents = <&pll1 CLK_RPLL>; 862*2b488183SChunyan Zhang status = "disabled"; 863*2b488183SChunyan Zhang }; 864*2b488183SChunyan Zhang }; 865*2b488183SChunyan Zhang 866*2b488183SChunyan Zhang aon: bus@32000000 { 867*2b488183SChunyan Zhang compatible = "simple-bus"; 868*2b488183SChunyan Zhang #address-cells = <1>; 869*2b488183SChunyan Zhang #size-cells = <1>; 870*2b488183SChunyan Zhang ranges = <0 0x0 0x32000000 0x1000000>; 871*2b488183SChunyan Zhang 872*2b488183SChunyan Zhang adi_bus: spi@100000 { 873*2b488183SChunyan Zhang compatible = "sprd,ums512-adi"; 874*2b488183SChunyan Zhang reg = <0x100000 0x100000>; 875*2b488183SChunyan Zhang #address-cells = <1>; 876*2b488183SChunyan Zhang #size-cells = <0>; 877*2b488183SChunyan Zhang sprd,hw-channels = <2 0x18cc>, <3 0x18cc>, <13 0x1854>, <15 0x1874>, 878*2b488183SChunyan Zhang <17 0x1844>,<19 0x1844>, <21 0x1864>, <30 0x1820>, 879*2b488183SChunyan Zhang <35 0x19b8>, <39 0x19ac>; 880*2b488183SChunyan Zhang }; 881*2b488183SChunyan Zhang }; 882*2b488183SChunyan Zhang }; 883*2b488183SChunyan Zhang 884*2b488183SChunyan Zhang ext_26m: clk-26m { 885*2b488183SChunyan Zhang compatible = "fixed-clock"; 886*2b488183SChunyan Zhang #clock-cells = <0>; 887*2b488183SChunyan Zhang clock-frequency = <26000000>; 888*2b488183SChunyan Zhang clock-output-names = "ext-26m"; 889*2b488183SChunyan Zhang }; 890*2b488183SChunyan Zhang 891*2b488183SChunyan Zhang ext_32k: clk-32k { 892*2b488183SChunyan Zhang compatible = "fixed-clock"; 893*2b488183SChunyan Zhang #clock-cells = <0>; 894*2b488183SChunyan Zhang clock-frequency = <32768>; 895*2b488183SChunyan Zhang clock-output-names = "ext-32k"; 896*2b488183SChunyan Zhang }; 897*2b488183SChunyan Zhang 898*2b488183SChunyan Zhang ext_4m: clk-4m { 899*2b488183SChunyan Zhang compatible = "fixed-clock"; 900*2b488183SChunyan Zhang #clock-cells = <0>; 901*2b488183SChunyan Zhang clock-frequency = <4000000>; 902*2b488183SChunyan Zhang clock-output-names = "ext-4m"; 903*2b488183SChunyan Zhang }; 904*2b488183SChunyan Zhang 905*2b488183SChunyan Zhang rco_100m: clk-100m { 906*2b488183SChunyan Zhang compatible = "fixed-clock"; 907*2b488183SChunyan Zhang #clock-cells = <0>; 908*2b488183SChunyan Zhang clock-frequency = <100000000>; 909*2b488183SChunyan Zhang clock-output-names = "rco-100m"; 910*2b488183SChunyan Zhang }; 911*2b488183SChunyan Zhang}; 912