Commit f5691ad1 authored by Arnd Bergmann's avatar Arnd Bergmann

Merge tag 'socfpga_dts_for_v5.1' of...

Merge tag 'socfpga_dts_for_v5.1' of git://git.kernel.org/pub/scm/linux/kernel/git/dinguyen/linux into arm/dt

SoCFPGA DTS updates for v5.1
- Add SMMU node for Stratix10
- Add vendor prefix fo Novtech
- Add a new 96Boards Chameleon96 board that uses a Cyclone5 SoCFPGA
- Add missing reset properties for all IP on Cyclone5 and Arria10

* tag 'socfpga_dts_for_v5.1' of git://git.kernel.org/pub/scm/linux/kernel/git/dinguyen/linux:
  ARM: dts: socfpga: update more missing reset properties
  ARM: dts: socfpga: update missing reset property peripherals
  ARM: dts: Add support for 96Boards Chameleon96 board
  dt-bindings: vendor-prefixes: Add Novtech Vendor Prefix
  arm64: dts: stratix10: Add Stratix10 SMMU support
Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
parents 01a8ab4e 1c909b2d
...@@ -274,6 +274,7 @@ nintendo Nintendo ...@@ -274,6 +274,7 @@ nintendo Nintendo
nlt NLT Technologies, Ltd. nlt NLT Technologies, Ltd.
nokia Nokia nokia Nokia
nordic Nordic Semiconductor nordic Nordic Semiconductor
novtech NovTech, Inc.
nutsboard NutsBoard nutsboard NutsBoard
nuvoton Nuvoton Technology Corporation nuvoton Nuvoton Technology Corporation
nvd New Vision Display nvd New Vision Display
......
...@@ -924,6 +924,7 @@ dtb-$(CONFIG_ARCH_SOCFPGA) += \ ...@@ -924,6 +924,7 @@ dtb-$(CONFIG_ARCH_SOCFPGA) += \
socfpga_arria10_socdk_nand.dtb \ socfpga_arria10_socdk_nand.dtb \
socfpga_arria10_socdk_qspi.dtb \ socfpga_arria10_socdk_qspi.dtb \
socfpga_arria10_socdk_sdmmc.dtb \ socfpga_arria10_socdk_sdmmc.dtb \
socfpga_cyclone5_chameleon96.dtb \
socfpga_cyclone5_mcvevk.dtb \ socfpga_cyclone5_mcvevk.dtb \
socfpga_cyclone5_socdk.dtb \ socfpga_cyclone5_socdk.dtb \
socfpga_cyclone5_de0_nano_soc.dtb \ socfpga_cyclone5_de0_nano_soc.dtb \
......
...@@ -84,6 +84,7 @@ pdma: pdma@ffe01000 { ...@@ -84,6 +84,7 @@ pdma: pdma@ffe01000 {
#dma-requests = <32>; #dma-requests = <32>;
clocks = <&l4_main_clk>; clocks = <&l4_main_clk>;
clock-names = "apb_pclk"; clock-names = "apb_pclk";
resets = <&rst DMA_RESET>;
}; };
}; };
...@@ -100,6 +101,7 @@ can0: can@ffc00000 { ...@@ -100,6 +101,7 @@ can0: can@ffc00000 {
reg = <0xffc00000 0x1000>; reg = <0xffc00000 0x1000>;
interrupts = <0 131 4>, <0 132 4>, <0 133 4>, <0 134 4>; interrupts = <0 131 4>, <0 132 4>, <0 133 4>, <0 134 4>;
clocks = <&can0_clk>; clocks = <&can0_clk>;
resets = <&rst CAN0_RESET>;
status = "disabled"; status = "disabled";
}; };
...@@ -108,6 +110,7 @@ can1: can@ffc01000 { ...@@ -108,6 +110,7 @@ can1: can@ffc01000 {
reg = <0xffc01000 0x1000>; reg = <0xffc01000 0x1000>;
interrupts = <0 135 4>, <0 136 4>, <0 137 4>, <0 138 4>; interrupts = <0 135 4>, <0 136 4>, <0 137 4>, <0 138 4>;
clocks = <&can1_clk>; clocks = <&can1_clk>;
resets = <&rst CAN1_RESET>;
status = "disabled"; status = "disabled";
}; };
...@@ -585,6 +588,7 @@ gpio0: gpio@ff708000 { ...@@ -585,6 +588,7 @@ gpio0: gpio@ff708000 {
compatible = "snps,dw-apb-gpio"; compatible = "snps,dw-apb-gpio";
reg = <0xff708000 0x1000>; reg = <0xff708000 0x1000>;
clocks = <&l4_mp_clk>; clocks = <&l4_mp_clk>;
resets = <&rst GPIO0_RESET>;
status = "disabled"; status = "disabled";
porta: gpio-controller@0 { porta: gpio-controller@0 {
...@@ -605,6 +609,7 @@ gpio1: gpio@ff709000 { ...@@ -605,6 +609,7 @@ gpio1: gpio@ff709000 {
compatible = "snps,dw-apb-gpio"; compatible = "snps,dw-apb-gpio";
reg = <0xff709000 0x1000>; reg = <0xff709000 0x1000>;
clocks = <&l4_mp_clk>; clocks = <&l4_mp_clk>;
resets = <&rst GPIO1_RESET>;
status = "disabled"; status = "disabled";
portb: gpio-controller@0 { portb: gpio-controller@0 {
...@@ -625,6 +630,7 @@ gpio2: gpio@ff70a000 { ...@@ -625,6 +630,7 @@ gpio2: gpio@ff70a000 {
compatible = "snps,dw-apb-gpio"; compatible = "snps,dw-apb-gpio";
reg = <0xff70a000 0x1000>; reg = <0xff70a000 0x1000>;
clocks = <&l4_mp_clk>; clocks = <&l4_mp_clk>;
resets = <&rst GPIO2_RESET>;
status = "disabled"; status = "disabled";
portc: gpio-controller@0 { portc: gpio-controller@0 {
...@@ -735,6 +741,7 @@ mmc: dwmmc0@ff704000 { ...@@ -735,6 +741,7 @@ mmc: dwmmc0@ff704000 {
#size-cells = <0>; #size-cells = <0>;
clocks = <&l4_mp_clk>, <&sdmmc_clk_divided>; clocks = <&l4_mp_clk>, <&sdmmc_clk_divided>;
clock-names = "biu", "ciu"; clock-names = "biu", "ciu";
resets = <&rst SDMMC_RESET>;
status = "disabled"; status = "disabled";
}; };
...@@ -748,6 +755,7 @@ nand0: nand@ff900000 { ...@@ -748,6 +755,7 @@ nand0: nand@ff900000 {
interrupts = <0x0 0x90 0x4>; interrupts = <0x0 0x90 0x4>;
clocks = <&nand_clk>, <&nand_x_clk>, <&nand_ecc_clk>; clocks = <&nand_clk>, <&nand_x_clk>, <&nand_ecc_clk>;
clock-names = "nand", "nand_x", "ecc"; clock-names = "nand", "nand_x", "ecc";
resets = <&rst NAND_RESET>;
status = "disabled"; status = "disabled";
}; };
...@@ -767,6 +775,7 @@ qspi: spi@ff705000 { ...@@ -767,6 +775,7 @@ qspi: spi@ff705000 {
cdns,fifo-width = <4>; cdns,fifo-width = <4>;
cdns,trigger-address = <0x00000000>; cdns,trigger-address = <0x00000000>;
clocks = <&qspi_clk>; clocks = <&qspi_clk>;
resets = <&rst QSPI_RESET>;
status = "disabled"; status = "disabled";
}; };
...@@ -785,6 +794,7 @@ scu: snoop-control-unit@fffec000 { ...@@ -785,6 +794,7 @@ scu: snoop-control-unit@fffec000 {
sdr: sdr@ffc25000 { sdr: sdr@ffc25000 {
compatible = "altr,sdr-ctl", "syscon"; compatible = "altr,sdr-ctl", "syscon";
reg = <0xffc25000 0x1000>; reg = <0xffc25000 0x1000>;
resets = <&rst SDR_RESET>;
}; };
sdramedac { sdramedac {
...@@ -801,6 +811,7 @@ spi0: spi@fff00000 { ...@@ -801,6 +811,7 @@ spi0: spi@fff00000 {
interrupts = <0 154 4>; interrupts = <0 154 4>;
num-cs = <4>; num-cs = <4>;
clocks = <&spi_m_clk>; clocks = <&spi_m_clk>;
resets = <&rst SPIM0_RESET>;
status = "disabled"; status = "disabled";
}; };
...@@ -812,6 +823,7 @@ spi1: spi@fff01000 { ...@@ -812,6 +823,7 @@ spi1: spi@fff01000 {
interrupts = <0 155 4>; interrupts = <0 155 4>;
num-cs = <4>; num-cs = <4>;
clocks = <&spi_m_clk>; clocks = <&spi_m_clk>;
resets = <&rst SPIM1_RESET>;
status = "disabled"; status = "disabled";
}; };
...@@ -878,6 +890,7 @@ uart0: serial0@ffc02000 { ...@@ -878,6 +890,7 @@ uart0: serial0@ffc02000 {
dmas = <&pdma 28>, dmas = <&pdma 28>,
<&pdma 29>; <&pdma 29>;
dma-names = "tx", "rx"; dma-names = "tx", "rx";
resets = <&rst UART0_RESET>;
}; };
uart1: serial1@ffc03000 { uart1: serial1@ffc03000 {
...@@ -890,6 +903,7 @@ uart1: serial1@ffc03000 { ...@@ -890,6 +903,7 @@ uart1: serial1@ffc03000 {
dmas = <&pdma 30>, dmas = <&pdma 30>,
<&pdma 31>; <&pdma 31>;
dma-names = "tx", "rx"; dma-names = "tx", "rx";
resets = <&rst UART1_RESET>;
}; };
usbphy0: usbphy { usbphy0: usbphy {
...@@ -929,6 +943,7 @@ watchdog0: watchdog@ffd02000 { ...@@ -929,6 +943,7 @@ watchdog0: watchdog@ffd02000 {
reg = <0xffd02000 0x1000>; reg = <0xffd02000 0x1000>;
interrupts = <0 171 4>; interrupts = <0 171 4>;
clocks = <&osc1>; clocks = <&osc1>;
resets = <&rst L4WD0_RESET>;
status = "disabled"; status = "disabled";
}; };
...@@ -937,6 +952,7 @@ watchdog1: watchdog@ffd03000 { ...@@ -937,6 +952,7 @@ watchdog1: watchdog@ffd03000 {
reg = <0xffd03000 0x1000>; reg = <0xffd03000 0x1000>;
interrupts = <0 172 4>; interrupts = <0 172 4>;
clocks = <&osc1>; clocks = <&osc1>;
resets = <&rst L4WD1_RESET>;
status = "disabled"; status = "disabled";
}; };
}; };
......
...@@ -470,6 +470,7 @@ gmac2: ethernet@ff804000 { ...@@ -470,6 +470,7 @@ gmac2: ethernet@ff804000 {
tx-fifo-depth = <4096>; tx-fifo-depth = <4096>;
rx-fifo-depth = <16384>; rx-fifo-depth = <16384>;
clocks = <&l4_mp_clk>; clocks = <&l4_mp_clk>;
resets = <&rst EMAC2_RESET>;
clock-names = "stmmaceth"; clock-names = "stmmaceth";
snps,axi-config = <&socfpga_axi_setup>; snps,axi-config = <&socfpga_axi_setup>;
status = "disabled"; status = "disabled";
...@@ -480,6 +481,7 @@ gpio0: gpio@ffc02900 { ...@@ -480,6 +481,7 @@ gpio0: gpio@ffc02900 {
#size-cells = <0>; #size-cells = <0>;
compatible = "snps,dw-apb-gpio"; compatible = "snps,dw-apb-gpio";
reg = <0xffc02900 0x100>; reg = <0xffc02900 0x100>;
resets = <&rst GPIO0_RESET>;
status = "disabled"; status = "disabled";
porta: gpio-controller@0 { porta: gpio-controller@0 {
...@@ -499,6 +501,7 @@ gpio1: gpio@ffc02a00 { ...@@ -499,6 +501,7 @@ gpio1: gpio@ffc02a00 {
#size-cells = <0>; #size-cells = <0>;
compatible = "snps,dw-apb-gpio"; compatible = "snps,dw-apb-gpio";
reg = <0xffc02a00 0x100>; reg = <0xffc02a00 0x100>;
resets = <&rst GPIO1_RESET>;
status = "disabled"; status = "disabled";
portb: gpio-controller@0 { portb: gpio-controller@0 {
...@@ -518,6 +521,7 @@ gpio2: gpio@ffc02b00 { ...@@ -518,6 +521,7 @@ gpio2: gpio@ffc02b00 {
#size-cells = <0>; #size-cells = <0>;
compatible = "snps,dw-apb-gpio"; compatible = "snps,dw-apb-gpio";
reg = <0xffc02b00 0x100>; reg = <0xffc02b00 0x100>;
resets = <&rst GPIO2_RESET>;
status = "disabled"; status = "disabled";
portc: gpio-controller@0 { portc: gpio-controller@0 {
...@@ -548,6 +552,7 @@ i2c0: i2c@ffc02200 { ...@@ -548,6 +552,7 @@ i2c0: i2c@ffc02200 {
reg = <0xffc02200 0x100>; reg = <0xffc02200 0x100>;
interrupts = <0 105 IRQ_TYPE_LEVEL_HIGH>; interrupts = <0 105 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&l4_sp_clk>; clocks = <&l4_sp_clk>;
resets = <&rst I2C0_RESET>;
status = "disabled"; status = "disabled";
}; };
...@@ -558,6 +563,7 @@ i2c1: i2c@ffc02300 { ...@@ -558,6 +563,7 @@ i2c1: i2c@ffc02300 {
reg = <0xffc02300 0x100>; reg = <0xffc02300 0x100>;
interrupts = <0 106 IRQ_TYPE_LEVEL_HIGH>; interrupts = <0 106 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&l4_sp_clk>; clocks = <&l4_sp_clk>;
resets = <&rst I2C1_RESET>;
status = "disabled"; status = "disabled";
}; };
...@@ -568,6 +574,7 @@ i2c2: i2c@ffc02400 { ...@@ -568,6 +574,7 @@ i2c2: i2c@ffc02400 {
reg = <0xffc02400 0x100>; reg = <0xffc02400 0x100>;
interrupts = <0 107 IRQ_TYPE_LEVEL_HIGH>; interrupts = <0 107 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&l4_sp_clk>; clocks = <&l4_sp_clk>;
resets = <&rst I2C2_RESET>;
status = "disabled"; status = "disabled";
}; };
...@@ -578,6 +585,7 @@ i2c3: i2c@ffc02500 { ...@@ -578,6 +585,7 @@ i2c3: i2c@ffc02500 {
reg = <0xffc02500 0x100>; reg = <0xffc02500 0x100>;
interrupts = <0 108 IRQ_TYPE_LEVEL_HIGH>; interrupts = <0 108 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&l4_sp_clk>; clocks = <&l4_sp_clk>;
resets = <&rst I2C3_RESET>;
status = "disabled"; status = "disabled";
}; };
...@@ -588,6 +596,7 @@ i2c4: i2c@ffc02600 { ...@@ -588,6 +596,7 @@ i2c4: i2c@ffc02600 {
reg = <0xffc02600 0x100>; reg = <0xffc02600 0x100>;
interrupts = <0 109 IRQ_TYPE_LEVEL_HIGH>; interrupts = <0 109 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&l4_sp_clk>; clocks = <&l4_sp_clk>;
resets = <&rst I2C4_RESET>;
status = "disabled"; status = "disabled";
}; };
...@@ -600,6 +609,7 @@ spi0: spi@ffda4000 { ...@@ -600,6 +609,7 @@ spi0: spi@ffda4000 {
num-cs = <4>; num-cs = <4>;
/*32bit_access;*/ /*32bit_access;*/
clocks = <&spi_m_clk>; clocks = <&spi_m_clk>;
resets = <&rst SPIM0_RESET>;
status = "disabled"; status = "disabled";
}; };
...@@ -614,6 +624,7 @@ spi1: spi@ffda5000 { ...@@ -614,6 +624,7 @@ spi1: spi@ffda5000 {
tx-dma-channel = <&pdma 16>; tx-dma-channel = <&pdma 16>;
rx-dma-channel = <&pdma 17>; rx-dma-channel = <&pdma 17>;
clocks = <&spi_m_clk>; clocks = <&spi_m_clk>;
resets = <&rst SPIM1_RESET>;
status = "disabled"; status = "disabled";
}; };
...@@ -642,6 +653,7 @@ mmc: dwmmc0@ff808000 { ...@@ -642,6 +653,7 @@ mmc: dwmmc0@ff808000 {
fifo-depth = <0x400>; fifo-depth = <0x400>;
clocks = <&l4_mp_clk>, <&sdmmc_clk>; clocks = <&l4_mp_clk>, <&sdmmc_clk>;
clock-names = "biu", "ciu"; clock-names = "biu", "ciu";
resets = <&rst SDMMC_RESET>;
status = "disabled"; status = "disabled";
}; };
...@@ -655,6 +667,7 @@ nand: nand@ffb90000 { ...@@ -655,6 +667,7 @@ nand: nand@ffb90000 {
interrupts = <0 99 4>; interrupts = <0 99 4>;
clocks = <&nand_clk>, <&nand_x_clk>, <&nand_ecc_clk>; clocks = <&nand_clk>, <&nand_x_clk>, <&nand_ecc_clk>;
clock-names = "nand", "nand_x", "ecc"; clock-names = "nand", "nand_x", "ecc";
resets = <&rst NAND_RESET>;
status = "disabled"; status = "disabled";
}; };
...@@ -739,6 +752,7 @@ qspi: spi@ff809000 { ...@@ -739,6 +752,7 @@ qspi: spi@ff809000 {
cdns,fifo-width = <4>; cdns,fifo-width = <4>;
cdns,trigger-address = <0x00000000>; cdns,trigger-address = <0x00000000>;
clocks = <&qspi_clk>; clocks = <&qspi_clk>;
resets = <&rst QSPI_RESET>;
status = "disabled"; status = "disabled";
}; };
...@@ -815,6 +829,7 @@ uart0: serial0@ffc02000 { ...@@ -815,6 +829,7 @@ uart0: serial0@ffc02000 {
reg-shift = <2>; reg-shift = <2>;
reg-io-width = <4>; reg-io-width = <4>;
clocks = <&l4_sp_clk>; clocks = <&l4_sp_clk>;
resets = <&rst UART0_RESET>;
status = "disabled"; status = "disabled";
}; };
...@@ -825,6 +840,7 @@ uart1: serial1@ffc02100 { ...@@ -825,6 +840,7 @@ uart1: serial1@ffc02100 {
reg-shift = <2>; reg-shift = <2>;
reg-io-width = <4>; reg-io-width = <4>;
clocks = <&l4_sp_clk>; clocks = <&l4_sp_clk>;
resets = <&rst UART1_RESET>;
status = "disabled"; status = "disabled";
}; };
...@@ -865,6 +881,7 @@ watchdog0: watchdog@ffd00200 { ...@@ -865,6 +881,7 @@ watchdog0: watchdog@ffd00200 {
reg = <0xffd00200 0x100>; reg = <0xffd00200 0x100>;
interrupts = <0 119 IRQ_TYPE_LEVEL_HIGH>; interrupts = <0 119 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&l4_sys_free_clk>; clocks = <&l4_sys_free_clk>;
resets = <&rst L4WD0_RESET>;
status = "disabled"; status = "disabled";
}; };
...@@ -873,6 +890,7 @@ watchdog1: watchdog@ffd00300 { ...@@ -873,6 +890,7 @@ watchdog1: watchdog@ffd00300 {
reg = <0xffd00300 0x100>; reg = <0xffd00300 0x100>;
interrupts = <0 120 IRQ_TYPE_LEVEL_HIGH>; interrupts = <0 120 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&l4_sys_free_clk>; clocks = <&l4_sys_free_clk>;
resets = <&rst L4WD1_RESET>;
status = "disabled"; status = "disabled";
}; };
}; };
......
// SPDX-License-Identifier: (GPL-2.0 OR MIT)
/*
* Device Tree file for the Chameleon96
*
* Copyright (c) 2018 Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
*/
#include <dt-bindings/gpio/gpio.h>
#include "socfpga_cyclone5.dtsi"
/ {
model = "Novetech Chameleon96";
compatible = "novtech,chameleon96", "altr,socfpga-cyclone5", "altr,socfpga";
chosen {
bootargs = "earlyprintk";
stdout-path = "serial0:115200n8";
};
memory@0 {
name = "memory";
device_type = "memory";
reg = <0x0 0x20000000>; /* 512MB */
};
regulator_3_3v: 3-3-v-regulator {
compatible = "regulator-fixed";
regulator-name = "3.3V";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
};
leds {
compatible = "gpio-leds";
user_led1 {
label = "green:user1";
gpios = <&porta 14 GPIO_ACTIVE_LOW>;
linux,default-trigger = "heartbeat";
};
user_led2 {
label = "green:user2";
gpios = <&porta 22 GPIO_ACTIVE_LOW>;
linux,default-trigger = "mmc0";
};
user_led3 {
label = "green:user3";
gpios = <&porta 25 GPIO_ACTIVE_LOW>;
linux,default-trigger = "none";
};
user_led4 {
label = "green:user4";
gpios = <&portb 3 GPIO_ACTIVE_LOW>;
panic-indicator;
linux,default-trigger = "none";
};
};
};
&gpio0 {
status = "okay";
};
&gpio1 {
status = "okay";
};
&i2c0 {
/* On Low speed expansion */
label = "LS-I2C0";
status = "okay";
};
&i2c1 {
/* On Low speed expansion */
label = "LS-I2C1";
status = "okay";
};
&i2c2 {
status = "okay";
};
&i2c3 {
/* On High speed expansion */
label = "HS-I2C2";
status = "okay";
};
&mmc0 {
vmmc-supply = <&regulator_3_3v>;
vqmmc-supply = <&regulator_3_3v>;
status = "okay";
};
&spi0 {
/* On High speed expansion */
label = "HS-SPI1";
status = "okay";
};
&spi1 {
/* On Low speed expansion */
label = "LS-SPI0";
status = "okay";
};
&uart0 {
/* On Low speed expansion */
label = "LS-UART1";
status = "okay";
};
&uart1 {
/* On Low speed expansion */
label = "LS-UART0";
status = "okay";
};
&usbphy0 {
status = "okay";
};
&usb1 {
status = "okay";
};
...@@ -161,6 +161,7 @@ gmac0: ethernet@ff800000 { ...@@ -161,6 +161,7 @@ gmac0: ethernet@ff800000 {
tx-fifo-depth = <16384>; tx-fifo-depth = <16384>;
rx-fifo-depth = <16384>; rx-fifo-depth = <16384>;
snps,multicast-filter-bins = <256>; snps,multicast-filter-bins = <256>;
iommus = <&smmu 1>;
status = "disabled"; status = "disabled";
}; };
...@@ -177,6 +178,7 @@ gmac1: ethernet@ff802000 { ...@@ -177,6 +178,7 @@ gmac1: ethernet@ff802000 {
tx-fifo-depth = <16384>; tx-fifo-depth = <16384>;
rx-fifo-depth = <16384>; rx-fifo-depth = <16384>;
snps,multicast-filter-bins = <256>; snps,multicast-filter-bins = <256>;
iommus = <&smmu 2>;
status = "disabled"; status = "disabled";
}; };
...@@ -193,6 +195,7 @@ gmac2: ethernet@ff804000 { ...@@ -193,6 +195,7 @@ gmac2: ethernet@ff804000 {
tx-fifo-depth = <16384>; tx-fifo-depth = <16384>;
rx-fifo-depth = <16384>; rx-fifo-depth = <16384>;
snps,multicast-filter-bins = <256>; snps,multicast-filter-bins = <256>;
iommus = <&smmu 3>;
status = "disabled"; status = "disabled";
}; };
...@@ -303,6 +306,7 @@ mmc: dwmmc0@ff808000 { ...@@ -303,6 +306,7 @@ mmc: dwmmc0@ff808000 {
clocks = <&clkmgr STRATIX10_L4_MP_CLK>, clocks = <&clkmgr STRATIX10_L4_MP_CLK>,
<&clkmgr STRATIX10_SDMMC_CLK>; <&clkmgr STRATIX10_SDMMC_CLK>;
clock-names = "biu", "ciu"; clock-names = "biu", "ciu";
iommus = <&smmu 5>;
status = "disabled"; status = "disabled";
}; };
...@@ -336,6 +340,29 @@ rst: rstmgr@ffd11000 { ...@@ -336,6 +340,29 @@ rst: rstmgr@ffd11000 {
reg = <0xffd11000 0x1000>; reg = <0xffd11000 0x1000>;
}; };
smmu: iommu@fa000000 {
compatible = "arm,mmu-500", "arm,smmu-v2";
reg = <0xfa000000 0x40000>;
#global-interrupts = <2>;
#iommu-cells = <1>;
clocks = <&clkmgr STRATIX10_L4_MAIN_CLK>;
clock-names = "iommu";
interrupt-parent = <&intc>;
interrupts = <0 128 4>, /* Global Secure Fault */
<0 129 4>, /* Global Non-secure Fault */
/* Non-secure Context Interrupts (32) */
<0 138 4>, <0 139 4>, <0 140 4>, <0 141 4>,
<0 142 4>, <0 143 4>, <0 144 4>, <0 145 4>,
<0 146 4>, <0 147 4>, <0 148 4>, <0 149 4>,
<0 150 4>, <0 151 4>, <0 152 4>, <0 153 4>,
<0 154 4>, <0 155 4>, <0 156 4>, <0 157 4>,
<0 158 4>, <0 159 4>, <0 160 4>, <0 161 4>,
<0 162 4>, <0 163 4>, <0 164 4>, <0 165 4>,
<0 166 4>, <0 167 4>, <0 168 4>, <0 169 4>;
stream-match-mask = <0x7ff0>;
status = "disabled";
};
spi0: spi@ffda4000 { spi0: spi@ffda4000 {
compatible = "snps,dw-apb-ssi"; compatible = "snps,dw-apb-ssi";
#address-cells = <1>; #address-cells = <1>;
...@@ -445,6 +472,7 @@ usb0: usb@ffb00000 { ...@@ -445,6 +472,7 @@ usb0: usb@ffb00000 {
resets = <&rst USB0_RESET>, <&rst USB0_OCP_RESET>; resets = <&rst USB0_RESET>, <&rst USB0_OCP_RESET>;
reset-names = "dwc2", "dwc2-ecc"; reset-names = "dwc2", "dwc2-ecc";
clocks = <&clkmgr STRATIX10_USB_CLK>; clocks = <&clkmgr STRATIX10_USB_CLK>;
iommus = <&smmu 6>;
status = "disabled"; status = "disabled";
}; };
...@@ -457,6 +485,7 @@ usb1: usb@ffb40000 { ...@@ -457,6 +485,7 @@ usb1: usb@ffb40000 {
resets = <&rst USB1_RESET>, <&rst USB1_OCP_RESET>; resets = <&rst USB1_RESET>, <&rst USB1_OCP_RESET>;
reset-names = "dwc2", "dwc2-ecc"; reset-names = "dwc2", "dwc2-ecc";
clocks = <&clkmgr STRATIX10_USB_CLK>; clocks = <&clkmgr STRATIX10_USB_CLK>;
iommus = <&smmu 7>;
status = "disabled"; status = "disabled";
}; };
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment