1f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0+ 2f126890aSEmmanuel Vadot/* 3f126890aSEmmanuel Vadot * Copyright (C) 2012 Altera <www.altera.com> 4f126890aSEmmanuel Vadot */ 5f126890aSEmmanuel Vadot 6f126890aSEmmanuel Vadot#include <dt-bindings/reset/altr,rst-mgr.h> 7f126890aSEmmanuel Vadot 8f126890aSEmmanuel Vadot/ { 9f126890aSEmmanuel Vadot #address-cells = <1>; 10f126890aSEmmanuel Vadot #size-cells = <1>; 11f126890aSEmmanuel Vadot 12f126890aSEmmanuel Vadot aliases { 13f126890aSEmmanuel Vadot serial0 = &uart0; 14f126890aSEmmanuel Vadot serial1 = &uart1; 15f126890aSEmmanuel Vadot timer0 = &timer0; 16f126890aSEmmanuel Vadot timer1 = &timer1; 17f126890aSEmmanuel Vadot timer2 = &timer2; 18f126890aSEmmanuel Vadot timer3 = &timer3; 19f126890aSEmmanuel Vadot }; 20f126890aSEmmanuel Vadot 21f126890aSEmmanuel Vadot cpus { 22f126890aSEmmanuel Vadot #address-cells = <1>; 23f126890aSEmmanuel Vadot #size-cells = <0>; 24f126890aSEmmanuel Vadot enable-method = "altr,socfpga-smp"; 25f126890aSEmmanuel Vadot 26f126890aSEmmanuel Vadot cpu0: cpu@0 { 27f126890aSEmmanuel Vadot compatible = "arm,cortex-a9"; 28f126890aSEmmanuel Vadot device_type = "cpu"; 29f126890aSEmmanuel Vadot reg = <0>; 30f126890aSEmmanuel Vadot next-level-cache = <&L2>; 31f126890aSEmmanuel Vadot }; 32f126890aSEmmanuel Vadot cpu1: cpu@1 { 33f126890aSEmmanuel Vadot compatible = "arm,cortex-a9"; 34f126890aSEmmanuel Vadot device_type = "cpu"; 35f126890aSEmmanuel Vadot reg = <1>; 36f126890aSEmmanuel Vadot next-level-cache = <&L2>; 37f126890aSEmmanuel Vadot }; 38f126890aSEmmanuel Vadot }; 39f126890aSEmmanuel Vadot 40f126890aSEmmanuel Vadot pmu: pmu@ff111000 { 41f126890aSEmmanuel Vadot compatible = "arm,cortex-a9-pmu"; 42f126890aSEmmanuel Vadot interrupt-parent = <&intc>; 43f126890aSEmmanuel Vadot interrupts = <0 176 4>, <0 177 4>; 44f126890aSEmmanuel Vadot interrupt-affinity = <&cpu0>, <&cpu1>; 45f126890aSEmmanuel Vadot reg = <0xff111000 0x1000>, 46f126890aSEmmanuel Vadot <0xff113000 0x1000>; 47f126890aSEmmanuel Vadot }; 48f126890aSEmmanuel Vadot 49f126890aSEmmanuel Vadot intc: interrupt-controller@fffed000 { 50f126890aSEmmanuel Vadot compatible = "arm,cortex-a9-gic"; 51f126890aSEmmanuel Vadot #interrupt-cells = <3>; 52f126890aSEmmanuel Vadot interrupt-controller; 53f126890aSEmmanuel Vadot reg = <0xfffed000 0x1000>, 54f126890aSEmmanuel Vadot <0xfffec100 0x100>; 55f126890aSEmmanuel Vadot }; 56f126890aSEmmanuel Vadot 57f126890aSEmmanuel Vadot soc { 58f126890aSEmmanuel Vadot #address-cells = <1>; 59f126890aSEmmanuel Vadot #size-cells = <1>; 60f126890aSEmmanuel Vadot compatible = "simple-bus"; 61f126890aSEmmanuel Vadot device_type = "soc"; 62f126890aSEmmanuel Vadot interrupt-parent = <&intc>; 63f126890aSEmmanuel Vadot ranges; 64f126890aSEmmanuel Vadot 65f126890aSEmmanuel Vadot amba { 66f126890aSEmmanuel Vadot compatible = "simple-bus"; 67f126890aSEmmanuel Vadot #address-cells = <1>; 68f126890aSEmmanuel Vadot #size-cells = <1>; 69f126890aSEmmanuel Vadot ranges; 70f126890aSEmmanuel Vadot 71f126890aSEmmanuel Vadot pdma: pdma@ffe01000 { 72f126890aSEmmanuel Vadot compatible = "arm,pl330", "arm,primecell"; 73f126890aSEmmanuel Vadot reg = <0xffe01000 0x1000>; 74f126890aSEmmanuel Vadot interrupts = <0 104 4>, 75f126890aSEmmanuel Vadot <0 105 4>, 76f126890aSEmmanuel Vadot <0 106 4>, 77f126890aSEmmanuel Vadot <0 107 4>, 78f126890aSEmmanuel Vadot <0 108 4>, 79f126890aSEmmanuel Vadot <0 109 4>, 80f126890aSEmmanuel Vadot <0 110 4>, 81f126890aSEmmanuel Vadot <0 111 4>; 82f126890aSEmmanuel Vadot #dma-cells = <1>; 83f126890aSEmmanuel Vadot clocks = <&l4_main_clk>; 84f126890aSEmmanuel Vadot clock-names = "apb_pclk"; 85f126890aSEmmanuel Vadot resets = <&rst DMA_RESET>; 86f126890aSEmmanuel Vadot reset-names = "dma"; 87f126890aSEmmanuel Vadot }; 88f126890aSEmmanuel Vadot }; 89f126890aSEmmanuel Vadot 90f126890aSEmmanuel Vadot base_fpga_region { 91f126890aSEmmanuel Vadot compatible = "fpga-region"; 92f126890aSEmmanuel Vadot fpga-mgr = <&fpgamgr0>; 93f126890aSEmmanuel Vadot 94f126890aSEmmanuel Vadot #address-cells = <0x1>; 95f126890aSEmmanuel Vadot #size-cells = <0x1>; 96f126890aSEmmanuel Vadot }; 97f126890aSEmmanuel Vadot 98f126890aSEmmanuel Vadot can0: can@ffc00000 { 99f126890aSEmmanuel Vadot compatible = "bosch,d_can"; 100f126890aSEmmanuel Vadot reg = <0xffc00000 0x1000>; 101f126890aSEmmanuel Vadot interrupts = <0 131 4>, <0 132 4>, <0 133 4>, <0 134 4>; 102f126890aSEmmanuel Vadot clocks = <&can0_clk>; 103f126890aSEmmanuel Vadot resets = <&rst CAN0_RESET>; 104f126890aSEmmanuel Vadot status = "disabled"; 105f126890aSEmmanuel Vadot }; 106f126890aSEmmanuel Vadot 107f126890aSEmmanuel Vadot can1: can@ffc01000 { 108f126890aSEmmanuel Vadot compatible = "bosch,d_can"; 109f126890aSEmmanuel Vadot reg = <0xffc01000 0x1000>; 110f126890aSEmmanuel Vadot interrupts = <0 135 4>, <0 136 4>, <0 137 4>, <0 138 4>; 111f126890aSEmmanuel Vadot clocks = <&can1_clk>; 112f126890aSEmmanuel Vadot resets = <&rst CAN1_RESET>; 113f126890aSEmmanuel Vadot status = "disabled"; 114f126890aSEmmanuel Vadot }; 115f126890aSEmmanuel Vadot 116f126890aSEmmanuel Vadot clkmgr@ffd04000 { 117f126890aSEmmanuel Vadot compatible = "altr,clk-mgr"; 118f126890aSEmmanuel Vadot reg = <0xffd04000 0x1000>; 119f126890aSEmmanuel Vadot 120f126890aSEmmanuel Vadot clocks { 121f126890aSEmmanuel Vadot #address-cells = <1>; 122f126890aSEmmanuel Vadot #size-cells = <0>; 123f126890aSEmmanuel Vadot 124f126890aSEmmanuel Vadot osc1: osc1 { 125f126890aSEmmanuel Vadot #clock-cells = <0>; 126f126890aSEmmanuel Vadot compatible = "fixed-clock"; 127f126890aSEmmanuel Vadot }; 128f126890aSEmmanuel Vadot 129f126890aSEmmanuel Vadot osc2: osc2 { 130f126890aSEmmanuel Vadot #clock-cells = <0>; 131f126890aSEmmanuel Vadot compatible = "fixed-clock"; 132f126890aSEmmanuel Vadot }; 133f126890aSEmmanuel Vadot 134f126890aSEmmanuel Vadot f2s_periph_ref_clk: f2s_periph_ref_clk { 135f126890aSEmmanuel Vadot #clock-cells = <0>; 136f126890aSEmmanuel Vadot compatible = "fixed-clock"; 137f126890aSEmmanuel Vadot }; 138f126890aSEmmanuel Vadot 139f126890aSEmmanuel Vadot f2s_sdram_ref_clk: f2s_sdram_ref_clk { 140f126890aSEmmanuel Vadot #clock-cells = <0>; 141f126890aSEmmanuel Vadot compatible = "fixed-clock"; 142f126890aSEmmanuel Vadot }; 143f126890aSEmmanuel Vadot 144f126890aSEmmanuel Vadot main_pll: main_pll@40 { 145f126890aSEmmanuel Vadot #address-cells = <1>; 146f126890aSEmmanuel Vadot #size-cells = <0>; 147f126890aSEmmanuel Vadot #clock-cells = <0>; 148f126890aSEmmanuel Vadot compatible = "altr,socfpga-pll-clock"; 149f126890aSEmmanuel Vadot clocks = <&osc1>; 150f126890aSEmmanuel Vadot reg = <0x40>; 151f126890aSEmmanuel Vadot 152f126890aSEmmanuel Vadot mpuclk: mpuclk@48 { 153f126890aSEmmanuel Vadot #clock-cells = <0>; 154f126890aSEmmanuel Vadot compatible = "altr,socfpga-perip-clk"; 155f126890aSEmmanuel Vadot clocks = <&main_pll>; 156f126890aSEmmanuel Vadot div-reg = <0xe0 0 9>; 157f126890aSEmmanuel Vadot reg = <0x48>; 158f126890aSEmmanuel Vadot }; 159f126890aSEmmanuel Vadot 160f126890aSEmmanuel Vadot mainclk: mainclk@4c { 161f126890aSEmmanuel Vadot #clock-cells = <0>; 162f126890aSEmmanuel Vadot compatible = "altr,socfpga-perip-clk"; 163f126890aSEmmanuel Vadot clocks = <&main_pll>; 164f126890aSEmmanuel Vadot div-reg = <0xe4 0 9>; 165f126890aSEmmanuel Vadot reg = <0x4C>; 166f126890aSEmmanuel Vadot }; 167f126890aSEmmanuel Vadot 168f126890aSEmmanuel Vadot dbg_base_clk: dbg_base_clk@50 { 169f126890aSEmmanuel Vadot #clock-cells = <0>; 170f126890aSEmmanuel Vadot compatible = "altr,socfpga-perip-clk"; 171f126890aSEmmanuel Vadot clocks = <&main_pll>, <&osc1>; 172f126890aSEmmanuel Vadot div-reg = <0xe8 0 9>; 173f126890aSEmmanuel Vadot reg = <0x50>; 174f126890aSEmmanuel Vadot }; 175f126890aSEmmanuel Vadot 176f126890aSEmmanuel Vadot main_qspi_clk: main_qspi_clk@54 { 177f126890aSEmmanuel Vadot #clock-cells = <0>; 178f126890aSEmmanuel Vadot compatible = "altr,socfpga-perip-clk"; 179f126890aSEmmanuel Vadot clocks = <&main_pll>; 180f126890aSEmmanuel Vadot reg = <0x54>; 181f126890aSEmmanuel Vadot }; 182f126890aSEmmanuel Vadot 183f126890aSEmmanuel Vadot main_nand_sdmmc_clk: main_nand_sdmmc_clk@58 { 184f126890aSEmmanuel Vadot #clock-cells = <0>; 185f126890aSEmmanuel Vadot compatible = "altr,socfpga-perip-clk"; 186f126890aSEmmanuel Vadot clocks = <&main_pll>; 187f126890aSEmmanuel Vadot reg = <0x58>; 188f126890aSEmmanuel Vadot }; 189f126890aSEmmanuel Vadot 190f126890aSEmmanuel Vadot cfg_h2f_usr0_clk: cfg_h2f_usr0_clk@5c { 191f126890aSEmmanuel Vadot #clock-cells = <0>; 192f126890aSEmmanuel Vadot compatible = "altr,socfpga-perip-clk"; 193f126890aSEmmanuel Vadot clocks = <&main_pll>; 194f126890aSEmmanuel Vadot reg = <0x5C>; 195f126890aSEmmanuel Vadot }; 196f126890aSEmmanuel Vadot }; 197f126890aSEmmanuel Vadot 198f126890aSEmmanuel Vadot periph_pll: periph_pll@80 { 199f126890aSEmmanuel Vadot #address-cells = <1>; 200f126890aSEmmanuel Vadot #size-cells = <0>; 201f126890aSEmmanuel Vadot #clock-cells = <0>; 202f126890aSEmmanuel Vadot compatible = "altr,socfpga-pll-clock"; 203f126890aSEmmanuel Vadot clocks = <&osc1>, <&osc2>, <&f2s_periph_ref_clk>; 204f126890aSEmmanuel Vadot reg = <0x80>; 205f126890aSEmmanuel Vadot 206f126890aSEmmanuel Vadot emac0_clk: emac0_clk@88 { 207f126890aSEmmanuel Vadot #clock-cells = <0>; 208f126890aSEmmanuel Vadot compatible = "altr,socfpga-perip-clk"; 209f126890aSEmmanuel Vadot clocks = <&periph_pll>; 210f126890aSEmmanuel Vadot reg = <0x88>; 211f126890aSEmmanuel Vadot }; 212f126890aSEmmanuel Vadot 213f126890aSEmmanuel Vadot emac1_clk: emac1_clk@8c { 214f126890aSEmmanuel Vadot #clock-cells = <0>; 215f126890aSEmmanuel Vadot compatible = "altr,socfpga-perip-clk"; 216f126890aSEmmanuel Vadot clocks = <&periph_pll>; 217f126890aSEmmanuel Vadot reg = <0x8C>; 218f126890aSEmmanuel Vadot }; 219f126890aSEmmanuel Vadot 220f126890aSEmmanuel Vadot per_qspi_clk: per_qsi_clk@90 { 221f126890aSEmmanuel Vadot #clock-cells = <0>; 222f126890aSEmmanuel Vadot compatible = "altr,socfpga-perip-clk"; 223f126890aSEmmanuel Vadot clocks = <&periph_pll>; 224f126890aSEmmanuel Vadot reg = <0x90>; 225f126890aSEmmanuel Vadot }; 226f126890aSEmmanuel Vadot 227f126890aSEmmanuel Vadot per_nand_mmc_clk: per_nand_mmc_clk@94 { 228f126890aSEmmanuel Vadot #clock-cells = <0>; 229f126890aSEmmanuel Vadot compatible = "altr,socfpga-perip-clk"; 230f126890aSEmmanuel Vadot clocks = <&periph_pll>; 231f126890aSEmmanuel Vadot reg = <0x94>; 232f126890aSEmmanuel Vadot }; 233f126890aSEmmanuel Vadot 234f126890aSEmmanuel Vadot per_base_clk: per_base_clk@98 { 235f126890aSEmmanuel Vadot #clock-cells = <0>; 236f126890aSEmmanuel Vadot compatible = "altr,socfpga-perip-clk"; 237f126890aSEmmanuel Vadot clocks = <&periph_pll>; 238f126890aSEmmanuel Vadot reg = <0x98>; 239f126890aSEmmanuel Vadot }; 240f126890aSEmmanuel Vadot 241f126890aSEmmanuel Vadot h2f_usr1_clk: h2f_usr1_clk@9c { 242f126890aSEmmanuel Vadot #clock-cells = <0>; 243f126890aSEmmanuel Vadot compatible = "altr,socfpga-perip-clk"; 244f126890aSEmmanuel Vadot clocks = <&periph_pll>; 245f126890aSEmmanuel Vadot reg = <0x9C>; 246f126890aSEmmanuel Vadot }; 247f126890aSEmmanuel Vadot }; 248f126890aSEmmanuel Vadot 249f126890aSEmmanuel Vadot sdram_pll: sdram_pll@c0 { 250f126890aSEmmanuel Vadot #address-cells = <1>; 251f126890aSEmmanuel Vadot #size-cells = <0>; 252f126890aSEmmanuel Vadot #clock-cells = <0>; 253f126890aSEmmanuel Vadot compatible = "altr,socfpga-pll-clock"; 254f126890aSEmmanuel Vadot clocks = <&osc1>, <&osc2>, <&f2s_sdram_ref_clk>; 255f126890aSEmmanuel Vadot reg = <0xC0>; 256f126890aSEmmanuel Vadot 257f126890aSEmmanuel Vadot ddr_dqs_clk: ddr_dqs_clk@c8 { 258f126890aSEmmanuel Vadot #clock-cells = <0>; 259f126890aSEmmanuel Vadot compatible = "altr,socfpga-perip-clk"; 260f126890aSEmmanuel Vadot clocks = <&sdram_pll>; 261f126890aSEmmanuel Vadot reg = <0xC8>; 262f126890aSEmmanuel Vadot }; 263f126890aSEmmanuel Vadot 264f126890aSEmmanuel Vadot ddr_2x_dqs_clk: ddr_2x_dqs_clk@cc { 265f126890aSEmmanuel Vadot #clock-cells = <0>; 266f126890aSEmmanuel Vadot compatible = "altr,socfpga-perip-clk"; 267f126890aSEmmanuel Vadot clocks = <&sdram_pll>; 268f126890aSEmmanuel Vadot reg = <0xCC>; 269f126890aSEmmanuel Vadot }; 270f126890aSEmmanuel Vadot 271f126890aSEmmanuel Vadot ddr_dq_clk: ddr_dq_clk@d0 { 272f126890aSEmmanuel Vadot #clock-cells = <0>; 273f126890aSEmmanuel Vadot compatible = "altr,socfpga-perip-clk"; 274f126890aSEmmanuel Vadot clocks = <&sdram_pll>; 275f126890aSEmmanuel Vadot reg = <0xD0>; 276f126890aSEmmanuel Vadot }; 277f126890aSEmmanuel Vadot 278f126890aSEmmanuel Vadot h2f_usr2_clk: h2f_usr2_clk@d4 { 279f126890aSEmmanuel Vadot #clock-cells = <0>; 280f126890aSEmmanuel Vadot compatible = "altr,socfpga-perip-clk"; 281f126890aSEmmanuel Vadot clocks = <&sdram_pll>; 282f126890aSEmmanuel Vadot reg = <0xD4>; 283f126890aSEmmanuel Vadot }; 284f126890aSEmmanuel Vadot }; 285f126890aSEmmanuel Vadot 286f126890aSEmmanuel Vadot mpu_periph_clk: mpu_periph_clk { 287f126890aSEmmanuel Vadot #clock-cells = <0>; 288f126890aSEmmanuel Vadot compatible = "altr,socfpga-perip-clk"; 289f126890aSEmmanuel Vadot clocks = <&mpuclk>; 290f126890aSEmmanuel Vadot fixed-divider = <4>; 291f126890aSEmmanuel Vadot }; 292f126890aSEmmanuel Vadot 293f126890aSEmmanuel Vadot mpu_l2_ram_clk: mpu_l2_ram_clk { 294f126890aSEmmanuel Vadot #clock-cells = <0>; 295f126890aSEmmanuel Vadot compatible = "altr,socfpga-perip-clk"; 296f126890aSEmmanuel Vadot clocks = <&mpuclk>; 297f126890aSEmmanuel Vadot fixed-divider = <2>; 298f126890aSEmmanuel Vadot }; 299f126890aSEmmanuel Vadot 300f126890aSEmmanuel Vadot l4_main_clk: l4_main_clk { 301f126890aSEmmanuel Vadot #clock-cells = <0>; 302f126890aSEmmanuel Vadot compatible = "altr,socfpga-gate-clk"; 303f126890aSEmmanuel Vadot clocks = <&mainclk>; 304f126890aSEmmanuel Vadot clk-gate = <0x60 0>; 305f126890aSEmmanuel Vadot }; 306f126890aSEmmanuel Vadot 307f126890aSEmmanuel Vadot l3_main_clk: l3_main_clk { 308f126890aSEmmanuel Vadot #clock-cells = <0>; 309f126890aSEmmanuel Vadot compatible = "altr,socfpga-perip-clk"; 310f126890aSEmmanuel Vadot clocks = <&mainclk>; 311f126890aSEmmanuel Vadot fixed-divider = <1>; 312f126890aSEmmanuel Vadot }; 313f126890aSEmmanuel Vadot 314f126890aSEmmanuel Vadot l3_mp_clk: l3_mp_clk { 315f126890aSEmmanuel Vadot #clock-cells = <0>; 316f126890aSEmmanuel Vadot compatible = "altr,socfpga-gate-clk"; 317f126890aSEmmanuel Vadot clocks = <&mainclk>; 318f126890aSEmmanuel Vadot div-reg = <0x64 0 2>; 319f126890aSEmmanuel Vadot clk-gate = <0x60 1>; 320f126890aSEmmanuel Vadot }; 321f126890aSEmmanuel Vadot 322f126890aSEmmanuel Vadot l3_sp_clk: l3_sp_clk { 323f126890aSEmmanuel Vadot #clock-cells = <0>; 324f126890aSEmmanuel Vadot compatible = "altr,socfpga-gate-clk"; 325f126890aSEmmanuel Vadot clocks = <&l3_mp_clk>; 326f126890aSEmmanuel Vadot div-reg = <0x64 2 2>; 327f126890aSEmmanuel Vadot }; 328f126890aSEmmanuel Vadot 329f126890aSEmmanuel Vadot l4_mp_clk: l4_mp_clk { 330f126890aSEmmanuel Vadot #clock-cells = <0>; 331f126890aSEmmanuel Vadot compatible = "altr,socfpga-gate-clk"; 332f126890aSEmmanuel Vadot clocks = <&mainclk>, <&per_base_clk>; 333f126890aSEmmanuel Vadot div-reg = <0x64 4 3>; 334f126890aSEmmanuel Vadot clk-gate = <0x60 2>; 335f126890aSEmmanuel Vadot }; 336f126890aSEmmanuel Vadot 337f126890aSEmmanuel Vadot l4_sp_clk: l4_sp_clk { 338f126890aSEmmanuel Vadot #clock-cells = <0>; 339f126890aSEmmanuel Vadot compatible = "altr,socfpga-gate-clk"; 340f126890aSEmmanuel Vadot clocks = <&mainclk>, <&per_base_clk>; 341f126890aSEmmanuel Vadot div-reg = <0x64 7 3>; 342f126890aSEmmanuel Vadot clk-gate = <0x60 3>; 343f126890aSEmmanuel Vadot }; 344f126890aSEmmanuel Vadot 345f126890aSEmmanuel Vadot dbg_at_clk: dbg_at_clk { 346f126890aSEmmanuel Vadot #clock-cells = <0>; 347f126890aSEmmanuel Vadot compatible = "altr,socfpga-gate-clk"; 348f126890aSEmmanuel Vadot clocks = <&dbg_base_clk>; 349f126890aSEmmanuel Vadot div-reg = <0x68 0 2>; 350f126890aSEmmanuel Vadot clk-gate = <0x60 4>; 351f126890aSEmmanuel Vadot }; 352f126890aSEmmanuel Vadot 353f126890aSEmmanuel Vadot dbg_clk: dbg_clk { 354f126890aSEmmanuel Vadot #clock-cells = <0>; 355f126890aSEmmanuel Vadot compatible = "altr,socfpga-gate-clk"; 356f126890aSEmmanuel Vadot clocks = <&dbg_at_clk>; 357f126890aSEmmanuel Vadot div-reg = <0x68 2 2>; 358f126890aSEmmanuel Vadot clk-gate = <0x60 5>; 359f126890aSEmmanuel Vadot }; 360f126890aSEmmanuel Vadot 361f126890aSEmmanuel Vadot dbg_trace_clk: dbg_trace_clk { 362f126890aSEmmanuel Vadot #clock-cells = <0>; 363f126890aSEmmanuel Vadot compatible = "altr,socfpga-gate-clk"; 364f126890aSEmmanuel Vadot clocks = <&dbg_base_clk>; 365f126890aSEmmanuel Vadot div-reg = <0x6C 0 3>; 366f126890aSEmmanuel Vadot clk-gate = <0x60 6>; 367f126890aSEmmanuel Vadot }; 368f126890aSEmmanuel Vadot 369f126890aSEmmanuel Vadot dbg_timer_clk: dbg_timer_clk { 370f126890aSEmmanuel Vadot #clock-cells = <0>; 371f126890aSEmmanuel Vadot compatible = "altr,socfpga-gate-clk"; 372f126890aSEmmanuel Vadot clocks = <&dbg_base_clk>; 373f126890aSEmmanuel Vadot clk-gate = <0x60 7>; 374f126890aSEmmanuel Vadot }; 375f126890aSEmmanuel Vadot 376f126890aSEmmanuel Vadot cfg_clk: cfg_clk { 377f126890aSEmmanuel Vadot #clock-cells = <0>; 378f126890aSEmmanuel Vadot compatible = "altr,socfpga-gate-clk"; 379f126890aSEmmanuel Vadot clocks = <&cfg_h2f_usr0_clk>; 380f126890aSEmmanuel Vadot clk-gate = <0x60 8>; 381f126890aSEmmanuel Vadot }; 382f126890aSEmmanuel Vadot 383f126890aSEmmanuel Vadot h2f_user0_clk: h2f_user0_clk { 384f126890aSEmmanuel Vadot #clock-cells = <0>; 385f126890aSEmmanuel Vadot compatible = "altr,socfpga-gate-clk"; 386f126890aSEmmanuel Vadot clocks = <&cfg_h2f_usr0_clk>; 387f126890aSEmmanuel Vadot clk-gate = <0x60 9>; 388f126890aSEmmanuel Vadot }; 389f126890aSEmmanuel Vadot 390f126890aSEmmanuel Vadot emac_0_clk: emac_0_clk { 391f126890aSEmmanuel Vadot #clock-cells = <0>; 392f126890aSEmmanuel Vadot compatible = "altr,socfpga-gate-clk"; 393f126890aSEmmanuel Vadot clocks = <&emac0_clk>; 394f126890aSEmmanuel Vadot clk-gate = <0xa0 0>; 395f126890aSEmmanuel Vadot }; 396f126890aSEmmanuel Vadot 397f126890aSEmmanuel Vadot emac_1_clk: emac_1_clk { 398f126890aSEmmanuel Vadot #clock-cells = <0>; 399f126890aSEmmanuel Vadot compatible = "altr,socfpga-gate-clk"; 400f126890aSEmmanuel Vadot clocks = <&emac1_clk>; 401f126890aSEmmanuel Vadot clk-gate = <0xa0 1>; 402f126890aSEmmanuel Vadot }; 403f126890aSEmmanuel Vadot 404f126890aSEmmanuel Vadot usb_mp_clk: usb_mp_clk { 405f126890aSEmmanuel Vadot #clock-cells = <0>; 406f126890aSEmmanuel Vadot compatible = "altr,socfpga-gate-clk"; 407f126890aSEmmanuel Vadot clocks = <&per_base_clk>; 408f126890aSEmmanuel Vadot clk-gate = <0xa0 2>; 409f126890aSEmmanuel Vadot div-reg = <0xa4 0 3>; 410f126890aSEmmanuel Vadot }; 411f126890aSEmmanuel Vadot 412f126890aSEmmanuel Vadot spi_m_clk: spi_m_clk { 413f126890aSEmmanuel Vadot #clock-cells = <0>; 414f126890aSEmmanuel Vadot compatible = "altr,socfpga-gate-clk"; 415f126890aSEmmanuel Vadot clocks = <&per_base_clk>; 416f126890aSEmmanuel Vadot clk-gate = <0xa0 3>; 417f126890aSEmmanuel Vadot div-reg = <0xa4 3 3>; 418f126890aSEmmanuel Vadot }; 419f126890aSEmmanuel Vadot 420f126890aSEmmanuel Vadot can0_clk: can0_clk { 421f126890aSEmmanuel Vadot #clock-cells = <0>; 422f126890aSEmmanuel Vadot compatible = "altr,socfpga-gate-clk"; 423f126890aSEmmanuel Vadot clocks = <&per_base_clk>; 424f126890aSEmmanuel Vadot clk-gate = <0xa0 4>; 425f126890aSEmmanuel Vadot div-reg = <0xa4 6 3>; 426f126890aSEmmanuel Vadot }; 427f126890aSEmmanuel Vadot 428f126890aSEmmanuel Vadot can1_clk: can1_clk { 429f126890aSEmmanuel Vadot #clock-cells = <0>; 430f126890aSEmmanuel Vadot compatible = "altr,socfpga-gate-clk"; 431f126890aSEmmanuel Vadot clocks = <&per_base_clk>; 432f126890aSEmmanuel Vadot clk-gate = <0xa0 5>; 433f126890aSEmmanuel Vadot div-reg = <0xa4 9 3>; 434f126890aSEmmanuel Vadot }; 435f126890aSEmmanuel Vadot 436f126890aSEmmanuel Vadot gpio_db_clk: gpio_db_clk { 437f126890aSEmmanuel Vadot #clock-cells = <0>; 438f126890aSEmmanuel Vadot compatible = "altr,socfpga-gate-clk"; 439f126890aSEmmanuel Vadot clocks = <&per_base_clk>; 440f126890aSEmmanuel Vadot clk-gate = <0xa0 6>; 441f126890aSEmmanuel Vadot div-reg = <0xa8 0 24>; 442f126890aSEmmanuel Vadot }; 443f126890aSEmmanuel Vadot 444f126890aSEmmanuel Vadot h2f_user1_clk: h2f_user1_clk { 445f126890aSEmmanuel Vadot #clock-cells = <0>; 446f126890aSEmmanuel Vadot compatible = "altr,socfpga-gate-clk"; 447f126890aSEmmanuel Vadot clocks = <&h2f_usr1_clk>; 448f126890aSEmmanuel Vadot clk-gate = <0xa0 7>; 449f126890aSEmmanuel Vadot }; 450f126890aSEmmanuel Vadot 451f126890aSEmmanuel Vadot sdmmc_clk: sdmmc_clk { 452f126890aSEmmanuel Vadot #clock-cells = <0>; 453f126890aSEmmanuel Vadot compatible = "altr,socfpga-gate-clk"; 454f126890aSEmmanuel Vadot clocks = <&f2s_periph_ref_clk>, <&main_nand_sdmmc_clk>, <&per_nand_mmc_clk>; 455f126890aSEmmanuel Vadot clk-gate = <0xa0 8>; 456f126890aSEmmanuel Vadot }; 457f126890aSEmmanuel Vadot 458f126890aSEmmanuel Vadot sdmmc_clk_divided: sdmmc_clk_divided { 459f126890aSEmmanuel Vadot #clock-cells = <0>; 460f126890aSEmmanuel Vadot compatible = "altr,socfpga-gate-clk"; 461f126890aSEmmanuel Vadot clocks = <&sdmmc_clk>; 462f126890aSEmmanuel Vadot clk-gate = <0xa0 8>; 463f126890aSEmmanuel Vadot fixed-divider = <4>; 464f126890aSEmmanuel Vadot }; 465f126890aSEmmanuel Vadot 466f126890aSEmmanuel Vadot nand_x_clk: nand_x_clk { 467f126890aSEmmanuel Vadot #clock-cells = <0>; 468f126890aSEmmanuel Vadot compatible = "altr,socfpga-gate-clk"; 469f126890aSEmmanuel Vadot clocks = <&f2s_periph_ref_clk>, <&main_nand_sdmmc_clk>, <&per_nand_mmc_clk>; 470f126890aSEmmanuel Vadot clk-gate = <0xa0 9>; 471f126890aSEmmanuel Vadot }; 472f126890aSEmmanuel Vadot 473f126890aSEmmanuel Vadot nand_ecc_clk: nand_ecc_clk { 474f126890aSEmmanuel Vadot #clock-cells = <0>; 475f126890aSEmmanuel Vadot compatible = "altr,socfpga-gate-clk"; 476f126890aSEmmanuel Vadot clocks = <&nand_x_clk>; 477f126890aSEmmanuel Vadot clk-gate = <0xa0 9>; 478f126890aSEmmanuel Vadot }; 479f126890aSEmmanuel Vadot 480f126890aSEmmanuel Vadot nand_clk: nand_clk { 481f126890aSEmmanuel Vadot #clock-cells = <0>; 482f126890aSEmmanuel Vadot compatible = "altr,socfpga-gate-clk"; 483f126890aSEmmanuel Vadot clocks = <&nand_x_clk>; 484f126890aSEmmanuel Vadot clk-gate = <0xa0 10>; 485f126890aSEmmanuel Vadot fixed-divider = <4>; 486f126890aSEmmanuel Vadot }; 487f126890aSEmmanuel Vadot 488f126890aSEmmanuel Vadot qspi_clk: qspi_clk { 489f126890aSEmmanuel Vadot #clock-cells = <0>; 490f126890aSEmmanuel Vadot compatible = "altr,socfpga-gate-clk"; 491f126890aSEmmanuel Vadot clocks = <&f2s_periph_ref_clk>, <&main_qspi_clk>, <&per_qspi_clk>; 492f126890aSEmmanuel Vadot clk-gate = <0xa0 11>; 493f126890aSEmmanuel Vadot }; 494f126890aSEmmanuel Vadot 495f126890aSEmmanuel Vadot ddr_dqs_clk_gate: ddr_dqs_clk_gate { 496f126890aSEmmanuel Vadot #clock-cells = <0>; 497f126890aSEmmanuel Vadot compatible = "altr,socfpga-gate-clk"; 498f126890aSEmmanuel Vadot clocks = <&ddr_dqs_clk>; 499f126890aSEmmanuel Vadot clk-gate = <0xd8 0>; 500f126890aSEmmanuel Vadot }; 501f126890aSEmmanuel Vadot 502f126890aSEmmanuel Vadot ddr_2x_dqs_clk_gate: ddr_2x_dqs_clk_gate { 503f126890aSEmmanuel Vadot #clock-cells = <0>; 504f126890aSEmmanuel Vadot compatible = "altr,socfpga-gate-clk"; 505f126890aSEmmanuel Vadot clocks = <&ddr_2x_dqs_clk>; 506f126890aSEmmanuel Vadot clk-gate = <0xd8 1>; 507f126890aSEmmanuel Vadot }; 508f126890aSEmmanuel Vadot 509f126890aSEmmanuel Vadot ddr_dq_clk_gate: ddr_dq_clk_gate { 510f126890aSEmmanuel Vadot #clock-cells = <0>; 511f126890aSEmmanuel Vadot compatible = "altr,socfpga-gate-clk"; 512f126890aSEmmanuel Vadot clocks = <&ddr_dq_clk>; 513f126890aSEmmanuel Vadot clk-gate = <0xd8 2>; 514f126890aSEmmanuel Vadot }; 515f126890aSEmmanuel Vadot 516f126890aSEmmanuel Vadot h2f_user2_clk: h2f_user2_clk { 517f126890aSEmmanuel Vadot #clock-cells = <0>; 518f126890aSEmmanuel Vadot compatible = "altr,socfpga-gate-clk"; 519f126890aSEmmanuel Vadot clocks = <&h2f_usr2_clk>; 520f126890aSEmmanuel Vadot clk-gate = <0xd8 3>; 521f126890aSEmmanuel Vadot }; 522f126890aSEmmanuel Vadot 523f126890aSEmmanuel Vadot }; 524f126890aSEmmanuel Vadot }; 525f126890aSEmmanuel Vadot 526f126890aSEmmanuel Vadot fpga_bridge0: fpga_bridge@ff400000 { 527f126890aSEmmanuel Vadot compatible = "altr,socfpga-lwhps2fpga-bridge"; 528f126890aSEmmanuel Vadot reg = <0xff400000 0x100000>; 529f126890aSEmmanuel Vadot resets = <&rst LWHPS2FPGA_RESET>; 530f126890aSEmmanuel Vadot clocks = <&l4_main_clk>; 531f126890aSEmmanuel Vadot status = "disabled"; 532f126890aSEmmanuel Vadot }; 533f126890aSEmmanuel Vadot 534f126890aSEmmanuel Vadot fpga_bridge1: fpga_bridge@ff500000 { 535f126890aSEmmanuel Vadot compatible = "altr,socfpga-hps2fpga-bridge"; 536f126890aSEmmanuel Vadot reg = <0xff500000 0x10000>; 537f126890aSEmmanuel Vadot resets = <&rst HPS2FPGA_RESET>; 538f126890aSEmmanuel Vadot clocks = <&l4_main_clk>; 539f126890aSEmmanuel Vadot status = "disabled"; 540f126890aSEmmanuel Vadot }; 541f126890aSEmmanuel Vadot 542f126890aSEmmanuel Vadot fpga_bridge2: fpga-bridge@ff600000 { 543f126890aSEmmanuel Vadot compatible = "altr,socfpga-fpga2hps-bridge"; 544f126890aSEmmanuel Vadot reg = <0xff600000 0x100000>; 545f126890aSEmmanuel Vadot resets = <&rst FPGA2HPS_RESET>; 546f126890aSEmmanuel Vadot clocks = <&l4_main_clk>; 547f126890aSEmmanuel Vadot status = "disabled"; 548f126890aSEmmanuel Vadot }; 549f126890aSEmmanuel Vadot 550f126890aSEmmanuel Vadot fpga_bridge3: fpga-bridge@ffc25080 { 551f126890aSEmmanuel Vadot compatible = "altr,socfpga-fpga2sdram-bridge"; 552f126890aSEmmanuel Vadot reg = <0xffc25080 0x4>; 553f126890aSEmmanuel Vadot status = "disabled"; 554f126890aSEmmanuel Vadot }; 555f126890aSEmmanuel Vadot 556f126890aSEmmanuel Vadot fpgamgr0: fpgamgr@ff706000 { 557f126890aSEmmanuel Vadot compatible = "altr,socfpga-fpga-mgr"; 558f126890aSEmmanuel Vadot reg = <0xff706000 0x1000 559f126890aSEmmanuel Vadot 0xffb90000 0x4>; 560f126890aSEmmanuel Vadot interrupts = <0 175 4>; 561f126890aSEmmanuel Vadot }; 562f126890aSEmmanuel Vadot 563f126890aSEmmanuel Vadot socfpga_axi_setup: stmmac-axi-config { 564f126890aSEmmanuel Vadot snps,wr_osr_lmt = <0xf>; 565f126890aSEmmanuel Vadot snps,rd_osr_lmt = <0xf>; 566f126890aSEmmanuel Vadot snps,blen = <0 0 0 0 16 0 0>; 567f126890aSEmmanuel Vadot }; 568f126890aSEmmanuel Vadot 569f126890aSEmmanuel Vadot gmac0: ethernet@ff700000 { 570f126890aSEmmanuel Vadot compatible = "altr,socfpga-stmmac", "snps,dwmac-3.70a", "snps,dwmac"; 571f126890aSEmmanuel Vadot altr,sysmgr-syscon = <&sysmgr 0x60 0>; 572f126890aSEmmanuel Vadot reg = <0xff700000 0x2000>; 573f126890aSEmmanuel Vadot interrupts = <0 115 4>; 574f126890aSEmmanuel Vadot interrupt-names = "macirq"; 575f126890aSEmmanuel Vadot mac-address = [00 00 00 00 00 00];/* Filled in by U-Boot */ 576f126890aSEmmanuel Vadot clocks = <&emac_0_clk>; 577f126890aSEmmanuel Vadot clock-names = "stmmaceth"; 578f126890aSEmmanuel Vadot resets = <&rst EMAC0_RESET>; 579f126890aSEmmanuel Vadot reset-names = "stmmaceth"; 580f126890aSEmmanuel Vadot snps,multicast-filter-bins = <256>; 581f126890aSEmmanuel Vadot snps,perfect-filter-entries = <128>; 582f126890aSEmmanuel Vadot tx-fifo-depth = <4096>; 583f126890aSEmmanuel Vadot rx-fifo-depth = <4096>; 584f126890aSEmmanuel Vadot snps,axi-config = <&socfpga_axi_setup>; 585f126890aSEmmanuel Vadot status = "disabled"; 586f126890aSEmmanuel Vadot }; 587f126890aSEmmanuel Vadot 588f126890aSEmmanuel Vadot gmac1: ethernet@ff702000 { 589f126890aSEmmanuel Vadot compatible = "altr,socfpga-stmmac", "snps,dwmac-3.70a", "snps,dwmac"; 590f126890aSEmmanuel Vadot altr,sysmgr-syscon = <&sysmgr 0x60 2>; 591f126890aSEmmanuel Vadot reg = <0xff702000 0x2000>; 592f126890aSEmmanuel Vadot interrupts = <0 120 4>; 593f126890aSEmmanuel Vadot interrupt-names = "macirq"; 594f126890aSEmmanuel Vadot mac-address = [00 00 00 00 00 00];/* Filled in by U-Boot */ 595f126890aSEmmanuel Vadot clocks = <&emac_1_clk>; 596f126890aSEmmanuel Vadot clock-names = "stmmaceth"; 597f126890aSEmmanuel Vadot resets = <&rst EMAC1_RESET>; 598f126890aSEmmanuel Vadot reset-names = "stmmaceth"; 599f126890aSEmmanuel Vadot snps,multicast-filter-bins = <256>; 600f126890aSEmmanuel Vadot snps,perfect-filter-entries = <128>; 601f126890aSEmmanuel Vadot tx-fifo-depth = <4096>; 602f126890aSEmmanuel Vadot rx-fifo-depth = <4096>; 603f126890aSEmmanuel Vadot snps,axi-config = <&socfpga_axi_setup>; 604f126890aSEmmanuel Vadot status = "disabled"; 605f126890aSEmmanuel Vadot }; 606f126890aSEmmanuel Vadot 607f126890aSEmmanuel Vadot gpio0: gpio@ff708000 { 608f126890aSEmmanuel Vadot #address-cells = <1>; 609f126890aSEmmanuel Vadot #size-cells = <0>; 610f126890aSEmmanuel Vadot compatible = "snps,dw-apb-gpio"; 611f126890aSEmmanuel Vadot reg = <0xff708000 0x1000>; 612f126890aSEmmanuel Vadot clocks = <&l4_mp_clk>; 613f126890aSEmmanuel Vadot resets = <&rst GPIO0_RESET>; 614f126890aSEmmanuel Vadot status = "disabled"; 615f126890aSEmmanuel Vadot 616f126890aSEmmanuel Vadot porta: gpio-controller@0 { 617f126890aSEmmanuel Vadot compatible = "snps,dw-apb-gpio-port"; 618f126890aSEmmanuel Vadot gpio-controller; 619f126890aSEmmanuel Vadot #gpio-cells = <2>; 620f126890aSEmmanuel Vadot snps,nr-gpios = <29>; 621f126890aSEmmanuel Vadot reg = <0>; 622f126890aSEmmanuel Vadot interrupt-controller; 623f126890aSEmmanuel Vadot #interrupt-cells = <2>; 624f126890aSEmmanuel Vadot interrupts = <0 164 4>; 625f126890aSEmmanuel Vadot }; 626f126890aSEmmanuel Vadot }; 627f126890aSEmmanuel Vadot 628f126890aSEmmanuel Vadot gpio1: gpio@ff709000 { 629f126890aSEmmanuel Vadot #address-cells = <1>; 630f126890aSEmmanuel Vadot #size-cells = <0>; 631f126890aSEmmanuel Vadot compatible = "snps,dw-apb-gpio"; 632f126890aSEmmanuel Vadot reg = <0xff709000 0x1000>; 633f126890aSEmmanuel Vadot clocks = <&l4_mp_clk>; 634f126890aSEmmanuel Vadot resets = <&rst GPIO1_RESET>; 635f126890aSEmmanuel Vadot status = "disabled"; 636f126890aSEmmanuel Vadot 637f126890aSEmmanuel Vadot portb: gpio-controller@0 { 638f126890aSEmmanuel Vadot compatible = "snps,dw-apb-gpio-port"; 639f126890aSEmmanuel Vadot gpio-controller; 640f126890aSEmmanuel Vadot #gpio-cells = <2>; 641f126890aSEmmanuel Vadot snps,nr-gpios = <29>; 642f126890aSEmmanuel Vadot reg = <0>; 643f126890aSEmmanuel Vadot interrupt-controller; 644f126890aSEmmanuel Vadot #interrupt-cells = <2>; 645f126890aSEmmanuel Vadot interrupts = <0 165 4>; 646f126890aSEmmanuel Vadot }; 647f126890aSEmmanuel Vadot }; 648f126890aSEmmanuel Vadot 649f126890aSEmmanuel Vadot gpio2: gpio@ff70a000 { 650f126890aSEmmanuel Vadot #address-cells = <1>; 651f126890aSEmmanuel Vadot #size-cells = <0>; 652f126890aSEmmanuel Vadot compatible = "snps,dw-apb-gpio"; 653f126890aSEmmanuel Vadot reg = <0xff70a000 0x1000>; 654f126890aSEmmanuel Vadot clocks = <&l4_mp_clk>; 655f126890aSEmmanuel Vadot resets = <&rst GPIO2_RESET>; 656f126890aSEmmanuel Vadot status = "disabled"; 657f126890aSEmmanuel Vadot 658f126890aSEmmanuel Vadot portc: gpio-controller@0 { 659f126890aSEmmanuel Vadot compatible = "snps,dw-apb-gpio-port"; 660f126890aSEmmanuel Vadot gpio-controller; 661f126890aSEmmanuel Vadot #gpio-cells = <2>; 662f126890aSEmmanuel Vadot snps,nr-gpios = <27>; 663f126890aSEmmanuel Vadot reg = <0>; 664f126890aSEmmanuel Vadot interrupt-controller; 665f126890aSEmmanuel Vadot #interrupt-cells = <2>; 666f126890aSEmmanuel Vadot interrupts = <0 166 4>; 667f126890aSEmmanuel Vadot }; 668f126890aSEmmanuel Vadot }; 669f126890aSEmmanuel Vadot 670f126890aSEmmanuel Vadot i2c0: i2c@ffc04000 { 671f126890aSEmmanuel Vadot #address-cells = <1>; 672f126890aSEmmanuel Vadot #size-cells = <0>; 673f126890aSEmmanuel Vadot compatible = "snps,designware-i2c"; 674f126890aSEmmanuel Vadot reg = <0xffc04000 0x1000>; 675f126890aSEmmanuel Vadot resets = <&rst I2C0_RESET>; 676f126890aSEmmanuel Vadot clocks = <&l4_sp_clk>; 677f126890aSEmmanuel Vadot interrupts = <0 158 0x4>; 678f126890aSEmmanuel Vadot status = "disabled"; 679f126890aSEmmanuel Vadot }; 680f126890aSEmmanuel Vadot 681f126890aSEmmanuel Vadot i2c1: i2c@ffc05000 { 682f126890aSEmmanuel Vadot #address-cells = <1>; 683f126890aSEmmanuel Vadot #size-cells = <0>; 684f126890aSEmmanuel Vadot compatible = "snps,designware-i2c"; 685f126890aSEmmanuel Vadot reg = <0xffc05000 0x1000>; 686f126890aSEmmanuel Vadot resets = <&rst I2C1_RESET>; 687f126890aSEmmanuel Vadot clocks = <&l4_sp_clk>; 688f126890aSEmmanuel Vadot interrupts = <0 159 0x4>; 689f126890aSEmmanuel Vadot status = "disabled"; 690f126890aSEmmanuel Vadot }; 691f126890aSEmmanuel Vadot 692f126890aSEmmanuel Vadot i2c2: i2c@ffc06000 { 693f126890aSEmmanuel Vadot #address-cells = <1>; 694f126890aSEmmanuel Vadot #size-cells = <0>; 695f126890aSEmmanuel Vadot compatible = "snps,designware-i2c"; 696f126890aSEmmanuel Vadot reg = <0xffc06000 0x1000>; 697f126890aSEmmanuel Vadot resets = <&rst I2C2_RESET>; 698f126890aSEmmanuel Vadot clocks = <&l4_sp_clk>; 699f126890aSEmmanuel Vadot interrupts = <0 160 0x4>; 700f126890aSEmmanuel Vadot status = "disabled"; 701f126890aSEmmanuel Vadot }; 702f126890aSEmmanuel Vadot 703f126890aSEmmanuel Vadot i2c3: i2c@ffc07000 { 704f126890aSEmmanuel Vadot #address-cells = <1>; 705f126890aSEmmanuel Vadot #size-cells = <0>; 706f126890aSEmmanuel Vadot compatible = "snps,designware-i2c"; 707f126890aSEmmanuel Vadot reg = <0xffc07000 0x1000>; 708f126890aSEmmanuel Vadot resets = <&rst I2C3_RESET>; 709f126890aSEmmanuel Vadot clocks = <&l4_sp_clk>; 710f126890aSEmmanuel Vadot interrupts = <0 161 0x4>; 711f126890aSEmmanuel Vadot status = "disabled"; 712f126890aSEmmanuel Vadot }; 713f126890aSEmmanuel Vadot 714f126890aSEmmanuel Vadot eccmgr: eccmgr { 715f126890aSEmmanuel Vadot compatible = "altr,socfpga-ecc-manager"; 716f126890aSEmmanuel Vadot #address-cells = <1>; 717f126890aSEmmanuel Vadot #size-cells = <1>; 718f126890aSEmmanuel Vadot ranges; 719f126890aSEmmanuel Vadot 720f126890aSEmmanuel Vadot l2-ecc@ffd08140 { 721f126890aSEmmanuel Vadot compatible = "altr,socfpga-l2-ecc"; 722f126890aSEmmanuel Vadot reg = <0xffd08140 0x4>; 723f126890aSEmmanuel Vadot interrupts = <0 36 1>, <0 37 1>; 724f126890aSEmmanuel Vadot }; 725f126890aSEmmanuel Vadot 726f126890aSEmmanuel Vadot ocram-ecc@ffd08144 { 727f126890aSEmmanuel Vadot compatible = "altr,socfpga-ocram-ecc"; 728f126890aSEmmanuel Vadot reg = <0xffd08144 0x4>; 729f126890aSEmmanuel Vadot iram = <&ocram>; 730f126890aSEmmanuel Vadot interrupts = <0 178 1>, <0 179 1>; 731f126890aSEmmanuel Vadot }; 732f126890aSEmmanuel Vadot }; 733f126890aSEmmanuel Vadot 734f126890aSEmmanuel Vadot L2: cache-controller@fffef000 { 735f126890aSEmmanuel Vadot compatible = "arm,pl310-cache"; 736f126890aSEmmanuel Vadot reg = <0xfffef000 0x1000>; 737f126890aSEmmanuel Vadot interrupts = <0 38 0x04>; 738f126890aSEmmanuel Vadot cache-unified; 739f126890aSEmmanuel Vadot cache-level = <2>; 740f126890aSEmmanuel Vadot arm,tag-latency = <1 1 1>; 741f126890aSEmmanuel Vadot arm,data-latency = <2 1 1>; 742f126890aSEmmanuel Vadot prefetch-data = <1>; 743f126890aSEmmanuel Vadot prefetch-instr = <1>; 744f126890aSEmmanuel Vadot arm,shared-override; 745f126890aSEmmanuel Vadot arm,double-linefill = <1>; 746f126890aSEmmanuel Vadot arm,double-linefill-incr = <0>; 747f126890aSEmmanuel Vadot arm,double-linefill-wrap = <1>; 748f126890aSEmmanuel Vadot arm,prefetch-drop = <0>; 749f126890aSEmmanuel Vadot arm,prefetch-offset = <7>; 750f126890aSEmmanuel Vadot }; 751f126890aSEmmanuel Vadot 752f126890aSEmmanuel Vadot l3regs@ff800000 { 753f126890aSEmmanuel Vadot compatible = "altr,l3regs", "syscon"; 754f126890aSEmmanuel Vadot reg = <0xff800000 0x1000>; 755f126890aSEmmanuel Vadot }; 756f126890aSEmmanuel Vadot 757f126890aSEmmanuel Vadot mmc: mmc@ff704000 { 758f126890aSEmmanuel Vadot compatible = "altr,socfpga-dw-mshc"; 759f126890aSEmmanuel Vadot reg = <0xff704000 0x1000>; 760f126890aSEmmanuel Vadot interrupts = <0 139 4>; 761f126890aSEmmanuel Vadot fifo-depth = <0x400>; 762f126890aSEmmanuel Vadot #address-cells = <1>; 763f126890aSEmmanuel Vadot #size-cells = <0>; 764f126890aSEmmanuel Vadot clocks = <&l4_mp_clk>, <&sdmmc_clk_divided>; 765f126890aSEmmanuel Vadot clock-names = "biu", "ciu"; 766f126890aSEmmanuel Vadot resets = <&rst SDMMC_RESET>; 767f126890aSEmmanuel Vadot altr,sysmgr-syscon = <&sysmgr 0x108 3>; 768f126890aSEmmanuel Vadot status = "disabled"; 769f126890aSEmmanuel Vadot }; 770f126890aSEmmanuel Vadot 771*8d13bc63SEmmanuel Vadot nand0: nand-controller@ff900000 { 772f126890aSEmmanuel Vadot #address-cells = <0x1>; 773f126890aSEmmanuel Vadot #size-cells = <0x0>; 774f126890aSEmmanuel Vadot compatible = "altr,socfpga-denali-nand"; 775f126890aSEmmanuel Vadot reg = <0xff900000 0x100000>, 776f126890aSEmmanuel Vadot <0xffb80000 0x10000>; 777f126890aSEmmanuel Vadot reg-names = "nand_data", "denali_reg"; 778f126890aSEmmanuel Vadot interrupts = <0x0 0x90 0x4>; 779f126890aSEmmanuel Vadot clocks = <&nand_clk>, <&nand_x_clk>, <&nand_ecc_clk>; 780f126890aSEmmanuel Vadot clock-names = "nand", "nand_x", "ecc"; 781f126890aSEmmanuel Vadot resets = <&rst NAND_RESET>; 782f126890aSEmmanuel Vadot status = "disabled"; 783f126890aSEmmanuel Vadot }; 784f126890aSEmmanuel Vadot 785f126890aSEmmanuel Vadot ocram: sram@ffff0000 { 786f126890aSEmmanuel Vadot compatible = "mmio-sram"; 787f126890aSEmmanuel Vadot reg = <0xffff0000 0x10000>; 788f126890aSEmmanuel Vadot }; 789f126890aSEmmanuel Vadot 790f126890aSEmmanuel Vadot qspi: spi@ff705000 { 791f126890aSEmmanuel Vadot compatible = "intel,socfpga-qspi", "cdns,qspi-nor"; 792f126890aSEmmanuel Vadot #address-cells = <1>; 793f126890aSEmmanuel Vadot #size-cells = <0>; 794f126890aSEmmanuel Vadot reg = <0xff705000 0x1000>, 795f126890aSEmmanuel Vadot <0xffa00000 0x1000>; 796f126890aSEmmanuel Vadot interrupts = <0 151 4>; 797f126890aSEmmanuel Vadot cdns,fifo-depth = <128>; 798f126890aSEmmanuel Vadot cdns,fifo-width = <4>; 799f126890aSEmmanuel Vadot cdns,trigger-address = <0x00000000>; 800f126890aSEmmanuel Vadot clocks = <&qspi_clk>; 801f126890aSEmmanuel Vadot resets = <&rst QSPI_RESET>; 802f126890aSEmmanuel Vadot status = "disabled"; 803f126890aSEmmanuel Vadot }; 804f126890aSEmmanuel Vadot 805f126890aSEmmanuel Vadot rst: rstmgr@ffd05000 { 806f126890aSEmmanuel Vadot #reset-cells = <1>; 807f126890aSEmmanuel Vadot compatible = "altr,rst-mgr"; 808f126890aSEmmanuel Vadot reg = <0xffd05000 0x1000>; 809f126890aSEmmanuel Vadot altr,modrst-offset = <0x10>; 810f126890aSEmmanuel Vadot }; 811f126890aSEmmanuel Vadot 812f126890aSEmmanuel Vadot scu: snoop-control-unit@fffec000 { 813f126890aSEmmanuel Vadot compatible = "arm,cortex-a9-scu"; 814f126890aSEmmanuel Vadot reg = <0xfffec000 0x100>; 815f126890aSEmmanuel Vadot }; 816f126890aSEmmanuel Vadot 817f126890aSEmmanuel Vadot sdr: sdr@ffc25000 { 818f126890aSEmmanuel Vadot compatible = "altr,sdr-ctl", "syscon"; 819f126890aSEmmanuel Vadot reg = <0xffc25000 0x1000>; 820f126890aSEmmanuel Vadot resets = <&rst SDR_RESET>; 821f126890aSEmmanuel Vadot }; 822f126890aSEmmanuel Vadot 823f126890aSEmmanuel Vadot sdramedac { 824f126890aSEmmanuel Vadot compatible = "altr,sdram-edac"; 825f126890aSEmmanuel Vadot altr,sdr-syscon = <&sdr>; 826f126890aSEmmanuel Vadot interrupts = <0 39 4>; 827f126890aSEmmanuel Vadot }; 828f126890aSEmmanuel Vadot 829f126890aSEmmanuel Vadot spi0: spi@fff00000 { 830f126890aSEmmanuel Vadot compatible = "snps,dw-apb-ssi"; 831f126890aSEmmanuel Vadot #address-cells = <1>; 832f126890aSEmmanuel Vadot #size-cells = <0>; 833f126890aSEmmanuel Vadot reg = <0xfff00000 0x1000>; 834f126890aSEmmanuel Vadot interrupts = <0 154 4>; 835f126890aSEmmanuel Vadot num-cs = <4>; 836f126890aSEmmanuel Vadot clocks = <&spi_m_clk>; 837f126890aSEmmanuel Vadot resets = <&rst SPIM0_RESET>; 838f126890aSEmmanuel Vadot reset-names = "spi"; 839f126890aSEmmanuel Vadot status = "disabled"; 840f126890aSEmmanuel Vadot }; 841f126890aSEmmanuel Vadot 842f126890aSEmmanuel Vadot spi1: spi@fff01000 { 843f126890aSEmmanuel Vadot compatible = "snps,dw-apb-ssi"; 844f126890aSEmmanuel Vadot #address-cells = <1>; 845f126890aSEmmanuel Vadot #size-cells = <0>; 846f126890aSEmmanuel Vadot reg = <0xfff01000 0x1000>; 847f126890aSEmmanuel Vadot interrupts = <0 155 4>; 848f126890aSEmmanuel Vadot num-cs = <4>; 849f126890aSEmmanuel Vadot clocks = <&spi_m_clk>; 850f126890aSEmmanuel Vadot resets = <&rst SPIM1_RESET>; 851f126890aSEmmanuel Vadot reset-names = "spi"; 852f126890aSEmmanuel Vadot status = "disabled"; 853f126890aSEmmanuel Vadot }; 854f126890aSEmmanuel Vadot 855f126890aSEmmanuel Vadot sysmgr: sysmgr@ffd08000 { 856f126890aSEmmanuel Vadot compatible = "altr,sys-mgr", "syscon"; 857f126890aSEmmanuel Vadot reg = <0xffd08000 0x4000>; 858f126890aSEmmanuel Vadot }; 859f126890aSEmmanuel Vadot 860f126890aSEmmanuel Vadot /* Local timer */ 861f126890aSEmmanuel Vadot timer@fffec600 { 862f126890aSEmmanuel Vadot compatible = "arm,cortex-a9-twd-timer"; 863f126890aSEmmanuel Vadot reg = <0xfffec600 0x100>; 864f126890aSEmmanuel Vadot interrupts = <1 13 0xf01>; 865f126890aSEmmanuel Vadot clocks = <&mpu_periph_clk>; 866f126890aSEmmanuel Vadot }; 867f126890aSEmmanuel Vadot 868f126890aSEmmanuel Vadot timer0: timer0@ffc08000 { 869f126890aSEmmanuel Vadot compatible = "snps,dw-apb-timer"; 870f126890aSEmmanuel Vadot interrupts = <0 167 4>; 871f126890aSEmmanuel Vadot reg = <0xffc08000 0x1000>; 872f126890aSEmmanuel Vadot clocks = <&l4_sp_clk>; 873f126890aSEmmanuel Vadot clock-names = "timer"; 874f126890aSEmmanuel Vadot resets = <&rst SPTIMER0_RESET>; 875f126890aSEmmanuel Vadot reset-names = "timer"; 876f126890aSEmmanuel Vadot }; 877f126890aSEmmanuel Vadot 878f126890aSEmmanuel Vadot timer1: timer1@ffc09000 { 879f126890aSEmmanuel Vadot compatible = "snps,dw-apb-timer"; 880f126890aSEmmanuel Vadot interrupts = <0 168 4>; 881f126890aSEmmanuel Vadot reg = <0xffc09000 0x1000>; 882f126890aSEmmanuel Vadot clocks = <&l4_sp_clk>; 883f126890aSEmmanuel Vadot clock-names = "timer"; 884f126890aSEmmanuel Vadot resets = <&rst SPTIMER1_RESET>; 885f126890aSEmmanuel Vadot reset-names = "timer"; 886f126890aSEmmanuel Vadot }; 887f126890aSEmmanuel Vadot 888f126890aSEmmanuel Vadot timer2: timer2@ffd00000 { 889f126890aSEmmanuel Vadot compatible = "snps,dw-apb-timer"; 890f126890aSEmmanuel Vadot interrupts = <0 169 4>; 891f126890aSEmmanuel Vadot reg = <0xffd00000 0x1000>; 892f126890aSEmmanuel Vadot clocks = <&osc1>; 893f126890aSEmmanuel Vadot clock-names = "timer"; 894f126890aSEmmanuel Vadot resets = <&rst OSC1TIMER0_RESET>; 895f126890aSEmmanuel Vadot reset-names = "timer"; 896f126890aSEmmanuel Vadot }; 897f126890aSEmmanuel Vadot 898f126890aSEmmanuel Vadot timer3: timer3@ffd01000 { 899f126890aSEmmanuel Vadot compatible = "snps,dw-apb-timer"; 900f126890aSEmmanuel Vadot interrupts = <0 170 4>; 901f126890aSEmmanuel Vadot reg = <0xffd01000 0x1000>; 902f126890aSEmmanuel Vadot clocks = <&osc1>; 903f126890aSEmmanuel Vadot clock-names = "timer"; 904f126890aSEmmanuel Vadot resets = <&rst OSC1TIMER1_RESET>; 905f126890aSEmmanuel Vadot reset-names = "timer"; 906f126890aSEmmanuel Vadot }; 907f126890aSEmmanuel Vadot 908f126890aSEmmanuel Vadot uart0: serial@ffc02000 { 909f126890aSEmmanuel Vadot compatible = "snps,dw-apb-uart"; 910f126890aSEmmanuel Vadot reg = <0xffc02000 0x1000>; 911f126890aSEmmanuel Vadot interrupts = <0 162 4>; 912f126890aSEmmanuel Vadot reg-shift = <2>; 913f126890aSEmmanuel Vadot reg-io-width = <4>; 914f126890aSEmmanuel Vadot clocks = <&l4_sp_clk>; 915f126890aSEmmanuel Vadot dmas = <&pdma 28>, 916f126890aSEmmanuel Vadot <&pdma 29>; 917f126890aSEmmanuel Vadot dma-names = "tx", "rx"; 918f126890aSEmmanuel Vadot resets = <&rst UART0_RESET>; 919f126890aSEmmanuel Vadot }; 920f126890aSEmmanuel Vadot 921f126890aSEmmanuel Vadot uart1: serial@ffc03000 { 922f126890aSEmmanuel Vadot compatible = "snps,dw-apb-uart"; 923f126890aSEmmanuel Vadot reg = <0xffc03000 0x1000>; 924f126890aSEmmanuel Vadot interrupts = <0 163 4>; 925f126890aSEmmanuel Vadot reg-shift = <2>; 926f126890aSEmmanuel Vadot reg-io-width = <4>; 927f126890aSEmmanuel Vadot clocks = <&l4_sp_clk>; 928f126890aSEmmanuel Vadot dmas = <&pdma 30>, 929f126890aSEmmanuel Vadot <&pdma 31>; 930f126890aSEmmanuel Vadot dma-names = "tx", "rx"; 931f126890aSEmmanuel Vadot resets = <&rst UART1_RESET>; 932f126890aSEmmanuel Vadot }; 933f126890aSEmmanuel Vadot 934f126890aSEmmanuel Vadot usbphy0: usbphy { 935f126890aSEmmanuel Vadot #phy-cells = <0>; 936f126890aSEmmanuel Vadot compatible = "usb-nop-xceiv"; 937f126890aSEmmanuel Vadot status = "okay"; 938f126890aSEmmanuel Vadot }; 939f126890aSEmmanuel Vadot 940f126890aSEmmanuel Vadot usb0: usb@ffb00000 { 941f126890aSEmmanuel Vadot compatible = "snps,dwc2"; 942f126890aSEmmanuel Vadot reg = <0xffb00000 0xffff>; 943f126890aSEmmanuel Vadot interrupts = <0 125 4>; 944f126890aSEmmanuel Vadot clocks = <&usb_mp_clk>; 945f126890aSEmmanuel Vadot clock-names = "otg"; 946f126890aSEmmanuel Vadot resets = <&rst USB0_RESET>; 947f126890aSEmmanuel Vadot reset-names = "dwc2"; 948f126890aSEmmanuel Vadot phys = <&usbphy0>; 949f126890aSEmmanuel Vadot phy-names = "usb2-phy"; 950f126890aSEmmanuel Vadot status = "disabled"; 951f126890aSEmmanuel Vadot }; 952f126890aSEmmanuel Vadot 953f126890aSEmmanuel Vadot usb1: usb@ffb40000 { 954f126890aSEmmanuel Vadot compatible = "snps,dwc2"; 955f126890aSEmmanuel Vadot reg = <0xffb40000 0xffff>; 956f126890aSEmmanuel Vadot interrupts = <0 128 4>; 957f126890aSEmmanuel Vadot clocks = <&usb_mp_clk>; 958f126890aSEmmanuel Vadot clock-names = "otg"; 959f126890aSEmmanuel Vadot resets = <&rst USB1_RESET>; 960f126890aSEmmanuel Vadot reset-names = "dwc2"; 961f126890aSEmmanuel Vadot phys = <&usbphy0>; 962f126890aSEmmanuel Vadot phy-names = "usb2-phy"; 963f126890aSEmmanuel Vadot status = "disabled"; 964f126890aSEmmanuel Vadot }; 965f126890aSEmmanuel Vadot 966f126890aSEmmanuel Vadot watchdog0: watchdog@ffd02000 { 967f126890aSEmmanuel Vadot compatible = "snps,dw-wdt"; 968f126890aSEmmanuel Vadot reg = <0xffd02000 0x1000>; 969f126890aSEmmanuel Vadot interrupts = <0 171 4>; 970f126890aSEmmanuel Vadot clocks = <&osc1>; 971f126890aSEmmanuel Vadot resets = <&rst L4WD0_RESET>; 972f126890aSEmmanuel Vadot status = "disabled"; 973f126890aSEmmanuel Vadot }; 974f126890aSEmmanuel Vadot 975f126890aSEmmanuel Vadot watchdog1: watchdog@ffd03000 { 976f126890aSEmmanuel Vadot compatible = "snps,dw-wdt"; 977f126890aSEmmanuel Vadot reg = <0xffd03000 0x1000>; 978f126890aSEmmanuel Vadot interrupts = <0 172 4>; 979f126890aSEmmanuel Vadot clocks = <&osc1>; 980f126890aSEmmanuel Vadot resets = <&rst L4WD1_RESET>; 981f126890aSEmmanuel Vadot status = "disabled"; 982f126890aSEmmanuel Vadot }; 983f126890aSEmmanuel Vadot }; 984f126890aSEmmanuel Vadot}; 985