13d5f7c5aSLey Foon Tan/* 2cc21ed62SMarek Vasut * Copyright Altera Corporation (C) 2014. All rights reserved. 33d5f7c5aSLey Foon Tan * 43d5f7c5aSLey Foon Tan * This program is free software; you can redistribute it and/or modify 53d5f7c5aSLey Foon Tan * it under the terms and conditions of the GNU General Public License, 63d5f7c5aSLey Foon Tan * version 2, as published by the Free Software Foundation. 73d5f7c5aSLey Foon Tan * 83d5f7c5aSLey Foon Tan * This program is distributed in the hope it will be useful, but WITHOUT 93d5f7c5aSLey Foon Tan * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 103d5f7c5aSLey Foon Tan * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 113d5f7c5aSLey Foon Tan * more details. 123d5f7c5aSLey Foon Tan * 133d5f7c5aSLey Foon Tan * You should have received a copy of the GNU General Public License along with 143d5f7c5aSLey Foon Tan * this program. If not, see <http://www.gnu.org/licenses/>. 153d5f7c5aSLey Foon Tan */ 163d5f7c5aSLey Foon Tan 173d5f7c5aSLey Foon Tan#include <dt-bindings/interrupt-controller/arm-gic.h> 183d5f7c5aSLey Foon Tan#include <dt-bindings/reset/altr,rst-mgr-a10.h> 193d5f7c5aSLey Foon Tan 203d5f7c5aSLey Foon Tan/ { 213d5f7c5aSLey Foon Tan #address-cells = <1>; 223d5f7c5aSLey Foon Tan #size-cells = <1>; 233d5f7c5aSLey Foon Tan 24cca9af63SMarek Vasut chosen { 25cca9af63SMarek Vasut tick-timer = &timer2; 26cca9af63SMarek Vasut u-boot,dm-pre-reloc; 27cca9af63SMarek Vasut }; 28cca9af63SMarek Vasut 293d5f7c5aSLey Foon Tan cpus { 303d5f7c5aSLey Foon Tan #address-cells = <1>; 313d5f7c5aSLey Foon Tan #size-cells = <0>; 32cc21ed62SMarek Vasut enable-method = "altr,socfpga-a10-smp"; 333d5f7c5aSLey Foon Tan 343d5f7c5aSLey Foon Tan cpu@0 { 353d5f7c5aSLey Foon Tan compatible = "arm,cortex-a9"; 363d5f7c5aSLey Foon Tan device_type = "cpu"; 373d5f7c5aSLey Foon Tan reg = <0>; 383d5f7c5aSLey Foon Tan next-level-cache = <&L2>; 393d5f7c5aSLey Foon Tan }; 403d5f7c5aSLey Foon Tan cpu@1 { 413d5f7c5aSLey Foon Tan compatible = "arm,cortex-a9"; 423d5f7c5aSLey Foon Tan device_type = "cpu"; 433d5f7c5aSLey Foon Tan reg = <1>; 443d5f7c5aSLey Foon Tan next-level-cache = <&L2>; 453d5f7c5aSLey Foon Tan }; 463d5f7c5aSLey Foon Tan }; 473d5f7c5aSLey Foon Tan 483d5f7c5aSLey Foon Tan intc: intc@ffffd000 { 493d5f7c5aSLey Foon Tan compatible = "arm,cortex-a9-gic"; 503d5f7c5aSLey Foon Tan #interrupt-cells = <3>; 513d5f7c5aSLey Foon Tan interrupt-controller; 523d5f7c5aSLey Foon Tan reg = <0xffffd000 0x1000>, 533d5f7c5aSLey Foon Tan <0xffffc100 0x100>; 543d5f7c5aSLey Foon Tan }; 553d5f7c5aSLey Foon Tan 563d5f7c5aSLey Foon Tan soc { 573d5f7c5aSLey Foon Tan #address-cells = <1>; 583d5f7c5aSLey Foon Tan #size-cells = <1>; 593d5f7c5aSLey Foon Tan compatible = "simple-bus"; 603d5f7c5aSLey Foon Tan device_type = "soc"; 613d5f7c5aSLey Foon Tan interrupt-parent = <&intc>; 623d5f7c5aSLey Foon Tan ranges; 636f96ed7eSMarek Vasut u-boot,dm-pre-reloc; 643d5f7c5aSLey Foon Tan 653d5f7c5aSLey Foon Tan amba { 663d5f7c5aSLey Foon Tan compatible = "simple-bus"; 673d5f7c5aSLey Foon Tan #address-cells = <1>; 683d5f7c5aSLey Foon Tan #size-cells = <1>; 693d5f7c5aSLey Foon Tan ranges; 703d5f7c5aSLey Foon Tan 713d5f7c5aSLey Foon Tan pdma: pdma@ffda1000 { 723d5f7c5aSLey Foon Tan compatible = "arm,pl330", "arm,primecell"; 733d5f7c5aSLey Foon Tan reg = <0xffda1000 0x1000>; 743d5f7c5aSLey Foon Tan interrupts = <0 83 IRQ_TYPE_LEVEL_HIGH>, 753d5f7c5aSLey Foon Tan <0 84 IRQ_TYPE_LEVEL_HIGH>, 763d5f7c5aSLey Foon Tan <0 85 IRQ_TYPE_LEVEL_HIGH>, 773d5f7c5aSLey Foon Tan <0 86 IRQ_TYPE_LEVEL_HIGH>, 783d5f7c5aSLey Foon Tan <0 87 IRQ_TYPE_LEVEL_HIGH>, 793d5f7c5aSLey Foon Tan <0 88 IRQ_TYPE_LEVEL_HIGH>, 803d5f7c5aSLey Foon Tan <0 89 IRQ_TYPE_LEVEL_HIGH>, 813d5f7c5aSLey Foon Tan <0 90 IRQ_TYPE_LEVEL_HIGH>, 823d5f7c5aSLey Foon Tan <0 91 IRQ_TYPE_LEVEL_HIGH>; 833d5f7c5aSLey Foon Tan #dma-cells = <1>; 843d5f7c5aSLey Foon Tan #dma-channels = <8>; 853d5f7c5aSLey Foon Tan #dma-requests = <32>; 863d5f7c5aSLey Foon Tan clocks = <&l4_main_clk>; 873d5f7c5aSLey Foon Tan clock-names = "apb_pclk"; 883d5f7c5aSLey Foon Tan }; 893d5f7c5aSLey Foon Tan }; 903d5f7c5aSLey Foon Tan 91cc21ed62SMarek Vasut base_fpga_region { 92cc21ed62SMarek Vasut #address-cells = <0x1>; 93cc21ed62SMarek Vasut #size-cells = <0x1>; 94cc21ed62SMarek Vasut 95cc21ed62SMarek Vasut compatible = "fpga-region"; 96cc21ed62SMarek Vasut fpga-mgr = <&fpga_mgr>; 97cc21ed62SMarek Vasut }; 98cc21ed62SMarek Vasut 993d5f7c5aSLey Foon Tan clkmgr@ffd04000 { 1003d5f7c5aSLey Foon Tan compatible = "altr,clk-mgr"; 1013d5f7c5aSLey Foon Tan reg = <0xffd04000 0x1000>; 102ccc97432SMarek Vasut u-boot,dm-pre-reloc; 1033d5f7c5aSLey Foon Tan 1043d5f7c5aSLey Foon Tan clocks { 1053d5f7c5aSLey Foon Tan #address-cells = <1>; 1063d5f7c5aSLey Foon Tan #size-cells = <0>; 107ccc97432SMarek Vasut u-boot,dm-pre-reloc; 1083d5f7c5aSLey Foon Tan 1093d5f7c5aSLey Foon Tan cb_intosc_hs_div2_clk: cb_intosc_hs_div2_clk { 1103d5f7c5aSLey Foon Tan #clock-cells = <0>; 1113d5f7c5aSLey Foon Tan compatible = "fixed-clock"; 112ccc97432SMarek Vasut u-boot,dm-pre-reloc; 1133d5f7c5aSLey Foon Tan }; 1143d5f7c5aSLey Foon Tan 1153d5f7c5aSLey Foon Tan cb_intosc_ls_clk: cb_intosc_ls_clk { 1163d5f7c5aSLey Foon Tan #clock-cells = <0>; 1173d5f7c5aSLey Foon Tan compatible = "fixed-clock"; 118ccc97432SMarek Vasut u-boot,dm-pre-reloc; 1193d5f7c5aSLey Foon Tan }; 1203d5f7c5aSLey Foon Tan 1213d5f7c5aSLey Foon Tan f2s_free_clk: f2s_free_clk { 1223d5f7c5aSLey Foon Tan #clock-cells = <0>; 1233d5f7c5aSLey Foon Tan compatible = "fixed-clock"; 124ccc97432SMarek Vasut u-boot,dm-pre-reloc; 1253d5f7c5aSLey Foon Tan }; 1263d5f7c5aSLey Foon Tan 1273d5f7c5aSLey Foon Tan osc1: osc1 { 1283d5f7c5aSLey Foon Tan #clock-cells = <0>; 1293d5f7c5aSLey Foon Tan compatible = "fixed-clock"; 130ccc97432SMarek Vasut u-boot,dm-pre-reloc; 1313d5f7c5aSLey Foon Tan }; 1323d5f7c5aSLey Foon Tan 133cc21ed62SMarek Vasut main_pll: main_pll@40 { 1343d5f7c5aSLey Foon Tan #address-cells = <1>; 1353d5f7c5aSLey Foon Tan #size-cells = <0>; 1363d5f7c5aSLey Foon Tan #clock-cells = <0>; 1373d5f7c5aSLey Foon Tan compatible = "altr,socfpga-a10-pll-clock"; 1383d5f7c5aSLey Foon Tan clocks = <&osc1>, <&cb_intosc_ls_clk>, 1393d5f7c5aSLey Foon Tan <&f2s_free_clk>; 1403d5f7c5aSLey Foon Tan reg = <0x40>; 141ccc97432SMarek Vasut u-boot,dm-pre-reloc; 1423d5f7c5aSLey Foon Tan 1433d5f7c5aSLey Foon Tan main_mpu_base_clk: main_mpu_base_clk { 1443d5f7c5aSLey Foon Tan #clock-cells = <0>; 1453d5f7c5aSLey Foon Tan compatible = "altr,socfpga-a10-perip-clk"; 1463d5f7c5aSLey Foon Tan clocks = <&main_pll>; 1473d5f7c5aSLey Foon Tan div-reg = <0x140 0 11>; 1483d5f7c5aSLey Foon Tan }; 1493d5f7c5aSLey Foon Tan 1503d5f7c5aSLey Foon Tan main_noc_base_clk: main_noc_base_clk { 1513d5f7c5aSLey Foon Tan #clock-cells = <0>; 1523d5f7c5aSLey Foon Tan compatible = "altr,socfpga-a10-perip-clk"; 1533d5f7c5aSLey Foon Tan clocks = <&main_pll>; 1543d5f7c5aSLey Foon Tan div-reg = <0x144 0 11>; 155cca9af63SMarek Vasut u-boot,dm-pre-reloc; 1563d5f7c5aSLey Foon Tan }; 1573d5f7c5aSLey Foon Tan 158cc21ed62SMarek Vasut main_emaca_clk: main_emaca_clk@68 { 1593d5f7c5aSLey Foon Tan #clock-cells = <0>; 1603d5f7c5aSLey Foon Tan compatible = "altr,socfpga-a10-perip-clk"; 1613d5f7c5aSLey Foon Tan clocks = <&main_pll>; 1623d5f7c5aSLey Foon Tan reg = <0x68>; 1633d5f7c5aSLey Foon Tan }; 1643d5f7c5aSLey Foon Tan 165cc21ed62SMarek Vasut main_emacb_clk: main_emacb_clk@6c { 1663d5f7c5aSLey Foon Tan #clock-cells = <0>; 1673d5f7c5aSLey Foon Tan compatible = "altr,socfpga-a10-perip-clk"; 1683d5f7c5aSLey Foon Tan clocks = <&main_pll>; 1693d5f7c5aSLey Foon Tan reg = <0x6C>; 1703d5f7c5aSLey Foon Tan }; 1713d5f7c5aSLey Foon Tan 172cc21ed62SMarek Vasut main_emac_ptp_clk: main_emac_ptp_clk@70 { 1733d5f7c5aSLey Foon Tan #clock-cells = <0>; 1743d5f7c5aSLey Foon Tan compatible = "altr,socfpga-a10-perip-clk"; 1753d5f7c5aSLey Foon Tan clocks = <&main_pll>; 1763d5f7c5aSLey Foon Tan reg = <0x70>; 1773d5f7c5aSLey Foon Tan }; 1783d5f7c5aSLey Foon Tan 179cc21ed62SMarek Vasut main_gpio_db_clk: main_gpio_db_clk@74 { 1803d5f7c5aSLey Foon Tan #clock-cells = <0>; 1813d5f7c5aSLey Foon Tan compatible = "altr,socfpga-a10-perip-clk"; 1823d5f7c5aSLey Foon Tan clocks = <&main_pll>; 1833d5f7c5aSLey Foon Tan reg = <0x74>; 1843d5f7c5aSLey Foon Tan }; 1853d5f7c5aSLey Foon Tan 186cc21ed62SMarek Vasut main_sdmmc_clk: main_sdmmc_clk@78 { 1873d5f7c5aSLey Foon Tan #clock-cells = <0>; 188cc21ed62SMarek Vasut compatible = "altr,socfpga-a10-perip-clk" 189cc21ed62SMarek Vasut; 1903d5f7c5aSLey Foon Tan clocks = <&main_pll>; 1913d5f7c5aSLey Foon Tan reg = <0x78>; 1923d5f7c5aSLey Foon Tan }; 1933d5f7c5aSLey Foon Tan 194cc21ed62SMarek Vasut main_s2f_usr0_clk: main_s2f_usr0_clk@7c { 1953d5f7c5aSLey Foon Tan #clock-cells = <0>; 1963d5f7c5aSLey Foon Tan compatible = "altr,socfpga-a10-perip-clk"; 1973d5f7c5aSLey Foon Tan clocks = <&main_pll>; 1983d5f7c5aSLey Foon Tan reg = <0x7C>; 1993d5f7c5aSLey Foon Tan }; 2003d5f7c5aSLey Foon Tan 201cc21ed62SMarek Vasut main_s2f_usr1_clk: main_s2f_usr1_clk@80 { 2023d5f7c5aSLey Foon Tan #clock-cells = <0>; 2033d5f7c5aSLey Foon Tan compatible = "altr,socfpga-a10-perip-clk"; 2043d5f7c5aSLey Foon Tan clocks = <&main_pll>; 2053d5f7c5aSLey Foon Tan reg = <0x80>; 2063d5f7c5aSLey Foon Tan }; 2073d5f7c5aSLey Foon Tan 208cc21ed62SMarek Vasut main_hmc_pll_ref_clk: main_hmc_pll_ref_clk@84 { 2093d5f7c5aSLey Foon Tan #clock-cells = <0>; 2103d5f7c5aSLey Foon Tan compatible = "altr,socfpga-a10-perip-clk"; 2113d5f7c5aSLey Foon Tan clocks = <&main_pll>; 2123d5f7c5aSLey Foon Tan reg = <0x84>; 2133d5f7c5aSLey Foon Tan }; 2143d5f7c5aSLey Foon Tan 215cc21ed62SMarek Vasut main_periph_ref_clk: main_periph_ref_clk@9c { 2163d5f7c5aSLey Foon Tan #clock-cells = <0>; 2173d5f7c5aSLey Foon Tan compatible = "altr,socfpga-a10-perip-clk"; 2183d5f7c5aSLey Foon Tan clocks = <&main_pll>; 2193d5f7c5aSLey Foon Tan reg = <0x9C>; 2203d5f7c5aSLey Foon Tan }; 2213d5f7c5aSLey Foon Tan }; 2223d5f7c5aSLey Foon Tan 223cc21ed62SMarek Vasut periph_pll: periph_pll@c0 { 2243d5f7c5aSLey Foon Tan #address-cells = <1>; 2253d5f7c5aSLey Foon Tan #size-cells = <0>; 2263d5f7c5aSLey Foon Tan #clock-cells = <0>; 2273d5f7c5aSLey Foon Tan compatible = "altr,socfpga-a10-pll-clock"; 2283d5f7c5aSLey Foon Tan clocks = <&osc1>, <&cb_intosc_ls_clk>, 2293d5f7c5aSLey Foon Tan <&f2s_free_clk>, <&main_periph_ref_clk>; 2303d5f7c5aSLey Foon Tan reg = <0xC0>; 231ccc97432SMarek Vasut u-boot,dm-pre-reloc; 2323d5f7c5aSLey Foon Tan 2333d5f7c5aSLey Foon Tan peri_mpu_base_clk: peri_mpu_base_clk { 2343d5f7c5aSLey Foon Tan #clock-cells = <0>; 2353d5f7c5aSLey Foon Tan compatible = "altr,socfpga-a10-perip-clk"; 2363d5f7c5aSLey Foon Tan clocks = <&periph_pll>; 2373d5f7c5aSLey Foon Tan div-reg = <0x140 16 11>; 2383d5f7c5aSLey Foon Tan }; 2393d5f7c5aSLey Foon Tan 2403d5f7c5aSLey Foon Tan peri_noc_base_clk: peri_noc_base_clk { 2413d5f7c5aSLey Foon Tan #clock-cells = <0>; 2423d5f7c5aSLey Foon Tan compatible = "altr,socfpga-a10-perip-clk"; 2433d5f7c5aSLey Foon Tan clocks = <&periph_pll>; 2443d5f7c5aSLey Foon Tan div-reg = <0x144 16 11>; 245cca9af63SMarek Vasut u-boot,dm-pre-reloc; 2463d5f7c5aSLey Foon Tan }; 2473d5f7c5aSLey Foon Tan 248cc21ed62SMarek Vasut peri_emaca_clk: peri_emaca_clk@e8 { 2493d5f7c5aSLey Foon Tan #clock-cells = <0>; 2503d5f7c5aSLey Foon Tan compatible = "altr,socfpga-a10-perip-clk"; 2513d5f7c5aSLey Foon Tan clocks = <&periph_pll>; 2523d5f7c5aSLey Foon Tan reg = <0xE8>; 2533d5f7c5aSLey Foon Tan }; 2543d5f7c5aSLey Foon Tan 255cc21ed62SMarek Vasut peri_emacb_clk: peri_emacb_clk@ec { 2563d5f7c5aSLey Foon Tan #clock-cells = <0>; 2573d5f7c5aSLey Foon Tan compatible = "altr,socfpga-a10-perip-clk"; 2583d5f7c5aSLey Foon Tan clocks = <&periph_pll>; 2593d5f7c5aSLey Foon Tan reg = <0xEC>; 2603d5f7c5aSLey Foon Tan }; 2613d5f7c5aSLey Foon Tan 262cc21ed62SMarek Vasut peri_emac_ptp_clk: peri_emac_ptp_clk@f0 { 2633d5f7c5aSLey Foon Tan #clock-cells = <0>; 2643d5f7c5aSLey Foon Tan compatible = "altr,socfpga-a10-perip-clk"; 2653d5f7c5aSLey Foon Tan clocks = <&periph_pll>; 2663d5f7c5aSLey Foon Tan reg = <0xF0>; 2673d5f7c5aSLey Foon Tan }; 2683d5f7c5aSLey Foon Tan 269cc21ed62SMarek Vasut peri_gpio_db_clk: peri_gpio_db_clk@f4 { 2703d5f7c5aSLey Foon Tan #clock-cells = <0>; 2713d5f7c5aSLey Foon Tan compatible = "altr,socfpga-a10-perip-clk"; 2723d5f7c5aSLey Foon Tan clocks = <&periph_pll>; 2733d5f7c5aSLey Foon Tan reg = <0xF4>; 2743d5f7c5aSLey Foon Tan }; 2753d5f7c5aSLey Foon Tan 276cc21ed62SMarek Vasut peri_sdmmc_clk: peri_sdmmc_clk@f8 { 2773d5f7c5aSLey Foon Tan #clock-cells = <0>; 2783d5f7c5aSLey Foon Tan compatible = "altr,socfpga-a10-perip-clk"; 2793d5f7c5aSLey Foon Tan clocks = <&periph_pll>; 2803d5f7c5aSLey Foon Tan reg = <0xF8>; 2813d5f7c5aSLey Foon Tan }; 2823d5f7c5aSLey Foon Tan 283cc21ed62SMarek Vasut peri_s2f_usr0_clk: peri_s2f_usr0_clk@fc { 2843d5f7c5aSLey Foon Tan #clock-cells = <0>; 2853d5f7c5aSLey Foon Tan compatible = "altr,socfpga-a10-perip-clk"; 2863d5f7c5aSLey Foon Tan clocks = <&periph_pll>; 2873d5f7c5aSLey Foon Tan reg = <0xFC>; 2883d5f7c5aSLey Foon Tan }; 2893d5f7c5aSLey Foon Tan 290cc21ed62SMarek Vasut peri_s2f_usr1_clk: peri_s2f_usr1_clk@100 { 2913d5f7c5aSLey Foon Tan #clock-cells = <0>; 2923d5f7c5aSLey Foon Tan compatible = "altr,socfpga-a10-perip-clk"; 2933d5f7c5aSLey Foon Tan clocks = <&periph_pll>; 2943d5f7c5aSLey Foon Tan reg = <0x100>; 2953d5f7c5aSLey Foon Tan }; 2963d5f7c5aSLey Foon Tan 297cc21ed62SMarek Vasut peri_hmc_pll_ref_clk: peri_hmc_pll_ref_clk@104 { 2983d5f7c5aSLey Foon Tan #clock-cells = <0>; 2993d5f7c5aSLey Foon Tan compatible = "altr,socfpga-a10-perip-clk"; 3003d5f7c5aSLey Foon Tan clocks = <&periph_pll>; 3013d5f7c5aSLey Foon Tan reg = <0x104>; 3023d5f7c5aSLey Foon Tan }; 3033d5f7c5aSLey Foon Tan }; 3043d5f7c5aSLey Foon Tan 305cc21ed62SMarek Vasut mpu_free_clk: mpu_free_clk@60 { 3063d5f7c5aSLey Foon Tan #clock-cells = <0>; 3073d5f7c5aSLey Foon Tan compatible = "altr,socfpga-a10-perip-clk"; 3083d5f7c5aSLey Foon Tan clocks = <&main_mpu_base_clk>, <&peri_mpu_base_clk>, 3093d5f7c5aSLey Foon Tan <&osc1>, <&cb_intosc_hs_div2_clk>, 3103d5f7c5aSLey Foon Tan <&f2s_free_clk>; 3113d5f7c5aSLey Foon Tan reg = <0x60>; 3123d5f7c5aSLey Foon Tan }; 3133d5f7c5aSLey Foon Tan 314cc21ed62SMarek Vasut noc_free_clk: noc_free_clk@64 { 3153d5f7c5aSLey Foon Tan #clock-cells = <0>; 3163d5f7c5aSLey Foon Tan compatible = "altr,socfpga-a10-perip-clk"; 3173d5f7c5aSLey Foon Tan clocks = <&main_noc_base_clk>, <&peri_noc_base_clk>, 3183d5f7c5aSLey Foon Tan <&osc1>, <&cb_intosc_hs_div2_clk>, 3193d5f7c5aSLey Foon Tan <&f2s_free_clk>; 3203d5f7c5aSLey Foon Tan reg = <0x64>; 321cca9af63SMarek Vasut u-boot,dm-pre-reloc; 3223d5f7c5aSLey Foon Tan }; 3233d5f7c5aSLey Foon Tan 324cc21ed62SMarek Vasut s2f_user1_free_clk: s2f_user1_free_clk@104 { 3253d5f7c5aSLey Foon Tan #clock-cells = <0>; 3263d5f7c5aSLey Foon Tan compatible = "altr,socfpga-a10-perip-clk"; 3273d5f7c5aSLey Foon Tan clocks = <&main_s2f_usr1_clk>, <&peri_s2f_usr1_clk>, 3283d5f7c5aSLey Foon Tan <&osc1>, <&cb_intosc_hs_div2_clk>, 3293d5f7c5aSLey Foon Tan <&f2s_free_clk>; 3303d5f7c5aSLey Foon Tan reg = <0x104>; 3313d5f7c5aSLey Foon Tan }; 3323d5f7c5aSLey Foon Tan 333cc21ed62SMarek Vasut sdmmc_free_clk: sdmmc_free_clk@f8 { 3343d5f7c5aSLey Foon Tan #clock-cells = <0>; 3353d5f7c5aSLey Foon Tan compatible = "altr,socfpga-a10-perip-clk"; 3363d5f7c5aSLey Foon Tan clocks = <&main_sdmmc_clk>, <&peri_sdmmc_clk>, 3373d5f7c5aSLey Foon Tan <&osc1>, <&cb_intosc_hs_div2_clk>, 3383d5f7c5aSLey Foon Tan <&f2s_free_clk>; 3393d5f7c5aSLey Foon Tan fixed-divider = <4>; 3403d5f7c5aSLey Foon Tan reg = <0xF8>; 3413d5f7c5aSLey Foon Tan }; 3423d5f7c5aSLey Foon Tan 3433d5f7c5aSLey Foon Tan l4_sys_free_clk: l4_sys_free_clk { 3443d5f7c5aSLey Foon Tan #clock-cells = <0>; 3453d5f7c5aSLey Foon Tan compatible = "altr,socfpga-a10-perip-clk"; 3463d5f7c5aSLey Foon Tan clocks = <&noc_free_clk>; 3473d5f7c5aSLey Foon Tan fixed-divider = <4>; 348cca9af63SMarek Vasut u-boot,dm-pre-reloc; 3493d5f7c5aSLey Foon Tan }; 3503d5f7c5aSLey Foon Tan 3513d5f7c5aSLey Foon Tan l4_main_clk: l4_main_clk { 3523d5f7c5aSLey Foon Tan #clock-cells = <0>; 3533d5f7c5aSLey Foon Tan compatible = "altr,socfpga-a10-gate-clk"; 3543d5f7c5aSLey Foon Tan clocks = <&noc_free_clk>; 3553d5f7c5aSLey Foon Tan div-reg = <0xA8 0 2>; 3563d5f7c5aSLey Foon Tan clk-gate = <0x48 1>; 3573d5f7c5aSLey Foon Tan }; 3583d5f7c5aSLey Foon Tan 3593d5f7c5aSLey Foon Tan l4_mp_clk: l4_mp_clk { 3603d5f7c5aSLey Foon Tan #clock-cells = <0>; 3613d5f7c5aSLey Foon Tan compatible = "altr,socfpga-a10-gate-clk"; 3623d5f7c5aSLey Foon Tan clocks = <&noc_free_clk>; 3633d5f7c5aSLey Foon Tan div-reg = <0xA8 8 2>; 3643d5f7c5aSLey Foon Tan clk-gate = <0x48 2>; 3653d5f7c5aSLey Foon Tan }; 3663d5f7c5aSLey Foon Tan 3673d5f7c5aSLey Foon Tan l4_sp_clk: l4_sp_clk { 3683d5f7c5aSLey Foon Tan #clock-cells = <0>; 3693d5f7c5aSLey Foon Tan compatible = "altr,socfpga-a10-gate-clk"; 3703d5f7c5aSLey Foon Tan clocks = <&noc_free_clk>; 3713d5f7c5aSLey Foon Tan div-reg = <0xA8 16 2>; 3723d5f7c5aSLey Foon Tan clk-gate = <0x48 3>; 3733d5f7c5aSLey Foon Tan }; 3743d5f7c5aSLey Foon Tan 3753d5f7c5aSLey Foon Tan mpu_periph_clk: mpu_periph_clk { 3763d5f7c5aSLey Foon Tan #clock-cells = <0>; 3773d5f7c5aSLey Foon Tan compatible = "altr,socfpga-a10-gate-clk"; 3783d5f7c5aSLey Foon Tan clocks = <&mpu_free_clk>; 3793d5f7c5aSLey Foon Tan fixed-divider = <4>; 3803d5f7c5aSLey Foon Tan clk-gate = <0x48 0>; 3813d5f7c5aSLey Foon Tan }; 3823d5f7c5aSLey Foon Tan 3833d5f7c5aSLey Foon Tan sdmmc_clk: sdmmc_clk { 3843d5f7c5aSLey Foon Tan #clock-cells = <0>; 3853d5f7c5aSLey Foon Tan compatible = "altr,socfpga-a10-gate-clk"; 3863d5f7c5aSLey Foon Tan clocks = <&sdmmc_free_clk>; 3873d5f7c5aSLey Foon Tan clk-gate = <0xC8 5>; 3883d5f7c5aSLey Foon Tan clk-phase = <0 135>; 3893d5f7c5aSLey Foon Tan }; 3903d5f7c5aSLey Foon Tan 3913d5f7c5aSLey Foon Tan qspi_clk: qspi_clk { 3923d5f7c5aSLey Foon Tan #clock-cells = <0>; 3933d5f7c5aSLey Foon Tan compatible = "altr,socfpga-a10-gate-clk"; 3943d5f7c5aSLey Foon Tan clocks = <&l4_main_clk>; 3953d5f7c5aSLey Foon Tan clk-gate = <0xC8 11>; 3963d5f7c5aSLey Foon Tan }; 3973d5f7c5aSLey Foon Tan 3983d5f7c5aSLey Foon Tan nand_clk: nand_clk { 3993d5f7c5aSLey Foon Tan #clock-cells = <0>; 4003d5f7c5aSLey Foon Tan compatible = "altr,socfpga-a10-gate-clk"; 4013d5f7c5aSLey Foon Tan clocks = <&l4_mp_clk>; 4023d5f7c5aSLey Foon Tan clk-gate = <0xC8 10>; 4033d5f7c5aSLey Foon Tan }; 4043d5f7c5aSLey Foon Tan 4053d5f7c5aSLey Foon Tan spi_m_clk: spi_m_clk { 4063d5f7c5aSLey Foon Tan #clock-cells = <0>; 4073d5f7c5aSLey Foon Tan compatible = "altr,socfpga-a10-gate-clk"; 4083d5f7c5aSLey Foon Tan clocks = <&l4_main_clk>; 4093d5f7c5aSLey Foon Tan clk-gate = <0xC8 9>; 4103d5f7c5aSLey Foon Tan }; 4113d5f7c5aSLey Foon Tan 4123d5f7c5aSLey Foon Tan usb_clk: usb_clk { 4133d5f7c5aSLey Foon Tan #clock-cells = <0>; 4143d5f7c5aSLey Foon Tan compatible = "altr,socfpga-a10-gate-clk"; 4153d5f7c5aSLey Foon Tan clocks = <&l4_mp_clk>; 4163d5f7c5aSLey Foon Tan clk-gate = <0xC8 8>; 4173d5f7c5aSLey Foon Tan }; 4183d5f7c5aSLey Foon Tan 4193d5f7c5aSLey Foon Tan s2f_usr1_clk: s2f_usr1_clk { 4203d5f7c5aSLey Foon Tan #clock-cells = <0>; 4213d5f7c5aSLey Foon Tan compatible = "altr,socfpga-a10-gate-clk"; 4223d5f7c5aSLey Foon Tan clocks = <&peri_s2f_usr1_clk>; 4233d5f7c5aSLey Foon Tan clk-gate = <0xC8 6>; 4243d5f7c5aSLey Foon Tan }; 4253d5f7c5aSLey Foon Tan }; 4263d5f7c5aSLey Foon Tan }; 4273d5f7c5aSLey Foon Tan 428cc21ed62SMarek Vasut socfpga_axi_setup: stmmac-axi-config { 429cc21ed62SMarek Vasut snps,wr_osr_lmt = <0xf>; 430cc21ed62SMarek Vasut snps,rd_osr_lmt = <0xf>; 431cc21ed62SMarek Vasut snps,blen = <0 0 0 0 16 0 0>; 432cc21ed62SMarek Vasut }; 433cc21ed62SMarek Vasut 4343d5f7c5aSLey Foon Tan gmac0: ethernet@ff800000 { 4353d5f7c5aSLey Foon Tan compatible = "altr,socfpga-stmmac", "snps,dwmac-3.72a", "snps,dwmac"; 4363d5f7c5aSLey Foon Tan altr,sysmgr-syscon = <&sysmgr 0x44 0>; 4373d5f7c5aSLey Foon Tan reg = <0xff800000 0x2000>; 4383d5f7c5aSLey Foon Tan interrupts = <0 92 IRQ_TYPE_LEVEL_HIGH>; 4393d5f7c5aSLey Foon Tan interrupt-names = "macirq"; 4403d5f7c5aSLey Foon Tan /* Filled in by bootloader */ 4413d5f7c5aSLey Foon Tan mac-address = [00 00 00 00 00 00]; 4423d5f7c5aSLey Foon Tan snps,multicast-filter-bins = <256>; 4433d5f7c5aSLey Foon Tan snps,perfect-filter-entries = <128>; 4443d5f7c5aSLey Foon Tan tx-fifo-depth = <4096>; 4453d5f7c5aSLey Foon Tan rx-fifo-depth = <16384>; 4463d5f7c5aSLey Foon Tan clocks = <&l4_mp_clk>; 4473d5f7c5aSLey Foon Tan clock-names = "stmmaceth"; 448da61e50fSMarek Vasut resets = <&rst EMAC0_RESET>, <&rst EMAC0_OCP_RESET>; 449da61e50fSMarek Vasut reset-names = "stmmaceth", "stmmaceth-ocp"; 450cc21ed62SMarek Vasut snps,axi-config = <&socfpga_axi_setup>; 4513d5f7c5aSLey Foon Tan status = "disabled"; 4523d5f7c5aSLey Foon Tan }; 4533d5f7c5aSLey Foon Tan 4543d5f7c5aSLey Foon Tan gmac1: ethernet@ff802000 { 4553d5f7c5aSLey Foon Tan compatible = "altr,socfpga-stmmac", "snps,dwmac-3.72a", "snps,dwmac"; 4563d5f7c5aSLey Foon Tan altr,sysmgr-syscon = <&sysmgr 0x48 0>; 4573d5f7c5aSLey Foon Tan reg = <0xff802000 0x2000>; 4583d5f7c5aSLey Foon Tan interrupts = <0 93 IRQ_TYPE_LEVEL_HIGH>; 4593d5f7c5aSLey Foon Tan interrupt-names = "macirq"; 4603d5f7c5aSLey Foon Tan /* Filled in by bootloader */ 4613d5f7c5aSLey Foon Tan mac-address = [00 00 00 00 00 00]; 4623d5f7c5aSLey Foon Tan snps,multicast-filter-bins = <256>; 4633d5f7c5aSLey Foon Tan snps,perfect-filter-entries = <128>; 4643d5f7c5aSLey Foon Tan tx-fifo-depth = <4096>; 4653d5f7c5aSLey Foon Tan rx-fifo-depth = <16384>; 4663d5f7c5aSLey Foon Tan clocks = <&l4_mp_clk>; 4673d5f7c5aSLey Foon Tan clock-names = "stmmaceth"; 468da61e50fSMarek Vasut resets = <&rst EMAC1_RESET>, <&rst EMAC1_OCP_RESET>; 469da61e50fSMarek Vasut reset-names = "stmmaceth", "stmmaceth-ocp"; 470cc21ed62SMarek Vasut snps,axi-config = <&socfpga_axi_setup>; 4713d5f7c5aSLey Foon Tan status = "disabled"; 4723d5f7c5aSLey Foon Tan }; 4733d5f7c5aSLey Foon Tan 4743d5f7c5aSLey Foon Tan gmac2: ethernet@ff804000 { 4753d5f7c5aSLey Foon Tan compatible = "altr,socfpga-stmmac", "snps,dwmac-3.72a", "snps,dwmac"; 4763d5f7c5aSLey Foon Tan altr,sysmgr-syscon = <&sysmgr 0x4C 0>; 4773d5f7c5aSLey Foon Tan reg = <0xff804000 0x2000>; 4783d5f7c5aSLey Foon Tan interrupts = <0 94 IRQ_TYPE_LEVEL_HIGH>; 4793d5f7c5aSLey Foon Tan interrupt-names = "macirq"; 4803d5f7c5aSLey Foon Tan /* Filled in by bootloader */ 4813d5f7c5aSLey Foon Tan mac-address = [00 00 00 00 00 00]; 4823d5f7c5aSLey Foon Tan snps,multicast-filter-bins = <256>; 4833d5f7c5aSLey Foon Tan snps,perfect-filter-entries = <128>; 4843d5f7c5aSLey Foon Tan tx-fifo-depth = <4096>; 4853d5f7c5aSLey Foon Tan rx-fifo-depth = <16384>; 4863d5f7c5aSLey Foon Tan clocks = <&l4_mp_clk>; 4873d5f7c5aSLey Foon Tan clock-names = "stmmaceth"; 488da61e50fSMarek Vasut resets = <&rst EMAC2_RESET>, <&rst EMAC2_OCP_RESET>; 489da61e50fSMarek Vasut reset-names = "stmmaceth", "stmmaceth-ocp"; 490cc21ed62SMarek Vasut snps,axi-config = <&socfpga_axi_setup>; 4913d5f7c5aSLey Foon Tan status = "disabled"; 4923d5f7c5aSLey Foon Tan }; 4933d5f7c5aSLey Foon Tan 4943d5f7c5aSLey Foon Tan gpio0: gpio@ffc02900 { 4953d5f7c5aSLey Foon Tan #address-cells = <1>; 4963d5f7c5aSLey Foon Tan #size-cells = <0>; 4973d5f7c5aSLey Foon Tan compatible = "snps,dw-apb-gpio"; 4983d5f7c5aSLey Foon Tan reg = <0xffc02900 0x100>; 4993d5f7c5aSLey Foon Tan status = "disabled"; 5003d5f7c5aSLey Foon Tan 5013d5f7c5aSLey Foon Tan porta: gpio-controller@0 { 5023d5f7c5aSLey Foon Tan compatible = "snps,dw-apb-gpio-port"; 503cc21ed62SMarek Vasut bank-name = "porta"; 5043d5f7c5aSLey Foon Tan gpio-controller; 5053d5f7c5aSLey Foon Tan #gpio-cells = <2>; 5063d5f7c5aSLey Foon Tan snps,nr-gpios = <29>; 5073d5f7c5aSLey Foon Tan reg = <0>; 5083d5f7c5aSLey Foon Tan interrupt-controller; 5093d5f7c5aSLey Foon Tan #interrupt-cells = <2>; 5103d5f7c5aSLey Foon Tan interrupts = <0 112 IRQ_TYPE_LEVEL_HIGH>; 5113d5f7c5aSLey Foon Tan }; 5123d5f7c5aSLey Foon Tan }; 5133d5f7c5aSLey Foon Tan 5143d5f7c5aSLey Foon Tan gpio1: gpio@ffc02a00 { 5153d5f7c5aSLey Foon Tan #address-cells = <1>; 5163d5f7c5aSLey Foon Tan #size-cells = <0>; 5173d5f7c5aSLey Foon Tan compatible = "snps,dw-apb-gpio"; 5183d5f7c5aSLey Foon Tan reg = <0xffc02a00 0x100>; 5193d5f7c5aSLey Foon Tan status = "disabled"; 5203d5f7c5aSLey Foon Tan 5213d5f7c5aSLey Foon Tan portb: gpio-controller@0 { 5223d5f7c5aSLey Foon Tan compatible = "snps,dw-apb-gpio-port"; 523cc21ed62SMarek Vasut bank-name = "portb"; 5243d5f7c5aSLey Foon Tan gpio-controller; 5253d5f7c5aSLey Foon Tan #gpio-cells = <2>; 5263d5f7c5aSLey Foon Tan snps,nr-gpios = <29>; 5273d5f7c5aSLey Foon Tan reg = <0>; 5283d5f7c5aSLey Foon Tan interrupt-controller; 5293d5f7c5aSLey Foon Tan #interrupt-cells = <2>; 5303d5f7c5aSLey Foon Tan interrupts = <0 113 IRQ_TYPE_LEVEL_HIGH>; 5313d5f7c5aSLey Foon Tan }; 5323d5f7c5aSLey Foon Tan }; 5333d5f7c5aSLey Foon Tan 5343d5f7c5aSLey Foon Tan gpio2: gpio@ffc02b00 { 5353d5f7c5aSLey Foon Tan #address-cells = <1>; 5363d5f7c5aSLey Foon Tan #size-cells = <0>; 5373d5f7c5aSLey Foon Tan compatible = "snps,dw-apb-gpio"; 5383d5f7c5aSLey Foon Tan reg = <0xffc02b00 0x100>; 5393d5f7c5aSLey Foon Tan status = "disabled"; 5403d5f7c5aSLey Foon Tan 5413d5f7c5aSLey Foon Tan portc: gpio-controller@0 { 5423d5f7c5aSLey Foon Tan compatible = "snps,dw-apb-gpio-port"; 543cc21ed62SMarek Vasut bank-name = "portc"; 5443d5f7c5aSLey Foon Tan gpio-controller; 5453d5f7c5aSLey Foon Tan #gpio-cells = <2>; 5463d5f7c5aSLey Foon Tan snps,nr-gpios = <27>; 5473d5f7c5aSLey Foon Tan reg = <0>; 5483d5f7c5aSLey Foon Tan interrupt-controller; 5493d5f7c5aSLey Foon Tan #interrupt-cells = <2>; 5503d5f7c5aSLey Foon Tan interrupts = <0 114 IRQ_TYPE_LEVEL_HIGH>; 5513d5f7c5aSLey Foon Tan }; 5523d5f7c5aSLey Foon Tan }; 5533d5f7c5aSLey Foon Tan 5543d5f7c5aSLey Foon Tan fpga_mgr: fpga-mgr@ffd03000 { 5553d5f7c5aSLey Foon Tan compatible = "altr,socfpga-a10-fpga-mgr"; 5563d5f7c5aSLey Foon Tan reg = <0xffd03000 0x100 5573d5f7c5aSLey Foon Tan 0xffcfe400 0x20>; 5583d5f7c5aSLey Foon Tan clocks = <&l4_mp_clk>; 5593d5f7c5aSLey Foon Tan resets = <&rst FPGAMGR_RESET>; 5603d5f7c5aSLey Foon Tan reset-names = "fpgamgr"; 5613d5f7c5aSLey Foon Tan }; 5623d5f7c5aSLey Foon Tan 5633d5f7c5aSLey Foon Tan i2c0: i2c@ffc02200 { 5643d5f7c5aSLey Foon Tan #address-cells = <1>; 5653d5f7c5aSLey Foon Tan #size-cells = <0>; 5663d5f7c5aSLey Foon Tan compatible = "snps,designware-i2c"; 5673d5f7c5aSLey Foon Tan reg = <0xffc02200 0x100>; 5683d5f7c5aSLey Foon Tan interrupts = <0 105 IRQ_TYPE_LEVEL_HIGH>; 5693d5f7c5aSLey Foon Tan clocks = <&l4_sp_clk>; 5703d8685f1SMarek Vasut resets = <&rst I2C0_RESET>; 5713d8685f1SMarek Vasut reset-names = "i2c"; 5723d5f7c5aSLey Foon Tan status = "disabled"; 5733d5f7c5aSLey Foon Tan }; 5743d5f7c5aSLey Foon Tan 5753d5f7c5aSLey Foon Tan i2c1: i2c@ffc02300 { 5763d5f7c5aSLey Foon Tan #address-cells = <1>; 5773d5f7c5aSLey Foon Tan #size-cells = <0>; 5783d5f7c5aSLey Foon Tan compatible = "snps,designware-i2c"; 5793d5f7c5aSLey Foon Tan reg = <0xffc02300 0x100>; 5803d5f7c5aSLey Foon Tan interrupts = <0 106 IRQ_TYPE_LEVEL_HIGH>; 5813d5f7c5aSLey Foon Tan clocks = <&l4_sp_clk>; 5823d8685f1SMarek Vasut resets = <&rst I2C1_RESET>; 5833d8685f1SMarek Vasut reset-names = "i2c"; 5843d5f7c5aSLey Foon Tan status = "disabled"; 5853d5f7c5aSLey Foon Tan }; 5863d5f7c5aSLey Foon Tan 5873d5f7c5aSLey Foon Tan i2c2: i2c@ffc02400 { 5883d5f7c5aSLey Foon Tan #address-cells = <1>; 5893d5f7c5aSLey Foon Tan #size-cells = <0>; 5903d5f7c5aSLey Foon Tan compatible = "snps,designware-i2c"; 5913d5f7c5aSLey Foon Tan reg = <0xffc02400 0x100>; 5923d5f7c5aSLey Foon Tan interrupts = <0 107 IRQ_TYPE_LEVEL_HIGH>; 5933d5f7c5aSLey Foon Tan clocks = <&l4_sp_clk>; 5943d8685f1SMarek Vasut resets = <&rst I2C2_RESET>; 5953d8685f1SMarek Vasut reset-names = "i2c"; 5963d5f7c5aSLey Foon Tan status = "disabled"; 5973d5f7c5aSLey Foon Tan }; 5983d5f7c5aSLey Foon Tan 5993d5f7c5aSLey Foon Tan i2c3: i2c@ffc02500 { 6003d5f7c5aSLey Foon Tan #address-cells = <1>; 6013d5f7c5aSLey Foon Tan #size-cells = <0>; 6023d5f7c5aSLey Foon Tan compatible = "snps,designware-i2c"; 6033d5f7c5aSLey Foon Tan reg = <0xffc02500 0x100>; 6043d5f7c5aSLey Foon Tan interrupts = <0 108 IRQ_TYPE_LEVEL_HIGH>; 6053d5f7c5aSLey Foon Tan clocks = <&l4_sp_clk>; 6063d8685f1SMarek Vasut resets = <&rst I2C3_RESET>; 6073d8685f1SMarek Vasut reset-names = "i2c"; 6083d5f7c5aSLey Foon Tan status = "disabled"; 6093d5f7c5aSLey Foon Tan }; 6103d5f7c5aSLey Foon Tan 6113d5f7c5aSLey Foon Tan i2c4: i2c@ffc02600 { 6123d5f7c5aSLey Foon Tan #address-cells = <1>; 6133d5f7c5aSLey Foon Tan #size-cells = <0>; 6143d5f7c5aSLey Foon Tan compatible = "snps,designware-i2c"; 6153d5f7c5aSLey Foon Tan reg = <0xffc02600 0x100>; 6163d5f7c5aSLey Foon Tan interrupts = <0 109 IRQ_TYPE_LEVEL_HIGH>; 6173d5f7c5aSLey Foon Tan clocks = <&l4_sp_clk>; 6183d8685f1SMarek Vasut resets = <&rst I2C4_RESET>; 6193d8685f1SMarek Vasut reset-names = "i2c"; 6203d5f7c5aSLey Foon Tan status = "disabled"; 6213d5f7c5aSLey Foon Tan }; 6223d5f7c5aSLey Foon Tan 623cc21ed62SMarek Vasut spi1: spi@ffda5000 { 6243d5f7c5aSLey Foon Tan compatible = "snps,dw-apb-ssi"; 6253d5f7c5aSLey Foon Tan #address-cells = <1>; 6263d5f7c5aSLey Foon Tan #size-cells = <0>; 627cc21ed62SMarek Vasut reg = <0xffda5000 0x100>; 628cc21ed62SMarek Vasut interrupts = <0 102 4>; 6293d5f7c5aSLey Foon Tan num-chipselect = <4>; 6303d5f7c5aSLey Foon Tan bus-num = <0>; 631cc21ed62SMarek Vasut /*32bit_access;*/ 6323d5f7c5aSLey Foon Tan tx-dma-channel = <&pdma 16>; 6333d5f7c5aSLey Foon Tan rx-dma-channel = <&pdma 17>; 6343d5f7c5aSLey Foon Tan clocks = <&spi_m_clk>; 6353d5f7c5aSLey Foon Tan status = "disabled"; 6363d5f7c5aSLey Foon Tan }; 6373d5f7c5aSLey Foon Tan 638cc21ed62SMarek Vasut sdr: sdr@ffc25000 { 639cc21ed62SMarek Vasut compatible = "altr,sdr-ctl", "syscon"; 640cc21ed62SMarek Vasut reg = <0xffcfb100 0x80>; 6413d5f7c5aSLey Foon Tan }; 6423d5f7c5aSLey Foon Tan 6433d5f7c5aSLey Foon Tan L2: l2-cache@fffff000 { 6443d5f7c5aSLey Foon Tan compatible = "arm,pl310-cache"; 6453d5f7c5aSLey Foon Tan reg = <0xfffff000 0x1000>; 6463d5f7c5aSLey Foon Tan interrupts = <0 18 IRQ_TYPE_LEVEL_HIGH>; 6473d5f7c5aSLey Foon Tan cache-unified; 6483d5f7c5aSLey Foon Tan cache-level = <2>; 649cc21ed62SMarek Vasut prefetch-data = <1>; 650cc21ed62SMarek Vasut prefetch-instr = <1>; 651cc21ed62SMarek Vasut arm,shared-override; 6523d5f7c5aSLey Foon Tan }; 6533d5f7c5aSLey Foon Tan 6543d5f7c5aSLey Foon Tan mmc: dwmmc0@ff808000 { 6553d5f7c5aSLey Foon Tan #address-cells = <1>; 6563d5f7c5aSLey Foon Tan #size-cells = <0>; 6573d5f7c5aSLey Foon Tan compatible = "altr,socfpga-dw-mshc"; 6583d5f7c5aSLey Foon Tan reg = <0xff808000 0x1000>; 6593d5f7c5aSLey Foon Tan interrupts = <0 98 IRQ_TYPE_LEVEL_HIGH>; 6603d5f7c5aSLey Foon Tan fifo-depth = <0x400>; 6613d5f7c5aSLey Foon Tan clocks = <&l4_mp_clk>, <&sdmmc_clk>; 6623d5f7c5aSLey Foon Tan clock-names = "biu", "ciu"; 663*70cae470STien Fong Chee resets = <&rst SDMMC_RESET>; 6643d5f7c5aSLey Foon Tan status = "disabled"; 6653d5f7c5aSLey Foon Tan }; 6663d5f7c5aSLey Foon Tan 667cc21ed62SMarek Vasut nand: nand@ffb90000 { 668cc21ed62SMarek Vasut #address-cells = <1>; 669cc21ed62SMarek Vasut #size-cells = <1>; 670cc21ed62SMarek Vasut compatible = "denali,denali-nand-dt", "altr,socfpga-denali-nand"; 67164eeb158SMarek Vasut reg = <0xffb90000 0x20>, 67264eeb158SMarek Vasut <0xffb80000 0x1000>; 673cc21ed62SMarek Vasut reg-names = "nand_data", "denali_reg"; 674cc21ed62SMarek Vasut interrupts = <0 99 4>; 675cc21ed62SMarek Vasut dma-mask = <0xffffffff>; 676cc21ed62SMarek Vasut clocks = <&nand_clk>; 677a029f540SMarek Vasut resets = <&rst NAND_RESET>; 678cc21ed62SMarek Vasut status = "disabled"; 679cc21ed62SMarek Vasut }; 680cc21ed62SMarek Vasut 6813d5f7c5aSLey Foon Tan ocram: sram@ffe00000 { 6823d5f7c5aSLey Foon Tan compatible = "mmio-sram"; 6833d5f7c5aSLey Foon Tan reg = <0xffe00000 0x40000>; 6843d5f7c5aSLey Foon Tan }; 6853d5f7c5aSLey Foon Tan 686cc21ed62SMarek Vasut eccmgr: eccmgr { 6873d5f7c5aSLey Foon Tan compatible = "altr,socfpga-a10-ecc-manager"; 6883d5f7c5aSLey Foon Tan altr,sysmgr-syscon = <&sysmgr>; 6893d5f7c5aSLey Foon Tan #address-cells = <1>; 6903d5f7c5aSLey Foon Tan #size-cells = <1>; 6913d5f7c5aSLey Foon Tan interrupts = <0 2 IRQ_TYPE_LEVEL_HIGH>, 6923d5f7c5aSLey Foon Tan <0 0 IRQ_TYPE_LEVEL_HIGH>; 6933d5f7c5aSLey Foon Tan interrupt-controller; 6943d5f7c5aSLey Foon Tan #interrupt-cells = <2>; 6953d5f7c5aSLey Foon Tan ranges; 6963d5f7c5aSLey Foon Tan 6973d5f7c5aSLey Foon Tan sdramedac { 6983d5f7c5aSLey Foon Tan compatible = "altr,sdram-edac-a10"; 6993d5f7c5aSLey Foon Tan altr,sdr-syscon = <&sdr>; 7003d5f7c5aSLey Foon Tan interrupts = <17 IRQ_TYPE_LEVEL_HIGH>, 7013d5f7c5aSLey Foon Tan <49 IRQ_TYPE_LEVEL_HIGH>; 7023d5f7c5aSLey Foon Tan }; 7033d5f7c5aSLey Foon Tan 7043d5f7c5aSLey Foon Tan l2-ecc@ffd06010 { 7053d5f7c5aSLey Foon Tan compatible = "altr,socfpga-a10-l2-ecc"; 7063d5f7c5aSLey Foon Tan reg = <0xffd06010 0x4>; 7073d5f7c5aSLey Foon Tan interrupts = <0 IRQ_TYPE_LEVEL_HIGH>, 7083d5f7c5aSLey Foon Tan <32 IRQ_TYPE_LEVEL_HIGH>; 7093d5f7c5aSLey Foon Tan }; 7103d5f7c5aSLey Foon Tan 7113d5f7c5aSLey Foon Tan ocram-ecc@ff8c3000 { 7123d5f7c5aSLey Foon Tan compatible = "altr,socfpga-a10-ocram-ecc"; 7133d5f7c5aSLey Foon Tan reg = <0xff8c3000 0x400>; 7143d5f7c5aSLey Foon Tan interrupts = <1 IRQ_TYPE_LEVEL_HIGH>, 7153d5f7c5aSLey Foon Tan <33 IRQ_TYPE_LEVEL_HIGH>; 7163d5f7c5aSLey Foon Tan }; 7173d5f7c5aSLey Foon Tan 7183d5f7c5aSLey Foon Tan emac0-rx-ecc@ff8c0800 { 7193d5f7c5aSLey Foon Tan compatible = "altr,socfpga-eth-mac-ecc"; 7203d5f7c5aSLey Foon Tan reg = <0xff8c0800 0x400>; 7213d5f7c5aSLey Foon Tan altr,ecc-parent = <&gmac0>; 7223d5f7c5aSLey Foon Tan interrupts = <4 IRQ_TYPE_LEVEL_HIGH>, 7233d5f7c5aSLey Foon Tan <36 IRQ_TYPE_LEVEL_HIGH>; 7243d5f7c5aSLey Foon Tan }; 7253d5f7c5aSLey Foon Tan 7263d5f7c5aSLey Foon Tan emac0-tx-ecc@ff8c0c00 { 7273d5f7c5aSLey Foon Tan compatible = "altr,socfpga-eth-mac-ecc"; 7283d5f7c5aSLey Foon Tan reg = <0xff8c0c00 0x400>; 7293d5f7c5aSLey Foon Tan altr,ecc-parent = <&gmac0>; 7303d5f7c5aSLey Foon Tan interrupts = <5 IRQ_TYPE_LEVEL_HIGH>, 7313d5f7c5aSLey Foon Tan <37 IRQ_TYPE_LEVEL_HIGH>; 7323d5f7c5aSLey Foon Tan }; 7333d5f7c5aSLey Foon Tan 7343d5f7c5aSLey Foon Tan dma-ecc@ff8c8000 { 7353d5f7c5aSLey Foon Tan compatible = "altr,socfpga-dma-ecc"; 7363d5f7c5aSLey Foon Tan reg = <0xff8c8000 0x400>; 7373d5f7c5aSLey Foon Tan altr,ecc-parent = <&pdma>; 7383d5f7c5aSLey Foon Tan interrupts = <10 IRQ_TYPE_LEVEL_HIGH>, 7393d5f7c5aSLey Foon Tan <42 IRQ_TYPE_LEVEL_HIGH>; 7403d5f7c5aSLey Foon Tan }; 7413d5f7c5aSLey Foon Tan 7423d5f7c5aSLey Foon Tan usb0-ecc@ff8c8800 { 7433d5f7c5aSLey Foon Tan compatible = "altr,socfpga-usb-ecc"; 7443d5f7c5aSLey Foon Tan reg = <0xff8c8800 0x400>; 7453d5f7c5aSLey Foon Tan altr,ecc-parent = <&usb0>; 7463d5f7c5aSLey Foon Tan interrupts = <2 IRQ_TYPE_LEVEL_HIGH>, 7473d5f7c5aSLey Foon Tan <34 IRQ_TYPE_LEVEL_HIGH>; 7483d5f7c5aSLey Foon Tan }; 7493d5f7c5aSLey Foon Tan }; 7503d5f7c5aSLey Foon Tan 751cc21ed62SMarek Vasut qspi: spi@ff809000 { 7522a3a9993SSimon Goldschmidt compatible = "cdns,qspi-nor"; 7533d5f7c5aSLey Foon Tan #address-cells = <1>; 7543d5f7c5aSLey Foon Tan #size-cells = <0>; 7553d5f7c5aSLey Foon Tan reg = <0xff809000 0x100>, 7563d5f7c5aSLey Foon Tan <0xffa00000 0x100000>; 7573d5f7c5aSLey Foon Tan interrupts = <0 100 IRQ_TYPE_LEVEL_HIGH>; 7586e62b178SJason Rush cdns,fifo-depth = <128>; 7596e62b178SJason Rush cdns,fifo-width = <4>; 760cc21ed62SMarek Vasut cdns,trigger-address = <0x00000000>; 761cc21ed62SMarek Vasut clocks = <&qspi_clk>; 7623d5f7c5aSLey Foon Tan status = "disabled"; 7633d5f7c5aSLey Foon Tan }; 7643d5f7c5aSLey Foon Tan 7653d5f7c5aSLey Foon Tan rst: rstmgr@ffd05000 { 7663d5f7c5aSLey Foon Tan #reset-cells = <1>; 7673d5f7c5aSLey Foon Tan compatible = "altr,rst-mgr"; 7683d5f7c5aSLey Foon Tan reg = <0xffd05000 0x100>; 7693d5f7c5aSLey Foon Tan altr,modrst-offset = <0x20>; 7706f96ed7eSMarek Vasut u-boot,dm-pre-reloc; 7713d5f7c5aSLey Foon Tan }; 7723d5f7c5aSLey Foon Tan 7733d5f7c5aSLey Foon Tan scu: snoop-control-unit@ffffc000 { 7743d5f7c5aSLey Foon Tan compatible = "arm,cortex-a9-scu"; 7753d5f7c5aSLey Foon Tan reg = <0xffffc000 0x100>; 7763d5f7c5aSLey Foon Tan }; 7773d5f7c5aSLey Foon Tan 7783d5f7c5aSLey Foon Tan sysmgr: sysmgr@ffd06000 { 7793d5f7c5aSLey Foon Tan compatible = "altr,sys-mgr", "syscon"; 7803d5f7c5aSLey Foon Tan reg = <0xffd06000 0x300>; 7813d5f7c5aSLey Foon Tan cpu1-start-addr = <0xffd06230>; 7823d5f7c5aSLey Foon Tan }; 7833d5f7c5aSLey Foon Tan 7843d5f7c5aSLey Foon Tan /* Local timer */ 7853d5f7c5aSLey Foon Tan timer@ffffc600 { 7863d5f7c5aSLey Foon Tan compatible = "arm,cortex-a9-twd-timer"; 7873d5f7c5aSLey Foon Tan reg = <0xffffc600 0x100>; 7883d5f7c5aSLey Foon Tan interrupts = <1 13 0xf04>; 7893d5f7c5aSLey Foon Tan clocks = <&mpu_periph_clk>; 7903d5f7c5aSLey Foon Tan }; 7913d5f7c5aSLey Foon Tan 7923d5f7c5aSLey Foon Tan timer0: timer0@ffc02700 { 7933d5f7c5aSLey Foon Tan compatible = "snps,dw-apb-timer"; 7943d5f7c5aSLey Foon Tan interrupts = <0 115 IRQ_TYPE_LEVEL_HIGH>; 7953d5f7c5aSLey Foon Tan reg = <0xffc02700 0x100>; 7963d5f7c5aSLey Foon Tan clocks = <&l4_sp_clk>; 7973d5f7c5aSLey Foon Tan clock-names = "timer"; 7983d5f7c5aSLey Foon Tan }; 7993d5f7c5aSLey Foon Tan 8003d5f7c5aSLey Foon Tan timer1: timer1@ffc02800 { 8013d5f7c5aSLey Foon Tan compatible = "snps,dw-apb-timer"; 8023d5f7c5aSLey Foon Tan interrupts = <0 116 IRQ_TYPE_LEVEL_HIGH>; 8033d5f7c5aSLey Foon Tan reg = <0xffc02800 0x100>; 8043d5f7c5aSLey Foon Tan clocks = <&l4_sp_clk>; 8053d5f7c5aSLey Foon Tan clock-names = "timer"; 8063d5f7c5aSLey Foon Tan }; 8073d5f7c5aSLey Foon Tan 8083d5f7c5aSLey Foon Tan timer2: timer2@ffd00000 { 8093d5f7c5aSLey Foon Tan compatible = "snps,dw-apb-timer"; 8103d5f7c5aSLey Foon Tan interrupts = <0 117 IRQ_TYPE_LEVEL_HIGH>; 8113d5f7c5aSLey Foon Tan reg = <0xffd00000 0x100>; 8123d5f7c5aSLey Foon Tan clocks = <&l4_sys_free_clk>; 8133d5f7c5aSLey Foon Tan clock-names = "timer"; 814cca9af63SMarek Vasut u-boot,dm-pre-reloc; 8153d5f7c5aSLey Foon Tan }; 8163d5f7c5aSLey Foon Tan 8173d5f7c5aSLey Foon Tan timer3: timer3@ffd00100 { 8183d5f7c5aSLey Foon Tan compatible = "snps,dw-apb-timer"; 8193d5f7c5aSLey Foon Tan interrupts = <0 118 IRQ_TYPE_LEVEL_HIGH>; 8203d5f7c5aSLey Foon Tan reg = <0xffd01000 0x100>; 8213d5f7c5aSLey Foon Tan clocks = <&l4_sys_free_clk>; 8223d5f7c5aSLey Foon Tan clock-names = "timer"; 8233d5f7c5aSLey Foon Tan }; 8243d5f7c5aSLey Foon Tan 8253d5f7c5aSLey Foon Tan uart0: serial0@ffc02000 { 8263d5f7c5aSLey Foon Tan compatible = "snps,dw-apb-uart"; 8273d5f7c5aSLey Foon Tan reg = <0xffc02000 0x100>; 8283d5f7c5aSLey Foon Tan interrupts = <0 110 IRQ_TYPE_LEVEL_HIGH>; 8293d5f7c5aSLey Foon Tan reg-shift = <2>; 8303d5f7c5aSLey Foon Tan reg-io-width = <4>; 8313d5f7c5aSLey Foon Tan clocks = <&l4_sp_clk>; 832f5775e69SMarek Vasut resets = <&rst UART0_RESET>; 8333d5f7c5aSLey Foon Tan status = "disabled"; 8343d5f7c5aSLey Foon Tan }; 8353d5f7c5aSLey Foon Tan 8363d5f7c5aSLey Foon Tan uart1: serial1@ffc02100 { 8373d5f7c5aSLey Foon Tan compatible = "snps,dw-apb-uart"; 8383d5f7c5aSLey Foon Tan reg = <0xffc02100 0x100>; 8393d5f7c5aSLey Foon Tan interrupts = <0 111 IRQ_TYPE_LEVEL_HIGH>; 8403d5f7c5aSLey Foon Tan reg-shift = <2>; 8413d5f7c5aSLey Foon Tan reg-io-width = <4>; 8423d5f7c5aSLey Foon Tan clocks = <&l4_sp_clk>; 843f5775e69SMarek Vasut resets = <&rst UART1_RESET>; 8443d5f7c5aSLey Foon Tan status = "disabled"; 8453d5f7c5aSLey Foon Tan }; 8463d5f7c5aSLey Foon Tan 847cc21ed62SMarek Vasut usbphy0: usbphy { 8483d5f7c5aSLey Foon Tan #phy-cells = <0>; 8493d5f7c5aSLey Foon Tan compatible = "usb-nop-xceiv"; 8503d5f7c5aSLey Foon Tan status = "okay"; 8513d5f7c5aSLey Foon Tan }; 8523d5f7c5aSLey Foon Tan 8533d5f7c5aSLey Foon Tan usb0: usb@ffb00000 { 8543d5f7c5aSLey Foon Tan compatible = "snps,dwc2"; 8553d5f7c5aSLey Foon Tan reg = <0xffb00000 0xffff>; 8563d5f7c5aSLey Foon Tan interrupts = <0 95 IRQ_TYPE_LEVEL_HIGH>; 8573d5f7c5aSLey Foon Tan clocks = <&usb_clk>; 8583d5f7c5aSLey Foon Tan clock-names = "otg"; 8593d5f7c5aSLey Foon Tan resets = <&rst USB0_RESET>; 8603d5f7c5aSLey Foon Tan reset-names = "dwc2"; 8613d5f7c5aSLey Foon Tan phys = <&usbphy0>; 8623d5f7c5aSLey Foon Tan phy-names = "usb2-phy"; 8633d5f7c5aSLey Foon Tan status = "disabled"; 8643d5f7c5aSLey Foon Tan }; 8653d5f7c5aSLey Foon Tan 8663d5f7c5aSLey Foon Tan usb1: usb@ffb40000 { 8673d5f7c5aSLey Foon Tan compatible = "snps,dwc2"; 8683d5f7c5aSLey Foon Tan reg = <0xffb40000 0xffff>; 8693d5f7c5aSLey Foon Tan interrupts = <0 96 IRQ_TYPE_LEVEL_HIGH>; 8703d5f7c5aSLey Foon Tan clocks = <&usb_clk>; 8713d5f7c5aSLey Foon Tan clock-names = "otg"; 8723d5f7c5aSLey Foon Tan resets = <&rst USB1_RESET>; 8733d5f7c5aSLey Foon Tan reset-names = "dwc2"; 8743d5f7c5aSLey Foon Tan phys = <&usbphy0>; 8753d5f7c5aSLey Foon Tan phy-names = "usb2-phy"; 8763d5f7c5aSLey Foon Tan status = "disabled"; 8773d5f7c5aSLey Foon Tan }; 8783d5f7c5aSLey Foon Tan 8793d5f7c5aSLey Foon Tan watchdog0: watchdog@ffd00200 { 8803d5f7c5aSLey Foon Tan compatible = "snps,dw-wdt"; 8813d5f7c5aSLey Foon Tan reg = <0xffd00200 0x100>; 8823d5f7c5aSLey Foon Tan interrupts = <0 119 IRQ_TYPE_LEVEL_HIGH>; 8833d5f7c5aSLey Foon Tan clocks = <&l4_sys_free_clk>; 8843d5f7c5aSLey Foon Tan status = "disabled"; 8853d5f7c5aSLey Foon Tan }; 8863d5f7c5aSLey Foon Tan 8873d5f7c5aSLey Foon Tan watchdog1: watchdog@ffd00300 { 8883d5f7c5aSLey Foon Tan compatible = "snps,dw-wdt"; 8893d5f7c5aSLey Foon Tan reg = <0xffd00300 0x100>; 8903d5f7c5aSLey Foon Tan interrupts = <0 120 IRQ_TYPE_LEVEL_HIGH>; 8913d5f7c5aSLey Foon Tan clocks = <&l4_sys_free_clk>; 8923d5f7c5aSLey Foon Tan status = "disabled"; 8933d5f7c5aSLey Foon Tan }; 8943d5f7c5aSLey Foon Tan }; 8953d5f7c5aSLey Foon Tan}; 896