1f1da5ea6SChunyan Zhang// SPDX-License-Identifier: GPL-2.0-only 2f1da5ea6SChunyan Zhang/* 3f1da5ea6SChunyan Zhang * Unisoc SC9863A SoC DTS file 4f1da5ea6SChunyan Zhang * 5f1da5ea6SChunyan Zhang * Copyright (C) 2019, Unisoc Inc. 6f1da5ea6SChunyan Zhang */ 7f1da5ea6SChunyan Zhang 8161af8fdSChunyan Zhang#include <dt-bindings/clock/sprd,sc9863a-clk.h> 9f1da5ea6SChunyan Zhang#include <dt-bindings/interrupt-controller/arm-gic.h> 10f1da5ea6SChunyan Zhang#include "sharkl3.dtsi" 11f1da5ea6SChunyan Zhang 12f1da5ea6SChunyan Zhang/ { 13f1da5ea6SChunyan Zhang cpus { 14f1da5ea6SChunyan Zhang #address-cells = <2>; 15f1da5ea6SChunyan Zhang #size-cells = <0>; 16f1da5ea6SChunyan Zhang 17f1da5ea6SChunyan Zhang cpu-map { 18f1da5ea6SChunyan Zhang cluster0 { 19f1da5ea6SChunyan Zhang core0 { 20f1da5ea6SChunyan Zhang cpu = <&CPU0>; 21f1da5ea6SChunyan Zhang }; 22f1da5ea6SChunyan Zhang core1 { 23f1da5ea6SChunyan Zhang cpu = <&CPU1>; 24f1da5ea6SChunyan Zhang }; 25f1da5ea6SChunyan Zhang core2 { 26f1da5ea6SChunyan Zhang cpu = <&CPU2>; 27f1da5ea6SChunyan Zhang }; 28f1da5ea6SChunyan Zhang core3 { 29f1da5ea6SChunyan Zhang cpu = <&CPU3>; 30f1da5ea6SChunyan Zhang }; 31f1da5ea6SChunyan Zhang core4 { 32f1da5ea6SChunyan Zhang cpu = <&CPU4>; 33f1da5ea6SChunyan Zhang }; 34f1da5ea6SChunyan Zhang core5 { 35f1da5ea6SChunyan Zhang cpu = <&CPU5>; 36f1da5ea6SChunyan Zhang }; 37f1da5ea6SChunyan Zhang core6 { 38f1da5ea6SChunyan Zhang cpu = <&CPU6>; 39f1da5ea6SChunyan Zhang }; 40f1da5ea6SChunyan Zhang core7 { 41f1da5ea6SChunyan Zhang cpu = <&CPU7>; 42f1da5ea6SChunyan Zhang }; 43f1da5ea6SChunyan Zhang }; 44f1da5ea6SChunyan Zhang }; 45f1da5ea6SChunyan Zhang 46f1da5ea6SChunyan Zhang CPU0: cpu@0 { 47f1da5ea6SChunyan Zhang device_type = "cpu"; 48f1da5ea6SChunyan Zhang compatible = "arm,cortex-a55"; 49f1da5ea6SChunyan Zhang reg = <0x0 0x0>; 50f1da5ea6SChunyan Zhang enable-method = "psci"; 51f1da5ea6SChunyan Zhang cpu-idle-states = <&CORE_PD>; 52f1da5ea6SChunyan Zhang }; 53f1da5ea6SChunyan Zhang 54f1da5ea6SChunyan Zhang CPU1: cpu@100 { 55f1da5ea6SChunyan Zhang device_type = "cpu"; 56f1da5ea6SChunyan Zhang compatible = "arm,cortex-a55"; 57f1da5ea6SChunyan Zhang reg = <0x0 0x100>; 58f1da5ea6SChunyan Zhang enable-method = "psci"; 59f1da5ea6SChunyan Zhang cpu-idle-states = <&CORE_PD>; 60f1da5ea6SChunyan Zhang }; 61f1da5ea6SChunyan Zhang 62f1da5ea6SChunyan Zhang CPU2: cpu@200 { 63f1da5ea6SChunyan Zhang device_type = "cpu"; 64f1da5ea6SChunyan Zhang compatible = "arm,cortex-a55"; 65f1da5ea6SChunyan Zhang reg = <0x0 0x200>; 66f1da5ea6SChunyan Zhang enable-method = "psci"; 67f1da5ea6SChunyan Zhang cpu-idle-states = <&CORE_PD>; 68f1da5ea6SChunyan Zhang }; 69f1da5ea6SChunyan Zhang 70f1da5ea6SChunyan Zhang CPU3: cpu@300 { 71f1da5ea6SChunyan Zhang device_type = "cpu"; 72f1da5ea6SChunyan Zhang compatible = "arm,cortex-a55"; 73f1da5ea6SChunyan Zhang reg = <0x0 0x300>; 74f1da5ea6SChunyan Zhang enable-method = "psci"; 75f1da5ea6SChunyan Zhang cpu-idle-states = <&CORE_PD>; 76f1da5ea6SChunyan Zhang }; 77f1da5ea6SChunyan Zhang 78f1da5ea6SChunyan Zhang CPU4: cpu@400 { 79f1da5ea6SChunyan Zhang device_type = "cpu"; 80f1da5ea6SChunyan Zhang compatible = "arm,cortex-a55"; 81f1da5ea6SChunyan Zhang reg = <0x0 0x400>; 82f1da5ea6SChunyan Zhang enable-method = "psci"; 83f1da5ea6SChunyan Zhang cpu-idle-states = <&CORE_PD>; 84f1da5ea6SChunyan Zhang }; 85f1da5ea6SChunyan Zhang 86f1da5ea6SChunyan Zhang CPU5: cpu@500 { 87f1da5ea6SChunyan Zhang device_type = "cpu"; 88f1da5ea6SChunyan Zhang compatible = "arm,cortex-a55"; 89f1da5ea6SChunyan Zhang reg = <0x0 0x500>; 90f1da5ea6SChunyan Zhang enable-method = "psci"; 91f1da5ea6SChunyan Zhang cpu-idle-states = <&CORE_PD>; 92f1da5ea6SChunyan Zhang }; 93f1da5ea6SChunyan Zhang 94f1da5ea6SChunyan Zhang CPU6: cpu@600 { 95f1da5ea6SChunyan Zhang device_type = "cpu"; 96f1da5ea6SChunyan Zhang compatible = "arm,cortex-a55"; 97f1da5ea6SChunyan Zhang reg = <0x0 0x600>; 98f1da5ea6SChunyan Zhang enable-method = "psci"; 99f1da5ea6SChunyan Zhang cpu-idle-states = <&CORE_PD>; 100f1da5ea6SChunyan Zhang }; 101f1da5ea6SChunyan Zhang 102f1da5ea6SChunyan Zhang CPU7: cpu@700 { 103f1da5ea6SChunyan Zhang device_type = "cpu"; 104f1da5ea6SChunyan Zhang compatible = "arm,cortex-a55"; 105f1da5ea6SChunyan Zhang reg = <0x0 0x700>; 106f1da5ea6SChunyan Zhang enable-method = "psci"; 107f1da5ea6SChunyan Zhang cpu-idle-states = <&CORE_PD>; 108f1da5ea6SChunyan Zhang }; 109f1da5ea6SChunyan Zhang }; 110f1da5ea6SChunyan Zhang 111f1da5ea6SChunyan Zhang idle-states { 1129b631649SLinus Walleij entry-method = "psci"; 113f1da5ea6SChunyan Zhang CORE_PD: core-pd { 114f1da5ea6SChunyan Zhang compatible = "arm,idle-state"; 115f1da5ea6SChunyan Zhang entry-latency-us = <4000>; 116f1da5ea6SChunyan Zhang exit-latency-us = <4000>; 117f1da5ea6SChunyan Zhang min-residency-us = <10000>; 118f1da5ea6SChunyan Zhang local-timer-stop; 119f1da5ea6SChunyan Zhang arm,psci-suspend-param = <0x00010000>; 120f1da5ea6SChunyan Zhang }; 121f1da5ea6SChunyan Zhang }; 122f1da5ea6SChunyan Zhang 123f1da5ea6SChunyan Zhang psci { 124f1da5ea6SChunyan Zhang compatible = "arm,psci-0.2"; 125f1da5ea6SChunyan Zhang method = "smc"; 126f1da5ea6SChunyan Zhang }; 127f1da5ea6SChunyan Zhang 128f1da5ea6SChunyan Zhang timer { 129f1da5ea6SChunyan Zhang compatible = "arm,armv8-timer"; 130f1da5ea6SChunyan Zhang interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_HIGH>, /* Physical Secure PPI */ 131f1da5ea6SChunyan Zhang <GIC_PPI 14 IRQ_TYPE_LEVEL_HIGH>, /* Physical Non-Secure PPI */ 132f1da5ea6SChunyan Zhang <GIC_PPI 11 IRQ_TYPE_LEVEL_HIGH>, /* Virtual PPI */ 133f1da5ea6SChunyan Zhang <GIC_PPI 10 IRQ_TYPE_LEVEL_HIGH>; /* Hipervisor PPI */ 134f1da5ea6SChunyan Zhang }; 135f1da5ea6SChunyan Zhang 136f1da5ea6SChunyan Zhang pmu { 1378b40a469SRob Herring compatible = "arm,cortex-a55-pmu"; 138f1da5ea6SChunyan Zhang interrupts = <GIC_SPI 144 IRQ_TYPE_LEVEL_HIGH>, 139f1da5ea6SChunyan Zhang <GIC_SPI 145 IRQ_TYPE_LEVEL_HIGH>, 140f1da5ea6SChunyan Zhang <GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>, 141f1da5ea6SChunyan Zhang <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>, 142f1da5ea6SChunyan Zhang <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>, 143f1da5ea6SChunyan Zhang <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>, 144f1da5ea6SChunyan Zhang <GIC_SPI 150 IRQ_TYPE_LEVEL_HIGH>, 145f1da5ea6SChunyan Zhang <GIC_SPI 151 IRQ_TYPE_LEVEL_HIGH>; 146f1da5ea6SChunyan Zhang }; 147f1da5ea6SChunyan Zhang 148f1da5ea6SChunyan Zhang soc { 149f1da5ea6SChunyan Zhang gic: interrupt-controller@14000000 { 150f1da5ea6SChunyan Zhang compatible = "arm,gic-v3"; 151f1da5ea6SChunyan Zhang #interrupt-cells = <3>; 152f1da5ea6SChunyan Zhang #address-cells = <2>; 153f1da5ea6SChunyan Zhang #size-cells = <2>; 154f1da5ea6SChunyan Zhang ranges; 155f1da5ea6SChunyan Zhang redistributor-stride = <0x0 0x20000>; /* 128KB stride */ 156f1da5ea6SChunyan Zhang #redistributor-regions = <1>; 157f1da5ea6SChunyan Zhang interrupt-controller; 158f1da5ea6SChunyan Zhang reg = <0x0 0x14000000 0 0x20000>, /* GICD */ 159f1da5ea6SChunyan Zhang <0x0 0x14040000 0 0x100000>; /* GICR */ 160f1da5ea6SChunyan Zhang interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>; 161f1da5ea6SChunyan Zhang }; 162f1da5ea6SChunyan Zhang 16378efc019SChunyan Zhang ap_clk: clock-controller@21500000 { 16478efc019SChunyan Zhang compatible = "sprd,sc9863a-ap-clk"; 16578efc019SChunyan Zhang reg = <0 0x21500000 0 0x1000>; 16678efc019SChunyan Zhang clocks = <&ext_32k>, <&ext_26m>; 16778efc019SChunyan Zhang clock-names = "ext-32k", "ext-26m"; 16878efc019SChunyan Zhang #clock-cells = <1>; 16978efc019SChunyan Zhang }; 17078efc019SChunyan Zhang 17178efc019SChunyan Zhang aon_clk: clock-controller@402d0000 { 17278efc019SChunyan Zhang compatible = "sprd,sc9863a-aon-clk"; 17378efc019SChunyan Zhang reg = <0 0x402d0000 0 0x1000>; 17478efc019SChunyan Zhang clocks = <&ext_26m>, <&rco_100m>, 17578efc019SChunyan Zhang <&ext_32k>, <&ext_4m>; 17678efc019SChunyan Zhang clock-names = "ext-26m", "rco-100m", 17778efc019SChunyan Zhang "ext-32k", "ext-4m"; 17878efc019SChunyan Zhang #clock-cells = <1>; 17978efc019SChunyan Zhang }; 18078efc019SChunyan Zhang 18178efc019SChunyan Zhang mm_clk: clock-controller@60900000 { 18278efc019SChunyan Zhang compatible = "sprd,sc9863a-mm-clk"; 18378efc019SChunyan Zhang reg = <0 0x60900000 0 0x1000>; 18478efc019SChunyan Zhang #clock-cells = <1>; 18578efc019SChunyan Zhang }; 18678efc019SChunyan Zhang 187f1da5ea6SChunyan Zhang funnel@10001000 { 188f1da5ea6SChunyan Zhang compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 189f1da5ea6SChunyan Zhang reg = <0 0x10001000 0 0x1000>; 190f1da5ea6SChunyan Zhang clocks = <&ext_26m>; 191f1da5ea6SChunyan Zhang clock-names = "apb_pclk"; 192f1da5ea6SChunyan Zhang 193f1da5ea6SChunyan Zhang out-ports { 194f1da5ea6SChunyan Zhang port { 195f1da5ea6SChunyan Zhang funnel_soc_out_port: endpoint { 196f1da5ea6SChunyan Zhang remote-endpoint = <&etb_in>; 197f1da5ea6SChunyan Zhang }; 198f1da5ea6SChunyan Zhang }; 199f1da5ea6SChunyan Zhang }; 200f1da5ea6SChunyan Zhang 201f1da5ea6SChunyan Zhang in-ports { 202f1da5ea6SChunyan Zhang port { 203f1da5ea6SChunyan Zhang funnel_soc_in_port: endpoint { 204f1da5ea6SChunyan Zhang remote-endpoint = 205f1da5ea6SChunyan Zhang <&funnel_ca55_out_port>; 206f1da5ea6SChunyan Zhang }; 207f1da5ea6SChunyan Zhang }; 208f1da5ea6SChunyan Zhang }; 209f1da5ea6SChunyan Zhang }; 210f1da5ea6SChunyan Zhang 211f1da5ea6SChunyan Zhang etb@10003000 { 212f1da5ea6SChunyan Zhang compatible = "arm,coresight-tmc", "arm,primecell"; 213f1da5ea6SChunyan Zhang reg = <0 0x10003000 0 0x1000>; 214f1da5ea6SChunyan Zhang clocks = <&ext_26m>; 215f1da5ea6SChunyan Zhang clock-names = "apb_pclk"; 216f1da5ea6SChunyan Zhang 217f1da5ea6SChunyan Zhang in-ports { 218f1da5ea6SChunyan Zhang port { 219f1da5ea6SChunyan Zhang etb_in: endpoint { 220f1da5ea6SChunyan Zhang remote-endpoint = 221f1da5ea6SChunyan Zhang <&funnel_soc_out_port>; 222f1da5ea6SChunyan Zhang }; 223f1da5ea6SChunyan Zhang }; 224f1da5ea6SChunyan Zhang }; 225f1da5ea6SChunyan Zhang }; 226f1da5ea6SChunyan Zhang 227f1da5ea6SChunyan Zhang funnel@12001000 { 228f1da5ea6SChunyan Zhang compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 229f1da5ea6SChunyan Zhang reg = <0 0x12001000 0 0x1000>; 230f1da5ea6SChunyan Zhang clocks = <&ext_26m>; 231f1da5ea6SChunyan Zhang clock-names = "apb_pclk"; 232f1da5ea6SChunyan Zhang 233f1da5ea6SChunyan Zhang out-ports { 234f1da5ea6SChunyan Zhang port { 235f1da5ea6SChunyan Zhang funnel_little_out_port: endpoint { 236f1da5ea6SChunyan Zhang remote-endpoint = 237f1da5ea6SChunyan Zhang <&etf_little_in>; 238f1da5ea6SChunyan Zhang }; 239f1da5ea6SChunyan Zhang }; 240f1da5ea6SChunyan Zhang }; 241f1da5ea6SChunyan Zhang 242f1da5ea6SChunyan Zhang in-ports { 243f1da5ea6SChunyan Zhang #address-cells = <1>; 244f1da5ea6SChunyan Zhang #size-cells = <0>; 245f1da5ea6SChunyan Zhang 246f1da5ea6SChunyan Zhang port@0 { 247f1da5ea6SChunyan Zhang reg = <0>; 248f1da5ea6SChunyan Zhang funnel_little_in_port0: endpoint { 249f1da5ea6SChunyan Zhang remote-endpoint = <&etm0_out>; 250f1da5ea6SChunyan Zhang }; 251f1da5ea6SChunyan Zhang }; 252f1da5ea6SChunyan Zhang 253f1da5ea6SChunyan Zhang port@1 { 254f1da5ea6SChunyan Zhang reg = <1>; 255f1da5ea6SChunyan Zhang funnel_little_in_port1: endpoint { 256f1da5ea6SChunyan Zhang remote-endpoint = <&etm1_out>; 257f1da5ea6SChunyan Zhang }; 258f1da5ea6SChunyan Zhang }; 259f1da5ea6SChunyan Zhang 260f1da5ea6SChunyan Zhang port@2 { 261f1da5ea6SChunyan Zhang reg = <2>; 262f1da5ea6SChunyan Zhang funnel_little_in_port2: endpoint { 263f1da5ea6SChunyan Zhang remote-endpoint = <&etm2_out>; 264f1da5ea6SChunyan Zhang }; 265f1da5ea6SChunyan Zhang }; 266f1da5ea6SChunyan Zhang 267f1da5ea6SChunyan Zhang port@3 { 268f1da5ea6SChunyan Zhang reg = <3>; 269f1da5ea6SChunyan Zhang funnel_little_in_port3: endpoint { 270f1da5ea6SChunyan Zhang remote-endpoint = <&etm3_out>; 271f1da5ea6SChunyan Zhang }; 272f1da5ea6SChunyan Zhang }; 273f1da5ea6SChunyan Zhang }; 274f1da5ea6SChunyan Zhang }; 275f1da5ea6SChunyan Zhang 276f1da5ea6SChunyan Zhang etf@12002000 { 277f1da5ea6SChunyan Zhang compatible = "arm,coresight-tmc", "arm,primecell"; 278f1da5ea6SChunyan Zhang reg = <0 0x12002000 0 0x1000>; 279f1da5ea6SChunyan Zhang clocks = <&ext_26m>; 280f1da5ea6SChunyan Zhang clock-names = "apb_pclk"; 281f1da5ea6SChunyan Zhang 282f1da5ea6SChunyan Zhang out-ports { 283f1da5ea6SChunyan Zhang port { 284f1da5ea6SChunyan Zhang etf_little_out: endpoint { 285f1da5ea6SChunyan Zhang remote-endpoint = 286f1da5ea6SChunyan Zhang <&funnel_ca55_in_port0>; 287f1da5ea6SChunyan Zhang }; 288f1da5ea6SChunyan Zhang }; 289f1da5ea6SChunyan Zhang }; 290f1da5ea6SChunyan Zhang 291f1da5ea6SChunyan Zhang in-port { 292f1da5ea6SChunyan Zhang port { 293f1da5ea6SChunyan Zhang etf_little_in: endpoint { 294f1da5ea6SChunyan Zhang remote-endpoint = 295f1da5ea6SChunyan Zhang <&funnel_little_out_port>; 296f1da5ea6SChunyan Zhang }; 297f1da5ea6SChunyan Zhang }; 298f1da5ea6SChunyan Zhang }; 299f1da5ea6SChunyan Zhang }; 300f1da5ea6SChunyan Zhang 301f1da5ea6SChunyan Zhang etf@12003000 { 302f1da5ea6SChunyan Zhang compatible = "arm,coresight-tmc", "arm,primecell"; 303f1da5ea6SChunyan Zhang reg = <0 0x12003000 0 0x1000>; 304f1da5ea6SChunyan Zhang clocks = <&ext_26m>; 305f1da5ea6SChunyan Zhang clock-names = "apb_pclk"; 306f1da5ea6SChunyan Zhang 307f1da5ea6SChunyan Zhang out-ports { 308f1da5ea6SChunyan Zhang port { 309f1da5ea6SChunyan Zhang etf_big_out: endpoint { 310f1da5ea6SChunyan Zhang remote-endpoint = 311f1da5ea6SChunyan Zhang <&funnel_ca55_in_port1>; 312f1da5ea6SChunyan Zhang }; 313f1da5ea6SChunyan Zhang }; 314f1da5ea6SChunyan Zhang }; 315f1da5ea6SChunyan Zhang 316f1da5ea6SChunyan Zhang in-ports { 317f1da5ea6SChunyan Zhang port { 318f1da5ea6SChunyan Zhang etf_big_in: endpoint { 319f1da5ea6SChunyan Zhang remote-endpoint = 320f1da5ea6SChunyan Zhang <&funnel_big_out_port>; 321f1da5ea6SChunyan Zhang }; 322f1da5ea6SChunyan Zhang }; 323f1da5ea6SChunyan Zhang }; 324f1da5ea6SChunyan Zhang }; 325f1da5ea6SChunyan Zhang 326f1da5ea6SChunyan Zhang funnel@12004000 { 327f1da5ea6SChunyan Zhang compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 328f1da5ea6SChunyan Zhang reg = <0 0x12004000 0 0x1000>; 329f1da5ea6SChunyan Zhang clocks = <&ext_26m>; 330f1da5ea6SChunyan Zhang clock-names = "apb_pclk"; 331f1da5ea6SChunyan Zhang 332f1da5ea6SChunyan Zhang out-ports { 333f1da5ea6SChunyan Zhang port { 334f1da5ea6SChunyan Zhang funnel_ca55_out_port: endpoint { 335f1da5ea6SChunyan Zhang remote-endpoint = 336f1da5ea6SChunyan Zhang <&funnel_soc_in_port>; 337f1da5ea6SChunyan Zhang }; 338f1da5ea6SChunyan Zhang }; 339f1da5ea6SChunyan Zhang }; 340f1da5ea6SChunyan Zhang 341f1da5ea6SChunyan Zhang in-ports { 342f1da5ea6SChunyan Zhang #address-cells = <1>; 343f1da5ea6SChunyan Zhang #size-cells = <0>; 344f1da5ea6SChunyan Zhang 345f1da5ea6SChunyan Zhang port@0 { 346f1da5ea6SChunyan Zhang reg = <0>; 347f1da5ea6SChunyan Zhang funnel_ca55_in_port0: endpoint { 348f1da5ea6SChunyan Zhang remote-endpoint = 349f1da5ea6SChunyan Zhang <&etf_little_out>; 350f1da5ea6SChunyan Zhang }; 351f1da5ea6SChunyan Zhang }; 352f1da5ea6SChunyan Zhang 353f1da5ea6SChunyan Zhang port@1 { 354f1da5ea6SChunyan Zhang reg = <1>; 355f1da5ea6SChunyan Zhang funnel_ca55_in_port1: endpoint { 356f1da5ea6SChunyan Zhang remote-endpoint = 357f1da5ea6SChunyan Zhang <&etf_big_out>; 358f1da5ea6SChunyan Zhang }; 359f1da5ea6SChunyan Zhang }; 360f1da5ea6SChunyan Zhang }; 361f1da5ea6SChunyan Zhang }; 362f1da5ea6SChunyan Zhang 363f1da5ea6SChunyan Zhang funnel@12005000 { 364f1da5ea6SChunyan Zhang compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 365f1da5ea6SChunyan Zhang reg = <0 0x12005000 0 0x1000>; 366f1da5ea6SChunyan Zhang clocks = <&ext_26m>; 367f1da5ea6SChunyan Zhang clock-names = "apb_pclk"; 368f1da5ea6SChunyan Zhang 369f1da5ea6SChunyan Zhang out-ports { 370f1da5ea6SChunyan Zhang port { 371f1da5ea6SChunyan Zhang funnel_big_out_port: endpoint { 372f1da5ea6SChunyan Zhang remote-endpoint = 373f1da5ea6SChunyan Zhang <&etf_big_in>; 374f1da5ea6SChunyan Zhang }; 375f1da5ea6SChunyan Zhang }; 376f1da5ea6SChunyan Zhang }; 377f1da5ea6SChunyan Zhang 378f1da5ea6SChunyan Zhang in-ports { 379f1da5ea6SChunyan Zhang #address-cells = <1>; 380f1da5ea6SChunyan Zhang #size-cells = <0>; 381f1da5ea6SChunyan Zhang 382f1da5ea6SChunyan Zhang port@0 { 383f1da5ea6SChunyan Zhang reg = <0>; 384f1da5ea6SChunyan Zhang funnel_big_in_port0: endpoint { 385f1da5ea6SChunyan Zhang remote-endpoint = <&etm4_out>; 386f1da5ea6SChunyan Zhang }; 387f1da5ea6SChunyan Zhang }; 388f1da5ea6SChunyan Zhang 389f1da5ea6SChunyan Zhang port@1 { 390f1da5ea6SChunyan Zhang reg = <1>; 391f1da5ea6SChunyan Zhang funnel_big_in_port1: endpoint { 392f1da5ea6SChunyan Zhang remote-endpoint = <&etm5_out>; 393f1da5ea6SChunyan Zhang }; 394f1da5ea6SChunyan Zhang }; 395f1da5ea6SChunyan Zhang 396f1da5ea6SChunyan Zhang port@2 { 397f1da5ea6SChunyan Zhang reg = <2>; 398f1da5ea6SChunyan Zhang funnel_big_in_port2: endpoint { 399f1da5ea6SChunyan Zhang remote-endpoint = <&etm6_out>; 400f1da5ea6SChunyan Zhang }; 401f1da5ea6SChunyan Zhang }; 402f1da5ea6SChunyan Zhang 403f1da5ea6SChunyan Zhang port@3 { 404f1da5ea6SChunyan Zhang reg = <3>; 405f1da5ea6SChunyan Zhang funnel_big_in_port3: endpoint { 406f1da5ea6SChunyan Zhang remote-endpoint = <&etm7_out>; 407f1da5ea6SChunyan Zhang }; 408f1da5ea6SChunyan Zhang }; 409f1da5ea6SChunyan Zhang }; 410f1da5ea6SChunyan Zhang }; 411f1da5ea6SChunyan Zhang 412f1da5ea6SChunyan Zhang etm@13040000 { 413f1da5ea6SChunyan Zhang compatible = "arm,coresight-etm4x", "arm,primecell"; 414f1da5ea6SChunyan Zhang reg = <0 0x13040000 0 0x1000>; 415f1da5ea6SChunyan Zhang cpu = <&CPU0>; 416f1da5ea6SChunyan Zhang clocks = <&ext_26m>; 417f1da5ea6SChunyan Zhang clock-names = "apb_pclk"; 418f1da5ea6SChunyan Zhang 419f1da5ea6SChunyan Zhang out-ports { 420f1da5ea6SChunyan Zhang port { 421f1da5ea6SChunyan Zhang etm0_out: endpoint { 422f1da5ea6SChunyan Zhang remote-endpoint = 423f1da5ea6SChunyan Zhang <&funnel_little_in_port0>; 424f1da5ea6SChunyan Zhang }; 425f1da5ea6SChunyan Zhang }; 426f1da5ea6SChunyan Zhang }; 427f1da5ea6SChunyan Zhang }; 428f1da5ea6SChunyan Zhang 429f1da5ea6SChunyan Zhang etm@13140000 { 430f1da5ea6SChunyan Zhang compatible = "arm,coresight-etm4x", "arm,primecell"; 431f1da5ea6SChunyan Zhang reg = <0 0x13140000 0 0x1000>; 432f1da5ea6SChunyan Zhang cpu = <&CPU1>; 433f1da5ea6SChunyan Zhang clocks = <&ext_26m>; 434f1da5ea6SChunyan Zhang clock-names = "apb_pclk"; 435f1da5ea6SChunyan Zhang 436f1da5ea6SChunyan Zhang out-ports { 437f1da5ea6SChunyan Zhang port { 438f1da5ea6SChunyan Zhang etm1_out: endpoint { 439f1da5ea6SChunyan Zhang remote-endpoint = 440f1da5ea6SChunyan Zhang <&funnel_little_in_port1>; 441f1da5ea6SChunyan Zhang }; 442f1da5ea6SChunyan Zhang }; 443f1da5ea6SChunyan Zhang }; 444f1da5ea6SChunyan Zhang }; 445f1da5ea6SChunyan Zhang 446f1da5ea6SChunyan Zhang etm@13240000 { 447f1da5ea6SChunyan Zhang compatible = "arm,coresight-etm4x", "arm,primecell"; 448f1da5ea6SChunyan Zhang reg = <0 0x13240000 0 0x1000>; 449f1da5ea6SChunyan Zhang cpu = <&CPU2>; 450f1da5ea6SChunyan Zhang clocks = <&ext_26m>; 451f1da5ea6SChunyan Zhang clock-names = "apb_pclk"; 452f1da5ea6SChunyan Zhang 453f1da5ea6SChunyan Zhang out-ports { 454f1da5ea6SChunyan Zhang port { 455f1da5ea6SChunyan Zhang etm2_out: endpoint { 456f1da5ea6SChunyan Zhang remote-endpoint = 457f1da5ea6SChunyan Zhang <&funnel_little_in_port2>; 458f1da5ea6SChunyan Zhang }; 459f1da5ea6SChunyan Zhang }; 460f1da5ea6SChunyan Zhang }; 461f1da5ea6SChunyan Zhang }; 462f1da5ea6SChunyan Zhang 463f1da5ea6SChunyan Zhang etm@13340000 { 464f1da5ea6SChunyan Zhang compatible = "arm,coresight-etm4x", "arm,primecell"; 465f1da5ea6SChunyan Zhang reg = <0 0x13340000 0 0x1000>; 466f1da5ea6SChunyan Zhang cpu = <&CPU3>; 467f1da5ea6SChunyan Zhang clocks = <&ext_26m>; 468f1da5ea6SChunyan Zhang clock-names = "apb_pclk"; 469f1da5ea6SChunyan Zhang 470f1da5ea6SChunyan Zhang out-ports { 471f1da5ea6SChunyan Zhang port { 472f1da5ea6SChunyan Zhang etm3_out: endpoint { 473f1da5ea6SChunyan Zhang remote-endpoint = 474f1da5ea6SChunyan Zhang <&funnel_little_in_port3>; 475f1da5ea6SChunyan Zhang }; 476f1da5ea6SChunyan Zhang }; 477f1da5ea6SChunyan Zhang }; 478f1da5ea6SChunyan Zhang }; 479f1da5ea6SChunyan Zhang 480f1da5ea6SChunyan Zhang etm@13440000 { 481f1da5ea6SChunyan Zhang compatible = "arm,coresight-etm4x", "arm,primecell"; 482f1da5ea6SChunyan Zhang reg = <0 0x13440000 0 0x1000>; 483f1da5ea6SChunyan Zhang cpu = <&CPU4>; 484f1da5ea6SChunyan Zhang clocks = <&ext_26m>; 485f1da5ea6SChunyan Zhang clock-names = "apb_pclk"; 486f1da5ea6SChunyan Zhang 487f1da5ea6SChunyan Zhang out-ports { 488f1da5ea6SChunyan Zhang port { 489f1da5ea6SChunyan Zhang etm4_out: endpoint { 490f1da5ea6SChunyan Zhang remote-endpoint = 491f1da5ea6SChunyan Zhang <&funnel_big_in_port0>; 492f1da5ea6SChunyan Zhang }; 493f1da5ea6SChunyan Zhang }; 494f1da5ea6SChunyan Zhang }; 495f1da5ea6SChunyan Zhang }; 496f1da5ea6SChunyan Zhang 497f1da5ea6SChunyan Zhang etm@13540000 { 498f1da5ea6SChunyan Zhang compatible = "arm,coresight-etm4x", "arm,primecell"; 499f1da5ea6SChunyan Zhang reg = <0 0x13540000 0 0x1000>; 500f1da5ea6SChunyan Zhang cpu = <&CPU5>; 501f1da5ea6SChunyan Zhang clocks = <&ext_26m>; 502f1da5ea6SChunyan Zhang clock-names = "apb_pclk"; 503f1da5ea6SChunyan Zhang 504f1da5ea6SChunyan Zhang out-ports { 505f1da5ea6SChunyan Zhang port { 506f1da5ea6SChunyan Zhang etm5_out: endpoint { 507f1da5ea6SChunyan Zhang remote-endpoint = 508f1da5ea6SChunyan Zhang <&funnel_big_in_port1>; 509f1da5ea6SChunyan Zhang }; 510f1da5ea6SChunyan Zhang }; 511f1da5ea6SChunyan Zhang }; 512f1da5ea6SChunyan Zhang }; 513f1da5ea6SChunyan Zhang 514f1da5ea6SChunyan Zhang etm@13640000 { 515f1da5ea6SChunyan Zhang compatible = "arm,coresight-etm4x", "arm,primecell"; 516f1da5ea6SChunyan Zhang reg = <0 0x13640000 0 0x1000>; 517f1da5ea6SChunyan Zhang cpu = <&CPU6>; 518f1da5ea6SChunyan Zhang clocks = <&ext_26m>; 519f1da5ea6SChunyan Zhang clock-names = "apb_pclk"; 520f1da5ea6SChunyan Zhang 521f1da5ea6SChunyan Zhang out-ports { 522f1da5ea6SChunyan Zhang port { 523f1da5ea6SChunyan Zhang etm6_out: endpoint { 524f1da5ea6SChunyan Zhang remote-endpoint = 525f1da5ea6SChunyan Zhang <&funnel_big_in_port2>; 526f1da5ea6SChunyan Zhang }; 527f1da5ea6SChunyan Zhang }; 528f1da5ea6SChunyan Zhang }; 529f1da5ea6SChunyan Zhang }; 530f1da5ea6SChunyan Zhang 531f1da5ea6SChunyan Zhang etm@13740000 { 532f1da5ea6SChunyan Zhang compatible = "arm,coresight-etm4x", "arm,primecell"; 533f1da5ea6SChunyan Zhang reg = <0 0x13740000 0 0x1000>; 534f1da5ea6SChunyan Zhang cpu = <&CPU7>; 535f1da5ea6SChunyan Zhang clocks = <&ext_26m>; 536f1da5ea6SChunyan Zhang clock-names = "apb_pclk"; 537f1da5ea6SChunyan Zhang 538f1da5ea6SChunyan Zhang out-ports { 539f1da5ea6SChunyan Zhang port { 540f1da5ea6SChunyan Zhang etm7_out: endpoint { 541f1da5ea6SChunyan Zhang remote-endpoint = 542f1da5ea6SChunyan Zhang <&funnel_big_in_port3>; 543f1da5ea6SChunyan Zhang }; 544f1da5ea6SChunyan Zhang }; 545f1da5ea6SChunyan Zhang }; 546f1da5ea6SChunyan Zhang }; 547161af8fdSChunyan Zhang 548161af8fdSChunyan Zhang ap-ahb { 549161af8fdSChunyan Zhang compatible = "simple-bus"; 550161af8fdSChunyan Zhang #address-cells = <2>; 551161af8fdSChunyan Zhang #size-cells = <2>; 552161af8fdSChunyan Zhang ranges; 553161af8fdSChunyan Zhang 5540dcc2039SStanislav Jakubek sdio0: mmc@20300000 { 555161af8fdSChunyan Zhang compatible = "sprd,sdhci-r11"; 556161af8fdSChunyan Zhang reg = <0 0x20300000 0 0x1000>; 557161af8fdSChunyan Zhang interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>; 558161af8fdSChunyan Zhang 559161af8fdSChunyan Zhang clocks = <&aon_clk CLK_SDIO0_2X>, 560161af8fdSChunyan Zhang <&apahb_gate CLK_SDIO0_EB>; 561*e2e0d455SStanislav Jakubek clock-names = "sdio", "enable"; 562161af8fdSChunyan Zhang assigned-clocks = <&aon_clk CLK_SDIO0_2X>; 563161af8fdSChunyan Zhang assigned-clock-parents = <&rpll CLK_RPLL_390M>; 564161af8fdSChunyan Zhang 565161af8fdSChunyan Zhang bus-width = <4>; 566161af8fdSChunyan Zhang no-sdio; 567161af8fdSChunyan Zhang no-mmc; 568161af8fdSChunyan Zhang }; 569161af8fdSChunyan Zhang 5700dcc2039SStanislav Jakubek sdio3: mmc@20600000 { 571161af8fdSChunyan Zhang compatible = "sprd,sdhci-r11"; 572161af8fdSChunyan Zhang reg = <0 0x20600000 0 0x1000>; 573161af8fdSChunyan Zhang interrupts = <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>; 574161af8fdSChunyan Zhang 575161af8fdSChunyan Zhang clocks = <&aon_clk CLK_EMMC_2X>, 576161af8fdSChunyan Zhang <&apahb_gate CLK_EMMC_EB>; 577*e2e0d455SStanislav Jakubek clock-names = "sdio", "enable"; 578161af8fdSChunyan Zhang assigned-clocks = <&aon_clk CLK_EMMC_2X>; 579161af8fdSChunyan Zhang assigned-clock-parents = <&rpll CLK_RPLL_390M>; 580161af8fdSChunyan Zhang 581161af8fdSChunyan Zhang bus-width = <8>; 582161af8fdSChunyan Zhang non-removable; 583161af8fdSChunyan Zhang no-sdio; 584161af8fdSChunyan Zhang no-sd; 585161af8fdSChunyan Zhang cap-mmc-hw-reset; 586161af8fdSChunyan Zhang }; 587161af8fdSChunyan Zhang }; 588f1da5ea6SChunyan Zhang }; 589f1da5ea6SChunyan Zhang}; 590