xref: /freebsd-src/sys/contrib/device-tree/src/arm/marvell/armada-38x.dtsi (revision 0e8011faf58b743cc652e3b2ad0f7671227610df)
1*f126890aSEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2*f126890aSEmmanuel Vadot/*
3*f126890aSEmmanuel Vadot * Device Tree Include file for Marvell Armada 38x family of SoCs.
4*f126890aSEmmanuel Vadot *
5*f126890aSEmmanuel Vadot * Copyright (C) 2014 Marvell
6*f126890aSEmmanuel Vadot *
7*f126890aSEmmanuel Vadot * Lior Amsalem <alior@marvell.com>
8*f126890aSEmmanuel Vadot * Gregory CLEMENT <gregory.clement@free-electrons.com>
9*f126890aSEmmanuel Vadot * Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
10*f126890aSEmmanuel Vadot */
11*f126890aSEmmanuel Vadot
12*f126890aSEmmanuel Vadot#include <dt-bindings/interrupt-controller/arm-gic.h>
13*f126890aSEmmanuel Vadot#include <dt-bindings/interrupt-controller/irq.h>
14*f126890aSEmmanuel Vadot
15*f126890aSEmmanuel Vadot#define MBUS_ID(target,attributes) (((target) << 24) | ((attributes) << 16))
16*f126890aSEmmanuel Vadot
17*f126890aSEmmanuel Vadot/ {
18*f126890aSEmmanuel Vadot	#address-cells = <1>;
19*f126890aSEmmanuel Vadot	#size-cells = <1>;
20*f126890aSEmmanuel Vadot
21*f126890aSEmmanuel Vadot	model = "Marvell Armada 38x family SoC";
22*f126890aSEmmanuel Vadot	compatible = "marvell,armada380";
23*f126890aSEmmanuel Vadot
24*f126890aSEmmanuel Vadot	aliases {
25*f126890aSEmmanuel Vadot		gpio0 = &gpio0;
26*f126890aSEmmanuel Vadot		gpio1 = &gpio1;
27*f126890aSEmmanuel Vadot		serial0 = &uart0;
28*f126890aSEmmanuel Vadot		serial1 = &uart1;
29*f126890aSEmmanuel Vadot	};
30*f126890aSEmmanuel Vadot
31*f126890aSEmmanuel Vadot	pmu {
32*f126890aSEmmanuel Vadot		compatible = "arm,cortex-a9-pmu";
33*f126890aSEmmanuel Vadot		interrupts-extended = <&mpic 3>;
34*f126890aSEmmanuel Vadot	};
35*f126890aSEmmanuel Vadot
36*f126890aSEmmanuel Vadot	soc {
37*f126890aSEmmanuel Vadot		compatible = "marvell,armada380-mbus", "simple-bus";
38*f126890aSEmmanuel Vadot		#address-cells = <2>;
39*f126890aSEmmanuel Vadot		#size-cells = <1>;
40*f126890aSEmmanuel Vadot		controller = <&mbusc>;
41*f126890aSEmmanuel Vadot		interrupt-parent = <&gic>;
42*f126890aSEmmanuel Vadot		pcie-mem-aperture = <0xe0000000 0x8000000>;
43*f126890aSEmmanuel Vadot		pcie-io-aperture  = <0xe8000000 0x100000>;
44*f126890aSEmmanuel Vadot
45*f126890aSEmmanuel Vadot		bootrom {
46*f126890aSEmmanuel Vadot			compatible = "marvell,bootrom";
47*f126890aSEmmanuel Vadot			reg = <MBUS_ID(0x01, 0x1d) 0 0x200000>;
48*f126890aSEmmanuel Vadot		};
49*f126890aSEmmanuel Vadot
50*f126890aSEmmanuel Vadot		devbus_bootcs: devbus-bootcs {
51*f126890aSEmmanuel Vadot			compatible = "marvell,mvebu-devbus";
52*f126890aSEmmanuel Vadot			reg = <MBUS_ID(0xf0, 0x01) 0x10400 0x8>;
53*f126890aSEmmanuel Vadot			ranges = <0 MBUS_ID(0x01, 0x2f) 0 0xffffffff>;
54*f126890aSEmmanuel Vadot			#address-cells = <1>;
55*f126890aSEmmanuel Vadot			#size-cells = <1>;
56*f126890aSEmmanuel Vadot			clocks = <&coreclk 0>;
57*f126890aSEmmanuel Vadot			status = "disabled";
58*f126890aSEmmanuel Vadot		};
59*f126890aSEmmanuel Vadot
60*f126890aSEmmanuel Vadot		devbus_cs0: devbus-cs0 {
61*f126890aSEmmanuel Vadot			compatible = "marvell,mvebu-devbus";
62*f126890aSEmmanuel Vadot			reg = <MBUS_ID(0xf0, 0x01) 0x10408 0x8>;
63*f126890aSEmmanuel Vadot			ranges = <0 MBUS_ID(0x01, 0x3e) 0 0xffffffff>;
64*f126890aSEmmanuel Vadot			#address-cells = <1>;
65*f126890aSEmmanuel Vadot			#size-cells = <1>;
66*f126890aSEmmanuel Vadot			clocks = <&coreclk 0>;
67*f126890aSEmmanuel Vadot			status = "disabled";
68*f126890aSEmmanuel Vadot		};
69*f126890aSEmmanuel Vadot
70*f126890aSEmmanuel Vadot		devbus_cs1: devbus-cs1 {
71*f126890aSEmmanuel Vadot			compatible = "marvell,mvebu-devbus";
72*f126890aSEmmanuel Vadot			reg = <MBUS_ID(0xf0, 0x01) 0x10410 0x8>;
73*f126890aSEmmanuel Vadot			ranges = <0 MBUS_ID(0x01, 0x3d) 0 0xffffffff>;
74*f126890aSEmmanuel Vadot			#address-cells = <1>;
75*f126890aSEmmanuel Vadot			#size-cells = <1>;
76*f126890aSEmmanuel Vadot			clocks = <&coreclk 0>;
77*f126890aSEmmanuel Vadot			status = "disabled";
78*f126890aSEmmanuel Vadot		};
79*f126890aSEmmanuel Vadot
80*f126890aSEmmanuel Vadot		devbus_cs2: devbus-cs2 {
81*f126890aSEmmanuel Vadot			compatible = "marvell,mvebu-devbus";
82*f126890aSEmmanuel Vadot			reg = <MBUS_ID(0xf0, 0x01) 0x10418 0x8>;
83*f126890aSEmmanuel Vadot			ranges = <0 MBUS_ID(0x01, 0x3b) 0 0xffffffff>;
84*f126890aSEmmanuel Vadot			#address-cells = <1>;
85*f126890aSEmmanuel Vadot			#size-cells = <1>;
86*f126890aSEmmanuel Vadot			clocks = <&coreclk 0>;
87*f126890aSEmmanuel Vadot			status = "disabled";
88*f126890aSEmmanuel Vadot		};
89*f126890aSEmmanuel Vadot
90*f126890aSEmmanuel Vadot		devbus_cs3: devbus-cs3 {
91*f126890aSEmmanuel Vadot			compatible = "marvell,mvebu-devbus";
92*f126890aSEmmanuel Vadot			reg = <MBUS_ID(0xf0, 0x01) 0x10420 0x8>;
93*f126890aSEmmanuel Vadot			ranges = <0 MBUS_ID(0x01, 0x37) 0 0xffffffff>;
94*f126890aSEmmanuel Vadot			#address-cells = <1>;
95*f126890aSEmmanuel Vadot			#size-cells = <1>;
96*f126890aSEmmanuel Vadot			clocks = <&coreclk 0>;
97*f126890aSEmmanuel Vadot			status = "disabled";
98*f126890aSEmmanuel Vadot		};
99*f126890aSEmmanuel Vadot
100*f126890aSEmmanuel Vadot		internal-regs {
101*f126890aSEmmanuel Vadot			compatible = "simple-bus";
102*f126890aSEmmanuel Vadot			#address-cells = <1>;
103*f126890aSEmmanuel Vadot			#size-cells = <1>;
104*f126890aSEmmanuel Vadot			ranges = <0 MBUS_ID(0xf0, 0x01) 0 0x100000>;
105*f126890aSEmmanuel Vadot
106*f126890aSEmmanuel Vadot			sdramc: sdramc@1400 {
107*f126890aSEmmanuel Vadot				compatible = "marvell,armada-xp-sdram-controller";
108*f126890aSEmmanuel Vadot				reg = <0x1400 0x500>;
109*f126890aSEmmanuel Vadot			};
110*f126890aSEmmanuel Vadot
111*f126890aSEmmanuel Vadot			L2: cache-controller@8000 {
112*f126890aSEmmanuel Vadot				compatible = "arm,pl310-cache";
113*f126890aSEmmanuel Vadot				reg = <0x8000 0x1000>;
114*f126890aSEmmanuel Vadot				cache-unified;
115*f126890aSEmmanuel Vadot				cache-level = <2>;
116*f126890aSEmmanuel Vadot				arm,double-linefill-incr = <0>;
117*f126890aSEmmanuel Vadot				arm,double-linefill-wrap = <0>;
118*f126890aSEmmanuel Vadot				arm,double-linefill = <0>;
119*f126890aSEmmanuel Vadot				prefetch-data = <1>;
120*f126890aSEmmanuel Vadot			};
121*f126890aSEmmanuel Vadot
122*f126890aSEmmanuel Vadot			scu@c000 {
123*f126890aSEmmanuel Vadot				compatible = "arm,cortex-a9-scu";
124*f126890aSEmmanuel Vadot				reg = <0xc000 0x58>;
125*f126890aSEmmanuel Vadot			};
126*f126890aSEmmanuel Vadot
127*f126890aSEmmanuel Vadot			timer@c200 {
128*f126890aSEmmanuel Vadot				compatible = "arm,cortex-a9-global-timer";
129*f126890aSEmmanuel Vadot				reg = <0xc200 0x20>;
130*f126890aSEmmanuel Vadot				interrupts = <GIC_PPI 11 (IRQ_TYPE_EDGE_RISING | GIC_CPU_MASK_SIMPLE(2))>;
131*f126890aSEmmanuel Vadot				clocks = <&coreclk 2>;
132*f126890aSEmmanuel Vadot			};
133*f126890aSEmmanuel Vadot
134*f126890aSEmmanuel Vadot			timer@c600 {
135*f126890aSEmmanuel Vadot				compatible = "arm,cortex-a9-twd-timer";
136*f126890aSEmmanuel Vadot				reg = <0xc600 0x20>;
137*f126890aSEmmanuel Vadot				interrupts = <GIC_PPI 13 (IRQ_TYPE_EDGE_RISING | GIC_CPU_MASK_SIMPLE(2))>;
138*f126890aSEmmanuel Vadot				clocks = <&coreclk 2>;
139*f126890aSEmmanuel Vadot			};
140*f126890aSEmmanuel Vadot
141*f126890aSEmmanuel Vadot			gic: interrupt-controller@d000 {
142*f126890aSEmmanuel Vadot				compatible = "arm,cortex-a9-gic";
143*f126890aSEmmanuel Vadot				#interrupt-cells = <3>;
144*f126890aSEmmanuel Vadot				#size-cells = <0>;
145*f126890aSEmmanuel Vadot				interrupt-controller;
146*f126890aSEmmanuel Vadot				reg = <0xd000 0x1000>,
147*f126890aSEmmanuel Vadot				      <0xc100 0x100>;
148*f126890aSEmmanuel Vadot			};
149*f126890aSEmmanuel Vadot
150*f126890aSEmmanuel Vadot			i2c0: i2c@11000 {
151*f126890aSEmmanuel Vadot				compatible = "marvell,mv78230-a0-i2c", "marvell,mv64xxx-i2c";
152*f126890aSEmmanuel Vadot				reg = <0x11000 0x20>;
153*f126890aSEmmanuel Vadot				#address-cells = <1>;
154*f126890aSEmmanuel Vadot				#size-cells = <0>;
155*f126890aSEmmanuel Vadot				interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>;
156*f126890aSEmmanuel Vadot				clocks = <&coreclk 0>;
157*f126890aSEmmanuel Vadot				status = "disabled";
158*f126890aSEmmanuel Vadot			};
159*f126890aSEmmanuel Vadot
160*f126890aSEmmanuel Vadot			i2c1: i2c@11100 {
161*f126890aSEmmanuel Vadot				compatible = "marvell,mv78230-a0-i2c", "marvell,mv64xxx-i2c";
162*f126890aSEmmanuel Vadot				reg = <0x11100 0x20>;
163*f126890aSEmmanuel Vadot				#address-cells = <1>;
164*f126890aSEmmanuel Vadot				#size-cells = <0>;
165*f126890aSEmmanuel Vadot				interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>;
166*f126890aSEmmanuel Vadot				clocks = <&coreclk 0>;
167*f126890aSEmmanuel Vadot				status = "disabled";
168*f126890aSEmmanuel Vadot			};
169*f126890aSEmmanuel Vadot
170*f126890aSEmmanuel Vadot			uart0: serial@12000 {
171*f126890aSEmmanuel Vadot				compatible = "marvell,armada-38x-uart", "ns16550a";
172*f126890aSEmmanuel Vadot				reg = <0x12000 0x100>;
173*f126890aSEmmanuel Vadot				reg-shift = <2>;
174*f126890aSEmmanuel Vadot				interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
175*f126890aSEmmanuel Vadot				reg-io-width = <1>;
176*f126890aSEmmanuel Vadot				clocks = <&coreclk 0>;
177*f126890aSEmmanuel Vadot				status = "disabled";
178*f126890aSEmmanuel Vadot			};
179*f126890aSEmmanuel Vadot
180*f126890aSEmmanuel Vadot			uart1: serial@12100 {
181*f126890aSEmmanuel Vadot				compatible = "marvell,armada-38x-uart", "ns16550a";
182*f126890aSEmmanuel Vadot				reg = <0x12100 0x100>;
183*f126890aSEmmanuel Vadot				reg-shift = <2>;
184*f126890aSEmmanuel Vadot				interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>;
185*f126890aSEmmanuel Vadot				reg-io-width = <1>;
186*f126890aSEmmanuel Vadot				clocks = <&coreclk 0>;
187*f126890aSEmmanuel Vadot				status = "disabled";
188*f126890aSEmmanuel Vadot			};
189*f126890aSEmmanuel Vadot
190*f126890aSEmmanuel Vadot			pinctrl: pinctrl@18000 {
191*f126890aSEmmanuel Vadot				reg = <0x18000 0x20>;
192*f126890aSEmmanuel Vadot
193*f126890aSEmmanuel Vadot				ge0_rgmii_pins: ge-rgmii-pins-0 {
194*f126890aSEmmanuel Vadot					marvell,pins = "mpp6", "mpp7", "mpp8",
195*f126890aSEmmanuel Vadot						       "mpp9", "mpp10", "mpp11",
196*f126890aSEmmanuel Vadot						       "mpp12", "mpp13", "mpp14",
197*f126890aSEmmanuel Vadot						       "mpp15", "mpp16", "mpp17";
198*f126890aSEmmanuel Vadot					marvell,function = "ge0";
199*f126890aSEmmanuel Vadot				};
200*f126890aSEmmanuel Vadot
201*f126890aSEmmanuel Vadot				ge1_rgmii_pins: ge-rgmii-pins-1 {
202*f126890aSEmmanuel Vadot					marvell,pins = "mpp21", "mpp27", "mpp28",
203*f126890aSEmmanuel Vadot						       "mpp29", "mpp30", "mpp31",
204*f126890aSEmmanuel Vadot						       "mpp32", "mpp37", "mpp38",
205*f126890aSEmmanuel Vadot						       "mpp39", "mpp40", "mpp41";
206*f126890aSEmmanuel Vadot					marvell,function = "ge1";
207*f126890aSEmmanuel Vadot				};
208*f126890aSEmmanuel Vadot
209*f126890aSEmmanuel Vadot				i2c0_pins: i2c-pins-0 {
210*f126890aSEmmanuel Vadot					marvell,pins = "mpp2", "mpp3";
211*f126890aSEmmanuel Vadot					marvell,function = "i2c0";
212*f126890aSEmmanuel Vadot				};
213*f126890aSEmmanuel Vadot
214*f126890aSEmmanuel Vadot				mdio_pins: mdio-pins {
215*f126890aSEmmanuel Vadot					marvell,pins = "mpp4", "mpp5";
216*f126890aSEmmanuel Vadot					marvell,function = "ge";
217*f126890aSEmmanuel Vadot				};
218*f126890aSEmmanuel Vadot
219*f126890aSEmmanuel Vadot				ref_clk0_pins: ref-clk-pins-0 {
220*f126890aSEmmanuel Vadot					marvell,pins = "mpp45";
221*f126890aSEmmanuel Vadot					marvell,function = "ref";
222*f126890aSEmmanuel Vadot				};
223*f126890aSEmmanuel Vadot
224*f126890aSEmmanuel Vadot				ref_clk1_pins: ref-clk-pins-1 {
225*f126890aSEmmanuel Vadot					marvell,pins = "mpp46";
226*f126890aSEmmanuel Vadot					marvell,function = "ref";
227*f126890aSEmmanuel Vadot				};
228*f126890aSEmmanuel Vadot
229*f126890aSEmmanuel Vadot				spi0_pins: spi-pins-0 {
230*f126890aSEmmanuel Vadot					marvell,pins = "mpp22", "mpp23", "mpp24",
231*f126890aSEmmanuel Vadot						       "mpp25";
232*f126890aSEmmanuel Vadot					marvell,function = "spi0";
233*f126890aSEmmanuel Vadot				};
234*f126890aSEmmanuel Vadot
235*f126890aSEmmanuel Vadot				spi1_pins: spi-pins-1 {
236*f126890aSEmmanuel Vadot					marvell,pins = "mpp56", "mpp57", "mpp58",
237*f126890aSEmmanuel Vadot						       "mpp59";
238*f126890aSEmmanuel Vadot					marvell,function = "spi1";
239*f126890aSEmmanuel Vadot				};
240*f126890aSEmmanuel Vadot
241*f126890aSEmmanuel Vadot				nand_pins: nand-pins {
242*f126890aSEmmanuel Vadot					marvell,pins = "mpp22", "mpp34", "mpp23",
243*f126890aSEmmanuel Vadot						       "mpp33", "mpp38", "mpp28",
244*f126890aSEmmanuel Vadot						       "mpp40", "mpp42", "mpp35",
245*f126890aSEmmanuel Vadot						       "mpp36", "mpp25", "mpp30",
246*f126890aSEmmanuel Vadot						       "mpp32";
247*f126890aSEmmanuel Vadot					marvell,function = "dev";
248*f126890aSEmmanuel Vadot				};
249*f126890aSEmmanuel Vadot
250*f126890aSEmmanuel Vadot				nand_rb: nand-rb {
251*f126890aSEmmanuel Vadot					marvell,pins = "mpp41";
252*f126890aSEmmanuel Vadot					marvell,function = "nand";
253*f126890aSEmmanuel Vadot				};
254*f126890aSEmmanuel Vadot
255*f126890aSEmmanuel Vadot				uart0_pins: uart-pins-0 {
256*f126890aSEmmanuel Vadot					marvell,pins = "mpp0", "mpp1";
257*f126890aSEmmanuel Vadot					marvell,function = "ua0";
258*f126890aSEmmanuel Vadot				};
259*f126890aSEmmanuel Vadot
260*f126890aSEmmanuel Vadot				uart1_pins: uart-pins-1 {
261*f126890aSEmmanuel Vadot					marvell,pins = "mpp19", "mpp20";
262*f126890aSEmmanuel Vadot					marvell,function = "ua1";
263*f126890aSEmmanuel Vadot				};
264*f126890aSEmmanuel Vadot
265*f126890aSEmmanuel Vadot				sdhci_pins: sdhci-pins {
266*f126890aSEmmanuel Vadot					marvell,pins = "mpp48", "mpp49", "mpp50",
267*f126890aSEmmanuel Vadot						       "mpp52", "mpp53", "mpp54",
268*f126890aSEmmanuel Vadot						       "mpp55", "mpp57", "mpp58",
269*f126890aSEmmanuel Vadot						       "mpp59";
270*f126890aSEmmanuel Vadot					marvell,function = "sd0";
271*f126890aSEmmanuel Vadot				};
272*f126890aSEmmanuel Vadot
273*f126890aSEmmanuel Vadot				sata0_pins: sata-pins-0 {
274*f126890aSEmmanuel Vadot					marvell,pins = "mpp20";
275*f126890aSEmmanuel Vadot					marvell,function = "sata0";
276*f126890aSEmmanuel Vadot				};
277*f126890aSEmmanuel Vadot
278*f126890aSEmmanuel Vadot				sata1_pins: sata-pins-1 {
279*f126890aSEmmanuel Vadot					marvell,pins = "mpp19";
280*f126890aSEmmanuel Vadot					marvell,function = "sata1";
281*f126890aSEmmanuel Vadot				};
282*f126890aSEmmanuel Vadot
283*f126890aSEmmanuel Vadot				sata2_pins: sata-pins-2 {
284*f126890aSEmmanuel Vadot					marvell,pins = "mpp47";
285*f126890aSEmmanuel Vadot					marvell,function = "sata2";
286*f126890aSEmmanuel Vadot				};
287*f126890aSEmmanuel Vadot
288*f126890aSEmmanuel Vadot				sata3_pins: sata-pins-3 {
289*f126890aSEmmanuel Vadot					marvell,pins = "mpp44";
290*f126890aSEmmanuel Vadot					marvell,function = "sata3";
291*f126890aSEmmanuel Vadot				};
292*f126890aSEmmanuel Vadot
293*f126890aSEmmanuel Vadot				i2s_pins: i2s-pins {
294*f126890aSEmmanuel Vadot					marvell,pins = "mpp48", "mpp49",
295*f126890aSEmmanuel Vadot						       "mpp50", "mpp51",
296*f126890aSEmmanuel Vadot						       "mpp52", "mpp53";
297*f126890aSEmmanuel Vadot					marvell,function = "audio";
298*f126890aSEmmanuel Vadot				};
299*f126890aSEmmanuel Vadot
300*f126890aSEmmanuel Vadot				spdif_pins: spdif-pins {
301*f126890aSEmmanuel Vadot					marvell,pins = "mpp51";
302*f126890aSEmmanuel Vadot					marvell,function = "audio";
303*f126890aSEmmanuel Vadot				};
304*f126890aSEmmanuel Vadot			};
305*f126890aSEmmanuel Vadot
306*f126890aSEmmanuel Vadot			gpio0: gpio@18100 {
307*f126890aSEmmanuel Vadot				compatible = "marvell,armada-370-gpio",
308*f126890aSEmmanuel Vadot					     "marvell,orion-gpio";
309*f126890aSEmmanuel Vadot				reg = <0x18100 0x40>, <0x181c0 0x08>;
310*f126890aSEmmanuel Vadot				reg-names = "gpio", "pwm";
311*f126890aSEmmanuel Vadot				ngpios = <32>;
312*f126890aSEmmanuel Vadot				gpio-controller;
313*f126890aSEmmanuel Vadot				gpio-ranges = <&pinctrl 0 0 32>;
314*f126890aSEmmanuel Vadot				#gpio-cells = <2>;
315*f126890aSEmmanuel Vadot				#pwm-cells = <2>;
316*f126890aSEmmanuel Vadot				interrupt-controller;
317*f126890aSEmmanuel Vadot				#interrupt-cells = <2>;
318*f126890aSEmmanuel Vadot				interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>,
319*f126890aSEmmanuel Vadot					     <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>,
320*f126890aSEmmanuel Vadot					     <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>,
321*f126890aSEmmanuel Vadot					     <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>;
322*f126890aSEmmanuel Vadot				clocks = <&coreclk 0>;
323*f126890aSEmmanuel Vadot			};
324*f126890aSEmmanuel Vadot
325*f126890aSEmmanuel Vadot			gpio1: gpio@18140 {
326*f126890aSEmmanuel Vadot				compatible = "marvell,armada-370-gpio",
327*f126890aSEmmanuel Vadot					     "marvell,orion-gpio";
328*f126890aSEmmanuel Vadot				reg = <0x18140 0x40>, <0x181c8 0x08>;
329*f126890aSEmmanuel Vadot				reg-names = "gpio", "pwm";
330*f126890aSEmmanuel Vadot				ngpios = <28>;
331*f126890aSEmmanuel Vadot				gpio-controller;
332*f126890aSEmmanuel Vadot				gpio-ranges = <&pinctrl 0 32 28>;
333*f126890aSEmmanuel Vadot				#gpio-cells = <2>;
334*f126890aSEmmanuel Vadot				#pwm-cells = <2>;
335*f126890aSEmmanuel Vadot				interrupt-controller;
336*f126890aSEmmanuel Vadot				#interrupt-cells = <2>;
337*f126890aSEmmanuel Vadot				interrupts = <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>,
338*f126890aSEmmanuel Vadot					     <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>,
339*f126890aSEmmanuel Vadot					     <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>,
340*f126890aSEmmanuel Vadot					     <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>;
341*f126890aSEmmanuel Vadot				clocks = <&coreclk 0>;
342*f126890aSEmmanuel Vadot			};
343*f126890aSEmmanuel Vadot
344*f126890aSEmmanuel Vadot			systemc: system-controller@18200 {
345*f126890aSEmmanuel Vadot				compatible = "marvell,armada-380-system-controller",
346*f126890aSEmmanuel Vadot					     "marvell,armada-370-xp-system-controller";
347*f126890aSEmmanuel Vadot				reg = <0x18200 0x100>;
348*f126890aSEmmanuel Vadot			};
349*f126890aSEmmanuel Vadot
350*f126890aSEmmanuel Vadot			gateclk: clock-gating-control@18220 {
351*f126890aSEmmanuel Vadot				compatible = "marvell,armada-380-gating-clock";
352*f126890aSEmmanuel Vadot				reg = <0x18220 0x4>;
353*f126890aSEmmanuel Vadot				clocks = <&coreclk 0>;
354*f126890aSEmmanuel Vadot				#clock-cells = <1>;
355*f126890aSEmmanuel Vadot			};
356*f126890aSEmmanuel Vadot
357*f126890aSEmmanuel Vadot			comphy: phy@18300 {
358*f126890aSEmmanuel Vadot				compatible = "marvell,armada-380-comphy";
359*f126890aSEmmanuel Vadot				reg-names = "comphy", "conf";
360*f126890aSEmmanuel Vadot				reg = <0x18300 0x100>, <0x18460 4>;
361*f126890aSEmmanuel Vadot				#address-cells = <1>;
362*f126890aSEmmanuel Vadot				#size-cells = <0>;
363*f126890aSEmmanuel Vadot
364*f126890aSEmmanuel Vadot				comphy0: phy@0 {
365*f126890aSEmmanuel Vadot					reg = <0>;
366*f126890aSEmmanuel Vadot					#phy-cells = <1>;
367*f126890aSEmmanuel Vadot				};
368*f126890aSEmmanuel Vadot
369*f126890aSEmmanuel Vadot				comphy1: phy@1 {
370*f126890aSEmmanuel Vadot					reg = <1>;
371*f126890aSEmmanuel Vadot					#phy-cells = <1>;
372*f126890aSEmmanuel Vadot				};
373*f126890aSEmmanuel Vadot
374*f126890aSEmmanuel Vadot				comphy2: phy@2 {
375*f126890aSEmmanuel Vadot					reg = <2>;
376*f126890aSEmmanuel Vadot					#phy-cells = <1>;
377*f126890aSEmmanuel Vadot				};
378*f126890aSEmmanuel Vadot
379*f126890aSEmmanuel Vadot				comphy3: phy@3 {
380*f126890aSEmmanuel Vadot					reg = <3>;
381*f126890aSEmmanuel Vadot					#phy-cells = <1>;
382*f126890aSEmmanuel Vadot				};
383*f126890aSEmmanuel Vadot
384*f126890aSEmmanuel Vadot				comphy4: phy@4 {
385*f126890aSEmmanuel Vadot					reg = <4>;
386*f126890aSEmmanuel Vadot					#phy-cells = <1>;
387*f126890aSEmmanuel Vadot				};
388*f126890aSEmmanuel Vadot
389*f126890aSEmmanuel Vadot				comphy5: phy@5 {
390*f126890aSEmmanuel Vadot					reg = <5>;
391*f126890aSEmmanuel Vadot					#phy-cells = <1>;
392*f126890aSEmmanuel Vadot				};
393*f126890aSEmmanuel Vadot			};
394*f126890aSEmmanuel Vadot
395*f126890aSEmmanuel Vadot			coreclk: mvebu-sar@18600 {
396*f126890aSEmmanuel Vadot				compatible = "marvell,armada-380-core-clock";
397*f126890aSEmmanuel Vadot				reg = <0x18600 0x04>;
398*f126890aSEmmanuel Vadot				#clock-cells = <1>;
399*f126890aSEmmanuel Vadot			};
400*f126890aSEmmanuel Vadot
401*f126890aSEmmanuel Vadot			mbusc: mbus-controller@20000 {
402*f126890aSEmmanuel Vadot				compatible = "marvell,mbus-controller";
403*f126890aSEmmanuel Vadot				reg = <0x20000 0x100>, <0x20180 0x20>,
404*f126890aSEmmanuel Vadot				      <0x20250 0x8>;
405*f126890aSEmmanuel Vadot			};
406*f126890aSEmmanuel Vadot
407*f126890aSEmmanuel Vadot			mpic: interrupt-controller@20a00 {
408*f126890aSEmmanuel Vadot				compatible = "marvell,mpic";
409*f126890aSEmmanuel Vadot				reg = <0x20a00 0x2d0>, <0x21070 0x58>;
410*f126890aSEmmanuel Vadot				#interrupt-cells = <1>;
411*f126890aSEmmanuel Vadot				interrupt-controller;
412*f126890aSEmmanuel Vadot				msi-controller;
413*f126890aSEmmanuel Vadot				interrupts = <GIC_PPI 15 IRQ_TYPE_LEVEL_HIGH>;
414*f126890aSEmmanuel Vadot			};
415*f126890aSEmmanuel Vadot
416*f126890aSEmmanuel Vadot			timer: timer@20300 {
417*f126890aSEmmanuel Vadot				compatible = "marvell,armada-380-timer",
418*f126890aSEmmanuel Vadot					     "marvell,armada-xp-timer";
419*f126890aSEmmanuel Vadot				reg = <0x20300 0x30>, <0x21040 0x30>;
420*f126890aSEmmanuel Vadot				interrupts-extended = <&gic  GIC_SPI  8 IRQ_TYPE_LEVEL_HIGH>,
421*f126890aSEmmanuel Vadot						      <&gic  GIC_SPI  9 IRQ_TYPE_LEVEL_HIGH>,
422*f126890aSEmmanuel Vadot						      <&gic  GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>,
423*f126890aSEmmanuel Vadot						      <&gic  GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>,
424*f126890aSEmmanuel Vadot						      <&mpic 5>,
425*f126890aSEmmanuel Vadot						      <&mpic 6>;
426*f126890aSEmmanuel Vadot				clocks = <&coreclk 2>, <&refclk>;
427*f126890aSEmmanuel Vadot				clock-names = "nbclk", "fixed";
428*f126890aSEmmanuel Vadot			};
429*f126890aSEmmanuel Vadot
430*f126890aSEmmanuel Vadot			watchdog: watchdog@20300 {
431*f126890aSEmmanuel Vadot				compatible = "marvell,armada-380-wdt";
432*f126890aSEmmanuel Vadot				reg = <0x20300 0x34>, <0x20704 0x4>, <0x18260 0x4>;
433*f126890aSEmmanuel Vadot				clocks = <&coreclk 2>, <&refclk>;
434*f126890aSEmmanuel Vadot				clock-names = "nbclk", "fixed";
435*f126890aSEmmanuel Vadot				interrupts-extended = <&gic GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>,
436*f126890aSEmmanuel Vadot						      <&gic GIC_SPI  9 IRQ_TYPE_LEVEL_HIGH>;
437*f126890aSEmmanuel Vadot			};
438*f126890aSEmmanuel Vadot
439*f126890aSEmmanuel Vadot			cpurst: cpurst@20800 {
440*f126890aSEmmanuel Vadot				compatible = "marvell,armada-370-cpu-reset";
441*f126890aSEmmanuel Vadot				reg = <0x20800 0x10>;
442*f126890aSEmmanuel Vadot			};
443*f126890aSEmmanuel Vadot
444*f126890aSEmmanuel Vadot			mpcore-soc-ctrl@20d20 {
445*f126890aSEmmanuel Vadot				compatible = "marvell,armada-380-mpcore-soc-ctrl";
446*f126890aSEmmanuel Vadot				reg = <0x20d20 0x6c>;
447*f126890aSEmmanuel Vadot			};
448*f126890aSEmmanuel Vadot
449*f126890aSEmmanuel Vadot			coherencyfab: coherency-fabric@21010 {
450*f126890aSEmmanuel Vadot				compatible = "marvell,armada-380-coherency-fabric";
451*f126890aSEmmanuel Vadot				reg = <0x21010 0x1c>;
452*f126890aSEmmanuel Vadot			};
453*f126890aSEmmanuel Vadot
454*f126890aSEmmanuel Vadot			pmsu: pmsu@22000 {
455*f126890aSEmmanuel Vadot				compatible = "marvell,armada-380-pmsu";
456*f126890aSEmmanuel Vadot				reg = <0x22000 0x1000>;
457*f126890aSEmmanuel Vadot			};
458*f126890aSEmmanuel Vadot
459*f126890aSEmmanuel Vadot			/*
460*f126890aSEmmanuel Vadot			 * As a special exception to the "order by
461*f126890aSEmmanuel Vadot			 * register address" rule, the eth0 node is
462*f126890aSEmmanuel Vadot			 * placed here to ensure that it gets
463*f126890aSEmmanuel Vadot			 * registered as the first interface, since
464*f126890aSEmmanuel Vadot			 * the network subsystem doesn't allow naming
465*f126890aSEmmanuel Vadot			 * interfaces using DT aliases. Without this,
466*f126890aSEmmanuel Vadot			 * the ordering of interfaces is different
467*f126890aSEmmanuel Vadot			 * from the one used in U-Boot and the
468*f126890aSEmmanuel Vadot			 * labeling of interfaces on the boards, which
469*f126890aSEmmanuel Vadot			 * is very confusing for users.
470*f126890aSEmmanuel Vadot			 */
471*f126890aSEmmanuel Vadot			eth0: ethernet@70000 {
472*f126890aSEmmanuel Vadot				compatible = "marvell,armada-370-neta";
473*f126890aSEmmanuel Vadot				reg = <0x70000 0x4000>;
474*f126890aSEmmanuel Vadot				interrupts-extended = <&mpic 8>;
475*f126890aSEmmanuel Vadot				clocks = <&gateclk 4>;
476*f126890aSEmmanuel Vadot				tx-csum-limit = <9800>;
477*f126890aSEmmanuel Vadot				status = "disabled";
478*f126890aSEmmanuel Vadot			};
479*f126890aSEmmanuel Vadot
480*f126890aSEmmanuel Vadot			eth1: ethernet@30000 {
481*f126890aSEmmanuel Vadot				compatible = "marvell,armada-370-neta";
482*f126890aSEmmanuel Vadot				reg = <0x30000 0x4000>;
483*f126890aSEmmanuel Vadot				interrupts-extended = <&mpic 10>;
484*f126890aSEmmanuel Vadot				clocks = <&gateclk 3>;
485*f126890aSEmmanuel Vadot				status = "disabled";
486*f126890aSEmmanuel Vadot			};
487*f126890aSEmmanuel Vadot
488*f126890aSEmmanuel Vadot			eth2: ethernet@34000 {
489*f126890aSEmmanuel Vadot				compatible = "marvell,armada-370-neta";
490*f126890aSEmmanuel Vadot				reg = <0x34000 0x4000>;
491*f126890aSEmmanuel Vadot				interrupts-extended = <&mpic 12>;
492*f126890aSEmmanuel Vadot				clocks = <&gateclk 2>;
493*f126890aSEmmanuel Vadot				status = "disabled";
494*f126890aSEmmanuel Vadot			};
495*f126890aSEmmanuel Vadot
496*f126890aSEmmanuel Vadot			usb0: usb@58000 {
497*f126890aSEmmanuel Vadot				compatible = "marvell,orion-ehci";
498*f126890aSEmmanuel Vadot				reg = <0x58000 0x500>;
499*f126890aSEmmanuel Vadot				interrupts = <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>;
500*f126890aSEmmanuel Vadot				clocks = <&gateclk 18>;
501*f126890aSEmmanuel Vadot				status = "disabled";
502*f126890aSEmmanuel Vadot			};
503*f126890aSEmmanuel Vadot
504*f126890aSEmmanuel Vadot			xor0: xor@60800 {
505*f126890aSEmmanuel Vadot				compatible = "marvell,armada-380-xor", "marvell,orion-xor";
506*f126890aSEmmanuel Vadot				reg = <0x60800 0x100
507*f126890aSEmmanuel Vadot				       0x60a00 0x100>;
508*f126890aSEmmanuel Vadot				clocks = <&gateclk 22>;
509*f126890aSEmmanuel Vadot				status = "okay";
510*f126890aSEmmanuel Vadot
511*f126890aSEmmanuel Vadot				xor00 {
512*f126890aSEmmanuel Vadot					interrupts = <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>;
513*f126890aSEmmanuel Vadot					dmacap,memcpy;
514*f126890aSEmmanuel Vadot					dmacap,xor;
515*f126890aSEmmanuel Vadot				};
516*f126890aSEmmanuel Vadot				xor01 {
517*f126890aSEmmanuel Vadot					interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>;
518*f126890aSEmmanuel Vadot					dmacap,memcpy;
519*f126890aSEmmanuel Vadot					dmacap,xor;
520*f126890aSEmmanuel Vadot					dmacap,memset;
521*f126890aSEmmanuel Vadot				};
522*f126890aSEmmanuel Vadot			};
523*f126890aSEmmanuel Vadot
524*f126890aSEmmanuel Vadot			xor1: xor@60900 {
525*f126890aSEmmanuel Vadot				compatible = "marvell,armada-380-xor", "marvell,orion-xor";
526*f126890aSEmmanuel Vadot				reg = <0x60900 0x100
527*f126890aSEmmanuel Vadot				       0x60b00 0x100>;
528*f126890aSEmmanuel Vadot				clocks = <&gateclk 28>;
529*f126890aSEmmanuel Vadot				status = "okay";
530*f126890aSEmmanuel Vadot
531*f126890aSEmmanuel Vadot				xor10 {
532*f126890aSEmmanuel Vadot					interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>;
533*f126890aSEmmanuel Vadot					dmacap,memcpy;
534*f126890aSEmmanuel Vadot					dmacap,xor;
535*f126890aSEmmanuel Vadot				};
536*f126890aSEmmanuel Vadot				xor11 {
537*f126890aSEmmanuel Vadot					interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>;
538*f126890aSEmmanuel Vadot					dmacap,memcpy;
539*f126890aSEmmanuel Vadot					dmacap,xor;
540*f126890aSEmmanuel Vadot					dmacap,memset;
541*f126890aSEmmanuel Vadot				};
542*f126890aSEmmanuel Vadot			};
543*f126890aSEmmanuel Vadot
544*f126890aSEmmanuel Vadot			mdio: mdio@72004 {
545*f126890aSEmmanuel Vadot				#address-cells = <1>;
546*f126890aSEmmanuel Vadot				#size-cells = <0>;
547*f126890aSEmmanuel Vadot				compatible = "marvell,orion-mdio";
548*f126890aSEmmanuel Vadot				reg = <0x72004 0x4>;
549*f126890aSEmmanuel Vadot				clocks = <&gateclk 4>;
550*f126890aSEmmanuel Vadot			};
551*f126890aSEmmanuel Vadot
552*f126890aSEmmanuel Vadot			cesa: crypto@90000 {
553*f126890aSEmmanuel Vadot				compatible = "marvell,armada-38x-crypto";
554*f126890aSEmmanuel Vadot				reg = <0x90000 0x10000>;
555*f126890aSEmmanuel Vadot				reg-names = "regs";
556*f126890aSEmmanuel Vadot				interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>,
557*f126890aSEmmanuel Vadot					     <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>;
558*f126890aSEmmanuel Vadot				clocks = <&gateclk 23>, <&gateclk 21>,
559*f126890aSEmmanuel Vadot					 <&gateclk 14>, <&gateclk 16>;
560*f126890aSEmmanuel Vadot				clock-names = "cesa0", "cesa1",
561*f126890aSEmmanuel Vadot					      "cesaz0", "cesaz1";
562*f126890aSEmmanuel Vadot				marvell,crypto-srams = <&crypto_sram0>,
563*f126890aSEmmanuel Vadot						       <&crypto_sram1>;
564*f126890aSEmmanuel Vadot				marvell,crypto-sram-size = <0x800>;
565*f126890aSEmmanuel Vadot			};
566*f126890aSEmmanuel Vadot
567*f126890aSEmmanuel Vadot			rtc: rtc@a3800 {
568*f126890aSEmmanuel Vadot				compatible = "marvell,armada-380-rtc";
569*f126890aSEmmanuel Vadot				reg = <0xa3800 0x20>, <0x184a0 0x0c>;
570*f126890aSEmmanuel Vadot				reg-names = "rtc", "rtc-soc";
571*f126890aSEmmanuel Vadot				interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>;
572*f126890aSEmmanuel Vadot			};
573*f126890aSEmmanuel Vadot
574*f126890aSEmmanuel Vadot			ahci0: sata@a8000 {
575*f126890aSEmmanuel Vadot				compatible = "marvell,armada-380-ahci";
576*f126890aSEmmanuel Vadot				reg = <0xa8000 0x2000>;
577*f126890aSEmmanuel Vadot				interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>;
578*f126890aSEmmanuel Vadot				clocks = <&gateclk 15>;
579*f126890aSEmmanuel Vadot				status = "disabled";
580*f126890aSEmmanuel Vadot			};
581*f126890aSEmmanuel Vadot
582*f126890aSEmmanuel Vadot			bm: bm@c8000 {
583*f126890aSEmmanuel Vadot				compatible = "marvell,armada-380-neta-bm";
584*f126890aSEmmanuel Vadot				reg = <0xc8000 0xac>;
585*f126890aSEmmanuel Vadot				clocks = <&gateclk 13>;
586*f126890aSEmmanuel Vadot				internal-mem = <&bm_bppi>;
587*f126890aSEmmanuel Vadot				status = "disabled";
588*f126890aSEmmanuel Vadot			};
589*f126890aSEmmanuel Vadot
590*f126890aSEmmanuel Vadot			ahci1: sata@e0000 {
591*f126890aSEmmanuel Vadot				compatible = "marvell,armada-380-ahci";
592*f126890aSEmmanuel Vadot				reg = <0xe0000 0x2000>;
593*f126890aSEmmanuel Vadot				interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>;
594*f126890aSEmmanuel Vadot				clocks = <&gateclk 30>;
595*f126890aSEmmanuel Vadot				status = "disabled";
596*f126890aSEmmanuel Vadot			};
597*f126890aSEmmanuel Vadot
598*f126890aSEmmanuel Vadot			coredivclk: clock@e4250 {
599*f126890aSEmmanuel Vadot				compatible = "marvell,armada-380-corediv-clock";
600*f126890aSEmmanuel Vadot				reg = <0xe4250 0xc>;
601*f126890aSEmmanuel Vadot				#clock-cells = <1>;
602*f126890aSEmmanuel Vadot				clocks = <&mainpll>;
603*f126890aSEmmanuel Vadot				clock-output-names = "nand";
604*f126890aSEmmanuel Vadot			};
605*f126890aSEmmanuel Vadot
606*f126890aSEmmanuel Vadot			thermal: thermal@e8078 {
607*f126890aSEmmanuel Vadot				compatible = "marvell,armada380-thermal";
608*f126890aSEmmanuel Vadot				reg = <0xe4078 0x4>, <0xe4070 0x8>;
609*f126890aSEmmanuel Vadot				status = "okay";
610*f126890aSEmmanuel Vadot			};
611*f126890aSEmmanuel Vadot
612*f126890aSEmmanuel Vadot			nand_controller: nand-controller@d0000 {
613*f126890aSEmmanuel Vadot				compatible = "marvell,armada370-nand-controller";
614*f126890aSEmmanuel Vadot				reg = <0xd0000 0x54>;
615*f126890aSEmmanuel Vadot				#address-cells = <1>;
616*f126890aSEmmanuel Vadot				#size-cells = <0>;
617*f126890aSEmmanuel Vadot				interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>;
618*f126890aSEmmanuel Vadot				clocks = <&coredivclk 0>;
619*f126890aSEmmanuel Vadot				status = "disabled";
620*f126890aSEmmanuel Vadot			};
621*f126890aSEmmanuel Vadot
622*f126890aSEmmanuel Vadot			sdhci: sdhci@d8000 {
623*f126890aSEmmanuel Vadot				compatible = "marvell,armada-380-sdhci";
624*f126890aSEmmanuel Vadot				reg-names = "sdhci", "mbus", "conf-sdio3";
625*f126890aSEmmanuel Vadot				reg = <0xd8000 0x1000>,
626*f126890aSEmmanuel Vadot					<0xdc000 0x100>,
627*f126890aSEmmanuel Vadot					<0x18454 0x4>;
628*f126890aSEmmanuel Vadot				interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>;
629*f126890aSEmmanuel Vadot				clocks = <&gateclk 17>;
630*f126890aSEmmanuel Vadot				mrvl,clk-delay-cycles = <0x1F>;
631*f126890aSEmmanuel Vadot				status = "disabled";
632*f126890aSEmmanuel Vadot			};
633*f126890aSEmmanuel Vadot
634*f126890aSEmmanuel Vadot			audio_controller: audio-controller@e8000 {
635*f126890aSEmmanuel Vadot				#sound-dai-cells = <1>;
636*f126890aSEmmanuel Vadot				compatible = "marvell,armada-380-audio";
637*f126890aSEmmanuel Vadot				reg = <0xe8000 0x4000>, <0x18410 0xc>,
638*f126890aSEmmanuel Vadot				      <0x18204 0x4>;
639*f126890aSEmmanuel Vadot				reg-names = "i2s_regs", "pll_regs", "soc_ctrl";
640*f126890aSEmmanuel Vadot				interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>;
641*f126890aSEmmanuel Vadot				clocks = <&gateclk 0>;
642*f126890aSEmmanuel Vadot				clock-names = "internal";
643*f126890aSEmmanuel Vadot				status = "disabled";
644*f126890aSEmmanuel Vadot			};
645*f126890aSEmmanuel Vadot
646*f126890aSEmmanuel Vadot			usb3_0: usb3@f0000 {
647*f126890aSEmmanuel Vadot				compatible = "marvell,armada-380-xhci";
648*f126890aSEmmanuel Vadot				reg = <0xf0000 0x4000>,<0xf4000 0x4000>;
649*f126890aSEmmanuel Vadot				interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>;
650*f126890aSEmmanuel Vadot				clocks = <&gateclk 9>;
651*f126890aSEmmanuel Vadot				status = "disabled";
652*f126890aSEmmanuel Vadot			};
653*f126890aSEmmanuel Vadot
654*f126890aSEmmanuel Vadot			usb3_1: usb3@f8000 {
655*f126890aSEmmanuel Vadot				compatible = "marvell,armada-380-xhci";
656*f126890aSEmmanuel Vadot				reg = <0xf8000 0x4000>,<0xfc000 0x4000>;
657*f126890aSEmmanuel Vadot				interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>;
658*f126890aSEmmanuel Vadot				clocks = <&gateclk 10>;
659*f126890aSEmmanuel Vadot				status = "disabled";
660*f126890aSEmmanuel Vadot			};
661*f126890aSEmmanuel Vadot		};
662*f126890aSEmmanuel Vadot
663*f126890aSEmmanuel Vadot		crypto_sram0: sa-sram0 {
664*f126890aSEmmanuel Vadot			compatible = "mmio-sram";
665*f126890aSEmmanuel Vadot			reg = <MBUS_ID(0x09, 0x19) 0 0x800>;
666*f126890aSEmmanuel Vadot			clocks = <&gateclk 23>;
667*f126890aSEmmanuel Vadot			#address-cells = <1>;
668*f126890aSEmmanuel Vadot			#size-cells = <1>;
669*f126890aSEmmanuel Vadot			ranges = <0 MBUS_ID(0x09, 0x19) 0 0x800>;
670*f126890aSEmmanuel Vadot		};
671*f126890aSEmmanuel Vadot
672*f126890aSEmmanuel Vadot		crypto_sram1: sa-sram1 {
673*f126890aSEmmanuel Vadot			compatible = "mmio-sram";
674*f126890aSEmmanuel Vadot			reg = <MBUS_ID(0x09, 0x15) 0 0x800>;
675*f126890aSEmmanuel Vadot			clocks = <&gateclk 21>;
676*f126890aSEmmanuel Vadot			#address-cells = <1>;
677*f126890aSEmmanuel Vadot			#size-cells = <1>;
678*f126890aSEmmanuel Vadot			ranges = <0 MBUS_ID(0x09, 0x15) 0 0x800>;
679*f126890aSEmmanuel Vadot		};
680*f126890aSEmmanuel Vadot
681*f126890aSEmmanuel Vadot		bm_bppi: bm-bppi {
682*f126890aSEmmanuel Vadot			compatible = "mmio-sram";
683*f126890aSEmmanuel Vadot			reg = <MBUS_ID(0x0c, 0x04) 0 0x100000>;
684*f126890aSEmmanuel Vadot			ranges = <0 MBUS_ID(0x0c, 0x04) 0 0x100000>;
685*f126890aSEmmanuel Vadot			#address-cells = <1>;
686*f126890aSEmmanuel Vadot			#size-cells = <1>;
687*f126890aSEmmanuel Vadot			clocks = <&gateclk 13>;
688*f126890aSEmmanuel Vadot			no-memory-wc;
689*f126890aSEmmanuel Vadot			status = "disabled";
690*f126890aSEmmanuel Vadot		};
691*f126890aSEmmanuel Vadot
692*f126890aSEmmanuel Vadot		spi0: spi@10600 {
693*f126890aSEmmanuel Vadot			compatible = "marvell,armada-380-spi",
694*f126890aSEmmanuel Vadot					"marvell,orion-spi";
695*f126890aSEmmanuel Vadot			reg = <MBUS_ID(0xf0, 0x01) 0x10600 0x50>;
696*f126890aSEmmanuel Vadot			#address-cells = <1>;
697*f126890aSEmmanuel Vadot			#size-cells = <0>;
698*f126890aSEmmanuel Vadot			cell-index = <0>;
699*f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>;
700*f126890aSEmmanuel Vadot			clocks = <&coreclk 0>;
701*f126890aSEmmanuel Vadot			status = "disabled";
702*f126890aSEmmanuel Vadot		};
703*f126890aSEmmanuel Vadot
704*f126890aSEmmanuel Vadot		spi1: spi@10680 {
705*f126890aSEmmanuel Vadot			compatible = "marvell,armada-380-spi",
706*f126890aSEmmanuel Vadot					"marvell,orion-spi";
707*f126890aSEmmanuel Vadot			reg = <MBUS_ID(0xf0, 0x01) 0x10680 0x50>;
708*f126890aSEmmanuel Vadot			#address-cells = <1>;
709*f126890aSEmmanuel Vadot			#size-cells = <0>;
710*f126890aSEmmanuel Vadot			cell-index = <1>;
711*f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>;
712*f126890aSEmmanuel Vadot			clocks = <&coreclk 0>;
713*f126890aSEmmanuel Vadot			status = "disabled";
714*f126890aSEmmanuel Vadot		};
715*f126890aSEmmanuel Vadot	};
716*f126890aSEmmanuel Vadot
717*f126890aSEmmanuel Vadot	clocks {
718*f126890aSEmmanuel Vadot		/* 1 GHz fixed main PLL */
719*f126890aSEmmanuel Vadot		mainpll: mainpll {
720*f126890aSEmmanuel Vadot			compatible = "fixed-clock";
721*f126890aSEmmanuel Vadot			#clock-cells = <0>;
722*f126890aSEmmanuel Vadot			clock-frequency = <1000000000>;
723*f126890aSEmmanuel Vadot		};
724*f126890aSEmmanuel Vadot
725*f126890aSEmmanuel Vadot		/* 25 MHz reference crystal */
726*f126890aSEmmanuel Vadot		refclk: oscillator {
727*f126890aSEmmanuel Vadot			compatible = "fixed-clock";
728*f126890aSEmmanuel Vadot			#clock-cells = <0>;
729*f126890aSEmmanuel Vadot			clock-frequency = <25000000>;
730*f126890aSEmmanuel Vadot		};
731*f126890aSEmmanuel Vadot	};
732*f126890aSEmmanuel Vadot};
733