19952f691SThomas Gleixner// SPDX-License-Identifier: GPL-2.0-only 278cd6a9dSDinh Nguyen/* 378cd6a9dSDinh Nguyen * Copyright Altera Corporation (C) 2015. All rights reserved. 478cd6a9dSDinh Nguyen */ 578cd6a9dSDinh Nguyen 678cd6a9dSDinh Nguyen/dts-v1/; 7e519922eSDinh Nguyen#include <dt-bindings/reset/altr,rst-mgr-s10.h> 85a0e622eSAlan Tull#include <dt-bindings/gpio/gpio.h> 9d93101abSDinh Nguyen#include <dt-bindings/clock/stratix10-clock.h> 1078cd6a9dSDinh Nguyen 1178cd6a9dSDinh Nguyen/ { 1278cd6a9dSDinh Nguyen compatible = "altr,socfpga-stratix10"; 1378cd6a9dSDinh Nguyen #address-cells = <2>; 1478cd6a9dSDinh Nguyen #size-cells = <2>; 1578cd6a9dSDinh Nguyen 16adb9e354SRichard Gong reserved-memory { 17adb9e354SRichard Gong #address-cells = <2>; 18adb9e354SRichard Gong #size-cells = <2>; 19adb9e354SRichard Gong ranges; 20adb9e354SRichard Gong 21adb9e354SRichard Gong service_reserved: svcbuffer@0 { 22adb9e354SRichard Gong compatible = "shared-dma-pool"; 23adb9e354SRichard Gong reg = <0x0 0x0 0x0 0x1000000>; 24adb9e354SRichard Gong alignment = <0x1000>; 25adb9e354SRichard Gong no-map; 26adb9e354SRichard Gong }; 27adb9e354SRichard Gong }; 28adb9e354SRichard Gong 2978cd6a9dSDinh Nguyen cpus { 3078cd6a9dSDinh Nguyen #address-cells = <1>; 3178cd6a9dSDinh Nguyen #size-cells = <0>; 3278cd6a9dSDinh Nguyen 3378cd6a9dSDinh Nguyen cpu0: cpu@0 { 3431af04cdSRob Herring compatible = "arm,cortex-a53"; 3578cd6a9dSDinh Nguyen device_type = "cpu"; 3678cd6a9dSDinh Nguyen enable-method = "psci"; 3778cd6a9dSDinh Nguyen reg = <0x0>; 3878cd6a9dSDinh Nguyen }; 3978cd6a9dSDinh Nguyen 4078cd6a9dSDinh Nguyen cpu1: cpu@1 { 4131af04cdSRob Herring compatible = "arm,cortex-a53"; 4278cd6a9dSDinh Nguyen device_type = "cpu"; 4378cd6a9dSDinh Nguyen enable-method = "psci"; 4478cd6a9dSDinh Nguyen reg = <0x1>; 4578cd6a9dSDinh Nguyen }; 4678cd6a9dSDinh Nguyen 4778cd6a9dSDinh Nguyen cpu2: cpu@2 { 4831af04cdSRob Herring compatible = "arm,cortex-a53"; 4978cd6a9dSDinh Nguyen device_type = "cpu"; 5078cd6a9dSDinh Nguyen enable-method = "psci"; 5178cd6a9dSDinh Nguyen reg = <0x2>; 5278cd6a9dSDinh Nguyen }; 5378cd6a9dSDinh Nguyen 5478cd6a9dSDinh Nguyen cpu3: cpu@3 { 5531af04cdSRob Herring compatible = "arm,cortex-a53"; 5678cd6a9dSDinh Nguyen device_type = "cpu"; 5778cd6a9dSDinh Nguyen enable-method = "psci"; 5878cd6a9dSDinh Nguyen reg = <0x3>; 5978cd6a9dSDinh Nguyen }; 6078cd6a9dSDinh Nguyen }; 6178cd6a9dSDinh Nguyen 6278cd6a9dSDinh Nguyen pmu { 6378cd6a9dSDinh Nguyen compatible = "arm,armv8-pmuv3"; 64210de0e9SDinh Nguyen interrupts = <0 170 4>, 65210de0e9SDinh Nguyen <0 171 4>, 66210de0e9SDinh Nguyen <0 172 4>, 67210de0e9SDinh Nguyen <0 173 4>; 6878cd6a9dSDinh Nguyen interrupt-affinity = <&cpu0>, 6978cd6a9dSDinh Nguyen <&cpu1>, 7078cd6a9dSDinh Nguyen <&cpu2>, 7178cd6a9dSDinh Nguyen <&cpu3>; 7269c4d8edSArnd Bergmann interrupt-parent = <&intc>; 7378cd6a9dSDinh Nguyen }; 7478cd6a9dSDinh Nguyen 7578cd6a9dSDinh Nguyen psci { 7678cd6a9dSDinh Nguyen compatible = "arm,psci-0.2"; 7778cd6a9dSDinh Nguyen method = "smc"; 7878cd6a9dSDinh Nguyen }; 7978cd6a9dSDinh Nguyen 8079f1db27SKrzysztof Kozlowski /* Local timer */ 8179f1db27SKrzysztof Kozlowski timer { 8279f1db27SKrzysztof Kozlowski compatible = "arm,armv8-timer"; 8379f1db27SKrzysztof Kozlowski interrupts = <1 13 0xf08>, 8479f1db27SKrzysztof Kozlowski <1 14 0xf08>, 8579f1db27SKrzysztof Kozlowski <1 11 0xf08>, 8679f1db27SKrzysztof Kozlowski <1 10 0xf08>; 8779f1db27SKrzysztof Kozlowski interrupt-parent = <&intc>; 8879f1db27SKrzysztof Kozlowski }; 8979f1db27SKrzysztof Kozlowski 90681a5c71SKrzysztof Kozlowski intc: interrupt-controller@fffc1000 { 9178cd6a9dSDinh Nguyen compatible = "arm,gic-400", "arm,cortex-a15-gic"; 9278cd6a9dSDinh Nguyen #interrupt-cells = <3>; 9378cd6a9dSDinh Nguyen interrupt-controller; 94f973bfa0SDinh Nguyen reg = <0x0 0xfffc1000 0x0 0x1000>, 95f973bfa0SDinh Nguyen <0x0 0xfffc2000 0x0 0x2000>, 96f973bfa0SDinh Nguyen <0x0 0xfffc4000 0x0 0x2000>, 97f973bfa0SDinh Nguyen <0x0 0xfffc6000 0x0 0x2000>; 9878cd6a9dSDinh Nguyen }; 9978cd6a9dSDinh Nguyen 100d93101abSDinh Nguyen clocks { 101d93101abSDinh Nguyen cb_intosc_hs_div2_clk: cb-intosc-hs-div2-clk { 102d93101abSDinh Nguyen #clock-cells = <0>; 103d93101abSDinh Nguyen compatible = "fixed-clock"; 104d93101abSDinh Nguyen }; 105d93101abSDinh Nguyen 106d93101abSDinh Nguyen cb_intosc_ls_clk: cb-intosc-ls-clk { 107d93101abSDinh Nguyen #clock-cells = <0>; 108d93101abSDinh Nguyen compatible = "fixed-clock"; 109d93101abSDinh Nguyen }; 110d93101abSDinh Nguyen 111d93101abSDinh Nguyen f2s_free_clk: f2s-free-clk { 112d93101abSDinh Nguyen #clock-cells = <0>; 113d93101abSDinh Nguyen compatible = "fixed-clock"; 114d93101abSDinh Nguyen }; 115d93101abSDinh Nguyen 116d93101abSDinh Nguyen osc1: osc1 { 117d93101abSDinh Nguyen #clock-cells = <0>; 118d93101abSDinh Nguyen compatible = "fixed-clock"; 119d93101abSDinh Nguyen }; 1200cb140d0SThor Thayer 1210cb140d0SThor Thayer qspi_clk: qspi-clk { 1220cb140d0SThor Thayer #clock-cells = <0>; 1230cb140d0SThor Thayer compatible = "fixed-clock"; 1240cb140d0SThor Thayer clock-frequency = <200000000>; 1250cb140d0SThor Thayer }; 12678cd6a9dSDinh Nguyen }; 12778cd6a9dSDinh Nguyen 128357513c0SNiravkumar L Rabara soc { 129357513c0SNiravkumar L Rabara #address-cells = <1>; 130357513c0SNiravkumar L Rabara #size-cells = <1>; 131357513c0SNiravkumar L Rabara compatible = "simple-bus"; 132357513c0SNiravkumar L Rabara device_type = "soc"; 133357513c0SNiravkumar L Rabara interrupt-parent = <&intc>; 134357513c0SNiravkumar L Rabara ranges = <0 0 0 0xffffffff>; 135357513c0SNiravkumar L Rabara 136357513c0SNiravkumar L Rabara base_fpga_region { 1372f8ba037SDinh Nguyen #address-cells = <0x2>; 1382f8ba037SDinh Nguyen #size-cells = <0x2>; 139357513c0SNiravkumar L Rabara compatible = "fpga-region"; 140357513c0SNiravkumar L Rabara fpga-mgr = <&fpga_mgr>; 141357513c0SNiravkumar L Rabara }; 142357513c0SNiravkumar L Rabara 143357513c0SNiravkumar L Rabara clkmgr: clock-controller@ffd10000 { 144357513c0SNiravkumar L Rabara compatible = "intel,stratix10-clkmgr"; 145357513c0SNiravkumar L Rabara reg = <0xffd10000 0x1000>; 146357513c0SNiravkumar L Rabara #clock-cells = <1>; 147357513c0SNiravkumar L Rabara }; 148357513c0SNiravkumar L Rabara 14978cd6a9dSDinh Nguyen gmac0: ethernet@ff800000 { 1509aa0cae1SDinh Nguyen compatible = "altr,socfpga-stmmac-a10-s10", "snps,dwmac-3.74a", "snps,dwmac"; 15178cd6a9dSDinh Nguyen reg = <0xff800000 0x2000>; 15278cd6a9dSDinh Nguyen interrupts = <0 90 4>; 15378cd6a9dSDinh Nguyen interrupt-names = "macirq"; 15478cd6a9dSDinh Nguyen mac-address = [00 00 00 00 00 00]; 15505690e8aSDinh Nguyen resets = <&rst EMAC0_RESET>, <&rst EMAC0_OCP_RESET>; 156*331085a4SDinh Nguyen reset-names = "stmmaceth", "ahb"; 1576e043c65SDinh Nguyen clocks = <&clkmgr STRATIX10_EMAC0_CLK>, <&clkmgr STRATIX10_EMAC_PTP_CLK>; 1586e043c65SDinh Nguyen clock-names = "stmmaceth", "ptp_ref"; 159a27460c9SThor Thayer tx-fifo-depth = <16384>; 160a27460c9SThor Thayer rx-fifo-depth = <16384>; 161fd5ba6eeSAaro Koskinen snps,multicast-filter-bins = <256>; 162ae3f46c8SThor Thayer iommus = <&smmu 1>; 1638efd6365SDinh Nguyen altr,sysmgr-syscon = <&sysmgr 0x44 0>; 16478cd6a9dSDinh Nguyen status = "disabled"; 16578cd6a9dSDinh Nguyen }; 16678cd6a9dSDinh Nguyen 16778cd6a9dSDinh Nguyen gmac1: ethernet@ff802000 { 1689aa0cae1SDinh Nguyen compatible = "altr,socfpga-stmmac-a10-s10", "snps,dwmac-3.74a", "snps,dwmac"; 16978cd6a9dSDinh Nguyen reg = <0xff802000 0x2000>; 17078cd6a9dSDinh Nguyen interrupts = <0 91 4>; 17178cd6a9dSDinh Nguyen interrupt-names = "macirq"; 17278cd6a9dSDinh Nguyen mac-address = [00 00 00 00 00 00]; 17305690e8aSDinh Nguyen resets = <&rst EMAC1_RESET>, <&rst EMAC1_OCP_RESET>; 174*331085a4SDinh Nguyen reset-names = "stmmaceth", "ahb"; 1756e043c65SDinh Nguyen clocks = <&clkmgr STRATIX10_EMAC1_CLK>, <&clkmgr STRATIX10_EMAC_PTP_CLK>; 1766e043c65SDinh Nguyen clock-names = "stmmaceth", "ptp_ref"; 177a27460c9SThor Thayer tx-fifo-depth = <16384>; 178a27460c9SThor Thayer rx-fifo-depth = <16384>; 179fd5ba6eeSAaro Koskinen snps,multicast-filter-bins = <256>; 180ae3f46c8SThor Thayer iommus = <&smmu 2>; 1819aa0cae1SDinh Nguyen altr,sysmgr-syscon = <&sysmgr 0x48 8>; 18278cd6a9dSDinh Nguyen status = "disabled"; 18378cd6a9dSDinh Nguyen }; 18478cd6a9dSDinh Nguyen 18578cd6a9dSDinh Nguyen gmac2: ethernet@ff804000 { 1869aa0cae1SDinh Nguyen compatible = "altr,socfpga-stmmac-a10-s10", "snps,dwmac-3.74a", "snps,dwmac"; 18778cd6a9dSDinh Nguyen reg = <0xff804000 0x2000>; 18878cd6a9dSDinh Nguyen interrupts = <0 92 4>; 18978cd6a9dSDinh Nguyen interrupt-names = "macirq"; 19078cd6a9dSDinh Nguyen mac-address = [00 00 00 00 00 00]; 19105690e8aSDinh Nguyen resets = <&rst EMAC2_RESET>, <&rst EMAC2_OCP_RESET>; 192*331085a4SDinh Nguyen reset-names = "stmmaceth", "ahb"; 1936e043c65SDinh Nguyen clocks = <&clkmgr STRATIX10_EMAC2_CLK>, <&clkmgr STRATIX10_EMAC_PTP_CLK>; 1946e043c65SDinh Nguyen clock-names = "stmmaceth", "ptp_ref"; 195a27460c9SThor Thayer tx-fifo-depth = <16384>; 196a27460c9SThor Thayer rx-fifo-depth = <16384>; 197fd5ba6eeSAaro Koskinen snps,multicast-filter-bins = <256>; 198ae3f46c8SThor Thayer iommus = <&smmu 3>; 1999aa0cae1SDinh Nguyen altr,sysmgr-syscon = <&sysmgr 0x4c 16>; 20078cd6a9dSDinh Nguyen status = "disabled"; 20178cd6a9dSDinh Nguyen }; 20278cd6a9dSDinh Nguyen 20378cd6a9dSDinh Nguyen gpio0: gpio@ffc03200 { 20478cd6a9dSDinh Nguyen #address-cells = <1>; 20578cd6a9dSDinh Nguyen #size-cells = <0>; 20678cd6a9dSDinh Nguyen compatible = "snps,dw-apb-gpio"; 20778cd6a9dSDinh Nguyen reg = <0xffc03200 0x100>; 208788251faSDinh Nguyen resets = <&rst GPIO0_RESET>; 20978cd6a9dSDinh Nguyen status = "disabled"; 21078cd6a9dSDinh Nguyen 21178cd6a9dSDinh Nguyen porta: gpio-controller@0 { 21278cd6a9dSDinh Nguyen compatible = "snps,dw-apb-gpio-port"; 21378cd6a9dSDinh Nguyen gpio-controller; 21478cd6a9dSDinh Nguyen #gpio-cells = <2>; 21562b3c680SJisheng Zhang ngpios = <24>; 21678cd6a9dSDinh Nguyen reg = <0>; 21778cd6a9dSDinh Nguyen interrupt-controller; 21878cd6a9dSDinh Nguyen #interrupt-cells = <2>; 21978cd6a9dSDinh Nguyen interrupts = <0 110 4>; 22078cd6a9dSDinh Nguyen }; 22178cd6a9dSDinh Nguyen }; 22278cd6a9dSDinh Nguyen 22378cd6a9dSDinh Nguyen gpio1: gpio@ffc03300 { 22478cd6a9dSDinh Nguyen #address-cells = <1>; 22578cd6a9dSDinh Nguyen #size-cells = <0>; 22678cd6a9dSDinh Nguyen compatible = "snps,dw-apb-gpio"; 22778cd6a9dSDinh Nguyen reg = <0xffc03300 0x100>; 228788251faSDinh Nguyen resets = <&rst GPIO1_RESET>; 22978cd6a9dSDinh Nguyen status = "disabled"; 23078cd6a9dSDinh Nguyen 23178cd6a9dSDinh Nguyen portb: gpio-controller@0 { 23278cd6a9dSDinh Nguyen compatible = "snps,dw-apb-gpio-port"; 23378cd6a9dSDinh Nguyen gpio-controller; 23478cd6a9dSDinh Nguyen #gpio-cells = <2>; 23562b3c680SJisheng Zhang ngpios = <24>; 23678cd6a9dSDinh Nguyen reg = <0>; 23778cd6a9dSDinh Nguyen interrupt-controller; 23878cd6a9dSDinh Nguyen #interrupt-cells = <2>; 239a067fb42SDinh Nguyen interrupts = <0 111 4>; 24078cd6a9dSDinh Nguyen }; 24178cd6a9dSDinh Nguyen }; 24278cd6a9dSDinh Nguyen 24378cd6a9dSDinh Nguyen i2c0: i2c@ffc02800 { 24478cd6a9dSDinh Nguyen #address-cells = <1>; 24578cd6a9dSDinh Nguyen #size-cells = <0>; 24678cd6a9dSDinh Nguyen compatible = "snps,designware-i2c"; 24778cd6a9dSDinh Nguyen reg = <0xffc02800 0x100>; 24878cd6a9dSDinh Nguyen interrupts = <0 103 4>; 249788251faSDinh Nguyen resets = <&rst I2C0_RESET>; 250eebee19eSAlan Tull clocks = <&clkmgr STRATIX10_L4_SP_CLK>; 25178cd6a9dSDinh Nguyen status = "disabled"; 25278cd6a9dSDinh Nguyen }; 25378cd6a9dSDinh Nguyen 25478cd6a9dSDinh Nguyen i2c1: i2c@ffc02900 { 25578cd6a9dSDinh Nguyen #address-cells = <1>; 25678cd6a9dSDinh Nguyen #size-cells = <0>; 25778cd6a9dSDinh Nguyen compatible = "snps,designware-i2c"; 25878cd6a9dSDinh Nguyen reg = <0xffc02900 0x100>; 25978cd6a9dSDinh Nguyen interrupts = <0 104 4>; 260788251faSDinh Nguyen resets = <&rst I2C1_RESET>; 261eebee19eSAlan Tull clocks = <&clkmgr STRATIX10_L4_SP_CLK>; 26278cd6a9dSDinh Nguyen status = "disabled"; 26378cd6a9dSDinh Nguyen }; 26478cd6a9dSDinh Nguyen 26578cd6a9dSDinh Nguyen i2c2: i2c@ffc02a00 { 26678cd6a9dSDinh Nguyen #address-cells = <1>; 26778cd6a9dSDinh Nguyen #size-cells = <0>; 26878cd6a9dSDinh Nguyen compatible = "snps,designware-i2c"; 26978cd6a9dSDinh Nguyen reg = <0xffc02a00 0x100>; 27078cd6a9dSDinh Nguyen interrupts = <0 105 4>; 271788251faSDinh Nguyen resets = <&rst I2C2_RESET>; 272eebee19eSAlan Tull clocks = <&clkmgr STRATIX10_L4_SP_CLK>; 27378cd6a9dSDinh Nguyen status = "disabled"; 27478cd6a9dSDinh Nguyen }; 27578cd6a9dSDinh Nguyen 27678cd6a9dSDinh Nguyen i2c3: i2c@ffc02b00 { 27778cd6a9dSDinh Nguyen #address-cells = <1>; 27878cd6a9dSDinh Nguyen #size-cells = <0>; 27978cd6a9dSDinh Nguyen compatible = "snps,designware-i2c"; 28078cd6a9dSDinh Nguyen reg = <0xffc02b00 0x100>; 28178cd6a9dSDinh Nguyen interrupts = <0 106 4>; 282788251faSDinh Nguyen resets = <&rst I2C3_RESET>; 283eebee19eSAlan Tull clocks = <&clkmgr STRATIX10_L4_SP_CLK>; 28478cd6a9dSDinh Nguyen status = "disabled"; 28578cd6a9dSDinh Nguyen }; 28678cd6a9dSDinh Nguyen 28778cd6a9dSDinh Nguyen i2c4: i2c@ffc02c00 { 28878cd6a9dSDinh Nguyen #address-cells = <1>; 28978cd6a9dSDinh Nguyen #size-cells = <0>; 29078cd6a9dSDinh Nguyen compatible = "snps,designware-i2c"; 29178cd6a9dSDinh Nguyen reg = <0xffc02c00 0x100>; 29278cd6a9dSDinh Nguyen interrupts = <0 107 4>; 293788251faSDinh Nguyen resets = <&rst I2C4_RESET>; 294eebee19eSAlan Tull clocks = <&clkmgr STRATIX10_L4_SP_CLK>; 29578cd6a9dSDinh Nguyen status = "disabled"; 29678cd6a9dSDinh Nguyen }; 29778cd6a9dSDinh Nguyen 2988b794ab2SKrzysztof Kozlowski mmc: mmc@ff808000 { 29978cd6a9dSDinh Nguyen #address-cells = <1>; 30078cd6a9dSDinh Nguyen #size-cells = <0>; 30178cd6a9dSDinh Nguyen compatible = "altr,socfpga-dw-mshc"; 30278cd6a9dSDinh Nguyen reg = <0xff808000 0x1000>; 30378cd6a9dSDinh Nguyen interrupts = <0 96 4>; 30478cd6a9dSDinh Nguyen fifo-depth = <0x400>; 305788251faSDinh Nguyen resets = <&rst SDMMC_RESET>; 306788251faSDinh Nguyen reset-names = "reset"; 307d93101abSDinh Nguyen clocks = <&clkmgr STRATIX10_L4_MP_CLK>, 308d93101abSDinh Nguyen <&clkmgr STRATIX10_SDMMC_CLK>; 309d93101abSDinh Nguyen clock-names = "biu", "ciu"; 310ae3f46c8SThor Thayer iommus = <&smmu 5>; 31131354121SDinh Nguyen altr,sysmgr-syscon = <&sysmgr 0x28 4>; 31278cd6a9dSDinh Nguyen status = "disabled"; 31378cd6a9dSDinh Nguyen }; 31478cd6a9dSDinh Nguyen 315681a5c71SKrzysztof Kozlowski nand: nand-controller@ffb90000 { 31667c9fd2dSDinh Nguyen #address-cells = <1>; 31767c9fd2dSDinh Nguyen #size-cells = <0>; 31867c9fd2dSDinh Nguyen compatible = "altr,socfpga-denali-nand"; 31967c9fd2dSDinh Nguyen reg = <0xffb90000 0x10000>, 32067c9fd2dSDinh Nguyen <0xffb80000 0x1000>; 32167c9fd2dSDinh Nguyen reg-names = "nand_data", "denali_reg"; 32267c9fd2dSDinh Nguyen interrupts = <0 97 4>; 32367c9fd2dSDinh Nguyen clocks = <&clkmgr STRATIX10_NAND_CLK>, 32467c9fd2dSDinh Nguyen <&clkmgr STRATIX10_NAND_X_CLK>, 32567c9fd2dSDinh Nguyen <&clkmgr STRATIX10_NAND_ECC_CLK>; 32667c9fd2dSDinh Nguyen clock-names = "nand", "nand_x", "ecc"; 32767c9fd2dSDinh Nguyen resets = <&rst NAND_RESET>, <&rst NAND_OCP_RESET>; 32867c9fd2dSDinh Nguyen status = "disabled"; 32967c9fd2dSDinh Nguyen }; 33067c9fd2dSDinh Nguyen 33178cd6a9dSDinh Nguyen ocram: sram@ffe00000 { 33278cd6a9dSDinh Nguyen compatible = "mmio-sram"; 33378cd6a9dSDinh Nguyen reg = <0xffe00000 0x100000>; 3346de298ffSDinh Nguyen #address-cells = <1>; 3356de298ffSDinh Nguyen #size-cells = <1>; 3366de298ffSDinh Nguyen ranges = <0 0xffe00000 0x100000>; 33778cd6a9dSDinh Nguyen }; 33878cd6a9dSDinh Nguyen 339180be1b7SKrzysztof Kozlowski pdma: dma-controller@ffda0000 { 340ab50a444SGraham Moore compatible = "arm,pl330", "arm,primecell"; 341ab50a444SGraham Moore reg = <0xffda0000 0x1000>; 342ab50a444SGraham Moore interrupts = <0 81 4>, 343ab50a444SGraham Moore <0 82 4>, 344ab50a444SGraham Moore <0 83 4>, 345ab50a444SGraham Moore <0 84 4>, 346ab50a444SGraham Moore <0 85 4>, 347ab50a444SGraham Moore <0 86 4>, 348ab50a444SGraham Moore <0 87 4>, 349ab50a444SGraham Moore <0 88 4>, 350ab50a444SGraham Moore <0 89 4>; 351ab50a444SGraham Moore #dma-cells = <1>; 352ab50a444SGraham Moore clocks = <&clkmgr STRATIX10_L4_MAIN_CLK>; 353ab50a444SGraham Moore clock-names = "apb_pclk"; 354e10c1848SDinh Nguyen resets = <&rst DMA_RESET>, <&rst DMA_OCP_RESET>; 355e10c1848SDinh Nguyen reset-names = "dma", "dma-ocp"; 356ab50a444SGraham Moore }; 357ab50a444SGraham Moore 35821ab7031SDinh Nguyen pinctrl0: pinctrl@ffd13000 { 35921ab7031SDinh Nguyen compatible = "pinctrl-single"; 36021ab7031SDinh Nguyen reg = <0xffd13000 0xA0>; 36121ab7031SDinh Nguyen #pinctrl-cells = <1>; 36221ab7031SDinh Nguyen pinctrl-single,register-width = <32>; 36321ab7031SDinh Nguyen pinctrl-single,function-mask = <0x0000000f>; 36421ab7031SDinh Nguyen }; 36521ab7031SDinh Nguyen 36621ab7031SDinh Nguyen pinctrl1: pinctrl@ffd13100 { 36721ab7031SDinh Nguyen compatible = "pinctrl-single"; 36821ab7031SDinh Nguyen reg = <0xffd13100 0x20>; 36921ab7031SDinh Nguyen #pinctrl-cells = <1>; 37021ab7031SDinh Nguyen pinctrl-single,register-width = <32>; 37121ab7031SDinh Nguyen pinctrl-single,function-mask = <0x0000000f>; 37221ab7031SDinh Nguyen }; 37321ab7031SDinh Nguyen 37478cd6a9dSDinh Nguyen rst: rstmgr@ffd11000 { 37578cd6a9dSDinh Nguyen #reset-cells = <1>; 3768bb4f3f5SDinh Nguyen compatible = "altr,stratix10-rst-mgr"; 37778cd6a9dSDinh Nguyen reg = <0xffd11000 0x1000>; 37878cd6a9dSDinh Nguyen }; 37978cd6a9dSDinh Nguyen 380ae3f46c8SThor Thayer smmu: iommu@fa000000 { 381ae3f46c8SThor Thayer compatible = "arm,mmu-500", "arm,smmu-v2"; 382ae3f46c8SThor Thayer reg = <0xfa000000 0x40000>; 383ae3f46c8SThor Thayer #global-interrupts = <2>; 384ae3f46c8SThor Thayer #iommu-cells = <1>; 385ae3f46c8SThor Thayer clocks = <&clkmgr STRATIX10_L4_MAIN_CLK>; 386ae3f46c8SThor Thayer clock-names = "iommu"; 387ae3f46c8SThor Thayer interrupt-parent = <&intc>; 388ae3f46c8SThor Thayer interrupts = <0 128 4>, /* Global Secure Fault */ 389ae3f46c8SThor Thayer <0 129 4>, /* Global Non-secure Fault */ 390ae3f46c8SThor Thayer /* Non-secure Context Interrupts (32) */ 391ae3f46c8SThor Thayer <0 138 4>, <0 139 4>, <0 140 4>, <0 141 4>, 392ae3f46c8SThor Thayer <0 142 4>, <0 143 4>, <0 144 4>, <0 145 4>, 393ae3f46c8SThor Thayer <0 146 4>, <0 147 4>, <0 148 4>, <0 149 4>, 394ae3f46c8SThor Thayer <0 150 4>, <0 151 4>, <0 152 4>, <0 153 4>, 395ae3f46c8SThor Thayer <0 154 4>, <0 155 4>, <0 156 4>, <0 157 4>, 396ae3f46c8SThor Thayer <0 158 4>, <0 159 4>, <0 160 4>, <0 161 4>, 397ae3f46c8SThor Thayer <0 162 4>, <0 163 4>, <0 164 4>, <0 165 4>, 398ae3f46c8SThor Thayer <0 166 4>, <0 167 4>, <0 168 4>, <0 169 4>; 399ae3f46c8SThor Thayer stream-match-mask = <0x7ff0>; 400ae3f46c8SThor Thayer status = "disabled"; 401ae3f46c8SThor Thayer }; 402ae3f46c8SThor Thayer 40378cd6a9dSDinh Nguyen spi0: spi@ffda4000 { 40478cd6a9dSDinh Nguyen compatible = "snps,dw-apb-ssi"; 40578cd6a9dSDinh Nguyen #address-cells = <1>; 40678cd6a9dSDinh Nguyen #size-cells = <0>; 40778cd6a9dSDinh Nguyen reg = <0xffda4000 0x1000>; 408889d1509SThor Thayer interrupts = <0 99 4>; 409889d1509SThor Thayer resets = <&rst SPIM0_RESET>; 4100ef91ccdSDinh Nguyen reset-names = "spi"; 411889d1509SThor Thayer reg-io-width = <4>; 4124595299cSThor Thayer num-cs = <4>; 41370455ac7SThor Thayer clocks = <&clkmgr STRATIX10_L4_MAIN_CLK>; 41478cd6a9dSDinh Nguyen status = "disabled"; 41578cd6a9dSDinh Nguyen }; 41678cd6a9dSDinh Nguyen 41778cd6a9dSDinh Nguyen spi1: spi@ffda5000 { 41878cd6a9dSDinh Nguyen compatible = "snps,dw-apb-ssi"; 41978cd6a9dSDinh Nguyen #address-cells = <1>; 42078cd6a9dSDinh Nguyen #size-cells = <0>; 42178cd6a9dSDinh Nguyen reg = <0xffda5000 0x1000>; 422889d1509SThor Thayer interrupts = <0 100 4>; 423889d1509SThor Thayer resets = <&rst SPIM1_RESET>; 4240ef91ccdSDinh Nguyen reset-names = "spi"; 425889d1509SThor Thayer reg-io-width = <4>; 4264595299cSThor Thayer num-cs = <4>; 42770455ac7SThor Thayer clocks = <&clkmgr STRATIX10_L4_MAIN_CLK>; 42878cd6a9dSDinh Nguyen status = "disabled"; 42978cd6a9dSDinh Nguyen }; 43078cd6a9dSDinh Nguyen 43178cd6a9dSDinh Nguyen sysmgr: sysmgr@ffd12000 { 4328f4ebe9bSThor Thayer compatible = "altr,sys-mgr-s10","altr,sys-mgr"; 43374121b9aSThor Thayer reg = <0xffd12000 0x228>; 43478cd6a9dSDinh Nguyen }; 43578cd6a9dSDinh Nguyen 43678cd6a9dSDinh Nguyen timer0: timer0@ffc03000 { 43778cd6a9dSDinh Nguyen compatible = "snps,dw-apb-timer"; 43878cd6a9dSDinh Nguyen interrupts = <0 113 4>; 43978cd6a9dSDinh Nguyen reg = <0xffc03000 0x100>; 440d93101abSDinh Nguyen clocks = <&clkmgr STRATIX10_L4_SP_CLK>; 441d93101abSDinh Nguyen clock-names = "timer"; 44278cd6a9dSDinh Nguyen }; 44378cd6a9dSDinh Nguyen 44478cd6a9dSDinh Nguyen timer1: timer1@ffc03100 { 44578cd6a9dSDinh Nguyen compatible = "snps,dw-apb-timer"; 44678cd6a9dSDinh Nguyen interrupts = <0 114 4>; 44778cd6a9dSDinh Nguyen reg = <0xffc03100 0x100>; 448d93101abSDinh Nguyen clocks = <&clkmgr STRATIX10_L4_SP_CLK>; 449d93101abSDinh Nguyen clock-names = "timer"; 45078cd6a9dSDinh Nguyen }; 45178cd6a9dSDinh Nguyen 45278cd6a9dSDinh Nguyen timer2: timer2@ffd00000 { 45378cd6a9dSDinh Nguyen compatible = "snps,dw-apb-timer"; 45478cd6a9dSDinh Nguyen interrupts = <0 115 4>; 45578cd6a9dSDinh Nguyen reg = <0xffd00000 0x100>; 456d93101abSDinh Nguyen clocks = <&clkmgr STRATIX10_L4_SP_CLK>; 457d93101abSDinh Nguyen clock-names = "timer"; 45878cd6a9dSDinh Nguyen }; 45978cd6a9dSDinh Nguyen 46078cd6a9dSDinh Nguyen timer3: timer3@ffd00100 { 46178cd6a9dSDinh Nguyen compatible = "snps,dw-apb-timer"; 46278cd6a9dSDinh Nguyen interrupts = <0 116 4>; 46378cd6a9dSDinh Nguyen reg = <0xffd00100 0x100>; 464d93101abSDinh Nguyen clocks = <&clkmgr STRATIX10_L4_SP_CLK>; 465d93101abSDinh Nguyen clock-names = "timer"; 46678cd6a9dSDinh Nguyen }; 46778cd6a9dSDinh Nguyen 468681a5c71SKrzysztof Kozlowski uart0: serial@ffc02000 { 46978cd6a9dSDinh Nguyen compatible = "snps,dw-apb-uart"; 47078cd6a9dSDinh Nguyen reg = <0xffc02000 0x100>; 47178cd6a9dSDinh Nguyen interrupts = <0 108 4>; 47278cd6a9dSDinh Nguyen reg-shift = <2>; 47378cd6a9dSDinh Nguyen reg-io-width = <4>; 474788251faSDinh Nguyen resets = <&rst UART0_RESET>; 475d93101abSDinh Nguyen clocks = <&clkmgr STRATIX10_L4_SP_CLK>; 47678cd6a9dSDinh Nguyen status = "disabled"; 47778cd6a9dSDinh Nguyen }; 47878cd6a9dSDinh Nguyen 479681a5c71SKrzysztof Kozlowski uart1: serial@ffc02100 { 48078cd6a9dSDinh Nguyen compatible = "snps,dw-apb-uart"; 48178cd6a9dSDinh Nguyen reg = <0xffc02100 0x100>; 48278cd6a9dSDinh Nguyen interrupts = <0 109 4>; 48378cd6a9dSDinh Nguyen reg-shift = <2>; 48478cd6a9dSDinh Nguyen reg-io-width = <4>; 485788251faSDinh Nguyen resets = <&rst UART1_RESET>; 486d93101abSDinh Nguyen clocks = <&clkmgr STRATIX10_L4_SP_CLK>; 48778cd6a9dSDinh Nguyen status = "disabled"; 48878cd6a9dSDinh Nguyen }; 48978cd6a9dSDinh Nguyen 49078cd6a9dSDinh Nguyen usb0: usb@ffb00000 { 49178cd6a9dSDinh Nguyen compatible = "snps,dwc2"; 49278cd6a9dSDinh Nguyen reg = <0xffb00000 0x40000>; 49378cd6a9dSDinh Nguyen interrupts = <0 93 4>; 49478cd6a9dSDinh Nguyen phys = <&usbphy0>; 49578cd6a9dSDinh Nguyen phy-names = "usb2-phy"; 49633af8ca0SDinh Nguyen resets = <&rst USB0_RESET>, <&rst USB0_OCP_RESET>; 49733af8ca0SDinh Nguyen reset-names = "dwc2", "dwc2-ecc"; 49803761ab1SDinh Nguyen clocks = <&clkmgr STRATIX10_USB_CLK>; 4994b557e17SKrzysztof Kozlowski clock-names = "otg"; 500ae3f46c8SThor Thayer iommus = <&smmu 6>; 50178cd6a9dSDinh Nguyen status = "disabled"; 50278cd6a9dSDinh Nguyen }; 50378cd6a9dSDinh Nguyen 50478cd6a9dSDinh Nguyen usb1: usb@ffb40000 { 50578cd6a9dSDinh Nguyen compatible = "snps,dwc2"; 50678cd6a9dSDinh Nguyen reg = <0xffb40000 0x40000>; 50778cd6a9dSDinh Nguyen interrupts = <0 94 4>; 50878cd6a9dSDinh Nguyen phys = <&usbphy0>; 50978cd6a9dSDinh Nguyen phy-names = "usb2-phy"; 51033af8ca0SDinh Nguyen resets = <&rst USB1_RESET>, <&rst USB1_OCP_RESET>; 51133af8ca0SDinh Nguyen reset-names = "dwc2", "dwc2-ecc"; 51203761ab1SDinh Nguyen clocks = <&clkmgr STRATIX10_USB_CLK>; 513ae3f46c8SThor Thayer iommus = <&smmu 7>; 51478cd6a9dSDinh Nguyen status = "disabled"; 51578cd6a9dSDinh Nguyen }; 51678cd6a9dSDinh Nguyen 51778cd6a9dSDinh Nguyen watchdog0: watchdog@ffd00200 { 51878cd6a9dSDinh Nguyen compatible = "snps,dw-wdt"; 51978cd6a9dSDinh Nguyen reg = <0xffd00200 0x100>; 52078cd6a9dSDinh Nguyen interrupts = <0 117 4>; 521788251faSDinh Nguyen resets = <&rst WATCHDOG0_RESET>; 52203761ab1SDinh Nguyen clocks = <&clkmgr STRATIX10_L4_SYS_FREE_CLK>; 52378cd6a9dSDinh Nguyen status = "disabled"; 52478cd6a9dSDinh Nguyen }; 52578cd6a9dSDinh Nguyen 52678cd6a9dSDinh Nguyen watchdog1: watchdog@ffd00300 { 52778cd6a9dSDinh Nguyen compatible = "snps,dw-wdt"; 52878cd6a9dSDinh Nguyen reg = <0xffd00300 0x100>; 52978cd6a9dSDinh Nguyen interrupts = <0 118 4>; 530788251faSDinh Nguyen resets = <&rst WATCHDOG1_RESET>; 53103761ab1SDinh Nguyen clocks = <&clkmgr STRATIX10_L4_SYS_FREE_CLK>; 53278cd6a9dSDinh Nguyen status = "disabled"; 53378cd6a9dSDinh Nguyen }; 53478cd6a9dSDinh Nguyen 53578cd6a9dSDinh Nguyen watchdog2: watchdog@ffd00400 { 53678cd6a9dSDinh Nguyen compatible = "snps,dw-wdt"; 53778cd6a9dSDinh Nguyen reg = <0xffd00400 0x100>; 53878cd6a9dSDinh Nguyen interrupts = <0 125 4>; 539788251faSDinh Nguyen resets = <&rst WATCHDOG2_RESET>; 54003761ab1SDinh Nguyen clocks = <&clkmgr STRATIX10_L4_SYS_FREE_CLK>; 54178cd6a9dSDinh Nguyen status = "disabled"; 54278cd6a9dSDinh Nguyen }; 54378cd6a9dSDinh Nguyen 54478cd6a9dSDinh Nguyen watchdog3: watchdog@ffd00500 { 54578cd6a9dSDinh Nguyen compatible = "snps,dw-wdt"; 54678cd6a9dSDinh Nguyen reg = <0xffd00500 0x100>; 54778cd6a9dSDinh Nguyen interrupts = <0 126 4>; 548788251faSDinh Nguyen resets = <&rst WATCHDOG3_RESET>; 54903761ab1SDinh Nguyen clocks = <&clkmgr STRATIX10_L4_SYS_FREE_CLK>; 55078cd6a9dSDinh Nguyen status = "disabled"; 55178cd6a9dSDinh Nguyen }; 55291fdd827SThor Thayer 553446fd7afSThor Thayer sdr: sdr@f8011100 { 554446fd7afSThor Thayer compatible = "altr,sdr-ctl", "syscon"; 555446fd7afSThor Thayer reg = <0xf8011100 0xc0>; 556446fd7afSThor Thayer }; 557446fd7afSThor Thayer 55891fdd827SThor Thayer eccmgr { 55974676a8eSThor Thayer compatible = "altr,socfpga-s10-ecc-manager", 56074676a8eSThor Thayer "altr,socfpga-a10-ecc-manager"; 5613ce078ffSThor Thayer altr,sysmgr-syscon = <&sysmgr>; 5623ce078ffSThor Thayer #address-cells = <1>; 5633ce078ffSThor Thayer #size-cells = <1>; 56474676a8eSThor Thayer interrupts = <0 15 4>; 56591fdd827SThor Thayer interrupt-controller; 56691fdd827SThor Thayer #interrupt-cells = <2>; 5673ce078ffSThor Thayer ranges; 56891fdd827SThor Thayer 56991fdd827SThor Thayer sdramedac { 57091fdd827SThor Thayer compatible = "altr,sdram-edac-s10"; 571446fd7afSThor Thayer altr,sdr-syscon = <&sdr>; 57274676a8eSThor Thayer interrupts = <16 4>; 57391fdd827SThor Thayer }; 5746b2da9ffSThor Thayer 5753c4fcb89SThor Thayer ocram-ecc@ff8cc000 { 5763c4fcb89SThor Thayer compatible = "altr,socfpga-s10-ocram-ecc", 5773c4fcb89SThor Thayer "altr,socfpga-a10-ocram-ecc"; 5783c4fcb89SThor Thayer reg = <0xff8cc000 0x100>; 5793c4fcb89SThor Thayer altr,ecc-parent = <&ocram>; 5803c4fcb89SThor Thayer interrupts = <1 4>; 5813c4fcb89SThor Thayer }; 5823c4fcb89SThor Thayer 5836b2da9ffSThor Thayer usb0-ecc@ff8c4000 { 58474676a8eSThor Thayer compatible = "altr,socfpga-s10-usb-ecc", 58574676a8eSThor Thayer "altr,socfpga-usb-ecc"; 5866b2da9ffSThor Thayer reg = <0xff8c4000 0x100>; 5876b2da9ffSThor Thayer altr,ecc-parent = <&usb0>; 58874676a8eSThor Thayer interrupts = <2 4>; 5896b2da9ffSThor Thayer }; 5906b2da9ffSThor Thayer 5916b2da9ffSThor Thayer emac0-rx-ecc@ff8c0000 { 59274676a8eSThor Thayer compatible = "altr,socfpga-s10-eth-mac-ecc", 59374676a8eSThor Thayer "altr,socfpga-eth-mac-ecc"; 5946b2da9ffSThor Thayer reg = <0xff8c0000 0x100>; 5956b2da9ffSThor Thayer altr,ecc-parent = <&gmac0>; 59674676a8eSThor Thayer interrupts = <4 4>; 5976b2da9ffSThor Thayer }; 5986b2da9ffSThor Thayer 5996b2da9ffSThor Thayer emac0-tx-ecc@ff8c0400 { 60074676a8eSThor Thayer compatible = "altr,socfpga-s10-eth-mac-ecc", 60174676a8eSThor Thayer "altr,socfpga-eth-mac-ecc"; 6026b2da9ffSThor Thayer reg = <0xff8c0400 0x100>; 6036b2da9ffSThor Thayer altr,ecc-parent = <&gmac0>; 60474676a8eSThor Thayer interrupts = <5 4>; 6056b2da9ffSThor Thayer }; 6066b2da9ffSThor Thayer 60791fdd827SThor Thayer }; 6080cb140d0SThor Thayer 6090cb140d0SThor Thayer qspi: spi@ff8d2000 { 61036de991eSDinh Nguyen compatible = "intel,socfpga-qspi", "cdns,qspi-nor"; 6110cb140d0SThor Thayer #address-cells = <1>; 6120cb140d0SThor Thayer #size-cells = <0>; 6130cb140d0SThor Thayer reg = <0xff8d2000 0x100>, 6140cb140d0SThor Thayer <0xff900000 0x100000>; 6150cb140d0SThor Thayer interrupts = <0 3 4>; 6160cb140d0SThor Thayer cdns,fifo-depth = <128>; 6170cb140d0SThor Thayer cdns,fifo-width = <4>; 6180cb140d0SThor Thayer cdns,trigger-address = <0x00000000>; 6190cb140d0SThor Thayer clocks = <&qspi_clk>; 6200cb140d0SThor Thayer 6210cb140d0SThor Thayer status = "disabled"; 6220cb140d0SThor Thayer }; 623adb9e354SRichard Gong 624adb9e354SRichard Gong firmware { 625adb9e354SRichard Gong svc { 626adb9e354SRichard Gong compatible = "intel,stratix10-svc"; 627adb9e354SRichard Gong method = "smc"; 628adb9e354SRichard Gong memory-region = <&service_reserved>; 629919d1100SAlan Tull 630919d1100SAlan Tull fpga_mgr: fpga-mgr { 631919d1100SAlan Tull compatible = "intel,stratix10-soc-fpga-mgr"; 632919d1100SAlan Tull }; 633adb9e354SRichard Gong }; 634adb9e354SRichard Gong }; 63578cd6a9dSDinh Nguyen }; 6365dad11faSDinh Nguyen 6375dad11faSDinh Nguyen usbphy0: usbphy0 { 6385dad11faSDinh Nguyen compatible = "usb-nop-xceiv"; 6395dad11faSDinh Nguyen #phy-cells = <0>; 6405dad11faSDinh Nguyen }; 64178cd6a9dSDinh Nguyen}; 642