xref: /freebsd/sys/contrib/device-tree/src/arm/marvell/armada-xp-mv78460.dtsi (revision f126890ac5386406dadf7c4cfa9566cbb56537c5)
1*f126890aSEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2*f126890aSEmmanuel Vadot/*
3*f126890aSEmmanuel Vadot * Device Tree Include file for Marvell Armada XP family SoC
4*f126890aSEmmanuel Vadot *
5*f126890aSEmmanuel Vadot * Copyright (C) 2012 Marvell
6*f126890aSEmmanuel Vadot *
7*f126890aSEmmanuel Vadot * Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
8*f126890aSEmmanuel Vadot *
9*f126890aSEmmanuel Vadot * Contains definitions specific to the Armada XP MV78460 SoC that are not
10*f126890aSEmmanuel Vadot * common to all Armada XP SoCs.
11*f126890aSEmmanuel Vadot */
12*f126890aSEmmanuel Vadot
13*f126890aSEmmanuel Vadot#include "armada-xp.dtsi"
14*f126890aSEmmanuel Vadot
15*f126890aSEmmanuel Vadot/ {
16*f126890aSEmmanuel Vadot	model = "Marvell Armada XP MV78460 SoC";
17*f126890aSEmmanuel Vadot	compatible = "marvell,armadaxp-mv78460", "marvell,armadaxp", "marvell,armada-370-xp";
18*f126890aSEmmanuel Vadot
19*f126890aSEmmanuel Vadot	aliases {
20*f126890aSEmmanuel Vadot		gpio0 = &gpio0;
21*f126890aSEmmanuel Vadot		gpio1 = &gpio1;
22*f126890aSEmmanuel Vadot		gpio2 = &gpio2;
23*f126890aSEmmanuel Vadot	};
24*f126890aSEmmanuel Vadot
25*f126890aSEmmanuel Vadot
26*f126890aSEmmanuel Vadot	cpus {
27*f126890aSEmmanuel Vadot		#address-cells = <1>;
28*f126890aSEmmanuel Vadot		#size-cells = <0>;
29*f126890aSEmmanuel Vadot		enable-method = "marvell,armada-xp-smp";
30*f126890aSEmmanuel Vadot
31*f126890aSEmmanuel Vadot		cpu@0 {
32*f126890aSEmmanuel Vadot			device_type = "cpu";
33*f126890aSEmmanuel Vadot			compatible = "marvell,sheeva-v7";
34*f126890aSEmmanuel Vadot			reg = <0>;
35*f126890aSEmmanuel Vadot			clocks = <&cpuclk 0>;
36*f126890aSEmmanuel Vadot			clock-latency = <1000000>;
37*f126890aSEmmanuel Vadot		};
38*f126890aSEmmanuel Vadot
39*f126890aSEmmanuel Vadot		cpu@1 {
40*f126890aSEmmanuel Vadot			device_type = "cpu";
41*f126890aSEmmanuel Vadot			compatible = "marvell,sheeva-v7";
42*f126890aSEmmanuel Vadot			reg = <1>;
43*f126890aSEmmanuel Vadot			clocks = <&cpuclk 1>;
44*f126890aSEmmanuel Vadot			clock-latency = <1000000>;
45*f126890aSEmmanuel Vadot		};
46*f126890aSEmmanuel Vadot
47*f126890aSEmmanuel Vadot		cpu@2 {
48*f126890aSEmmanuel Vadot			device_type = "cpu";
49*f126890aSEmmanuel Vadot			compatible = "marvell,sheeva-v7";
50*f126890aSEmmanuel Vadot			reg = <2>;
51*f126890aSEmmanuel Vadot			clocks = <&cpuclk 2>;
52*f126890aSEmmanuel Vadot			clock-latency = <1000000>;
53*f126890aSEmmanuel Vadot		};
54*f126890aSEmmanuel Vadot
55*f126890aSEmmanuel Vadot		cpu@3 {
56*f126890aSEmmanuel Vadot			device_type = "cpu";
57*f126890aSEmmanuel Vadot			compatible = "marvell,sheeva-v7";
58*f126890aSEmmanuel Vadot			reg = <3>;
59*f126890aSEmmanuel Vadot			clocks = <&cpuclk 3>;
60*f126890aSEmmanuel Vadot			clock-latency = <1000000>;
61*f126890aSEmmanuel Vadot		};
62*f126890aSEmmanuel Vadot	};
63*f126890aSEmmanuel Vadot
64*f126890aSEmmanuel Vadot	soc {
65*f126890aSEmmanuel Vadot		/*
66*f126890aSEmmanuel Vadot		 * MV78460 has 4 PCIe units Gen2.0: Two units can be
67*f126890aSEmmanuel Vadot		 * configured as x4 or quad x1 lanes. Two units are
68*f126890aSEmmanuel Vadot		 * x4/x1.
69*f126890aSEmmanuel Vadot		 */
70*f126890aSEmmanuel Vadot		pciec: pcie@82000000 {
71*f126890aSEmmanuel Vadot			compatible = "marvell,armada-xp-pcie";
72*f126890aSEmmanuel Vadot			status = "disabled";
73*f126890aSEmmanuel Vadot			device_type = "pci";
74*f126890aSEmmanuel Vadot
75*f126890aSEmmanuel Vadot			#address-cells = <3>;
76*f126890aSEmmanuel Vadot			#size-cells = <2>;
77*f126890aSEmmanuel Vadot
78*f126890aSEmmanuel Vadot			msi-parent = <&mpic>;
79*f126890aSEmmanuel Vadot			bus-range = <0x00 0xff>;
80*f126890aSEmmanuel Vadot
81*f126890aSEmmanuel Vadot			ranges =
82*f126890aSEmmanuel Vadot			       <0x82000000 0 0x40000 MBUS_ID(0xf0, 0x01) 0x40000 0 0x00002000   /* Port 0.0 registers */
83*f126890aSEmmanuel Vadot				0x82000000 0 0x42000 MBUS_ID(0xf0, 0x01) 0x42000 0 0x00002000   /* Port 2.0 registers */
84*f126890aSEmmanuel Vadot				0x82000000 0 0x44000 MBUS_ID(0xf0, 0x01) 0x44000 0 0x00002000   /* Port 0.1 registers */
85*f126890aSEmmanuel Vadot				0x82000000 0 0x48000 MBUS_ID(0xf0, 0x01) 0x48000 0 0x00002000   /* Port 0.2 registers */
86*f126890aSEmmanuel Vadot				0x82000000 0 0x4c000 MBUS_ID(0xf0, 0x01) 0x4c000 0 0x00002000   /* Port 0.3 registers */
87*f126890aSEmmanuel Vadot				0x82000000 0 0x80000 MBUS_ID(0xf0, 0x01) 0x80000 0 0x00002000   /* Port 1.0 registers */
88*f126890aSEmmanuel Vadot				0x82000000 0 0x82000 MBUS_ID(0xf0, 0x01) 0x82000 0 0x00002000   /* Port 3.0 registers */
89*f126890aSEmmanuel Vadot				0x82000000 0 0x84000 MBUS_ID(0xf0, 0x01) 0x84000 0 0x00002000   /* Port 1.1 registers */
90*f126890aSEmmanuel Vadot				0x82000000 0 0x88000 MBUS_ID(0xf0, 0x01) 0x88000 0 0x00002000   /* Port 1.2 registers */
91*f126890aSEmmanuel Vadot				0x82000000 0 0x8c000 MBUS_ID(0xf0, 0x01) 0x8c000 0 0x00002000   /* Port 1.3 registers */
92*f126890aSEmmanuel Vadot				0x82000000 0x1 0     MBUS_ID(0x04, 0xe8) 0 1 0 /* Port 0.0 MEM */
93*f126890aSEmmanuel Vadot				0x81000000 0x1 0     MBUS_ID(0x04, 0xe0) 0 1 0 /* Port 0.0 IO  */
94*f126890aSEmmanuel Vadot				0x82000000 0x2 0     MBUS_ID(0x04, 0xd8) 0 1 0 /* Port 0.1 MEM */
95*f126890aSEmmanuel Vadot				0x81000000 0x2 0     MBUS_ID(0x04, 0xd0) 0 1 0 /* Port 0.1 IO  */
96*f126890aSEmmanuel Vadot				0x82000000 0x3 0     MBUS_ID(0x04, 0xb8) 0 1 0 /* Port 0.2 MEM */
97*f126890aSEmmanuel Vadot				0x81000000 0x3 0     MBUS_ID(0x04, 0xb0) 0 1 0 /* Port 0.2 IO  */
98*f126890aSEmmanuel Vadot				0x82000000 0x4 0     MBUS_ID(0x04, 0x78) 0 1 0 /* Port 0.3 MEM */
99*f126890aSEmmanuel Vadot				0x81000000 0x4 0     MBUS_ID(0x04, 0x70) 0 1 0 /* Port 0.3 IO  */
100*f126890aSEmmanuel Vadot
101*f126890aSEmmanuel Vadot				0x82000000 0x5 0     MBUS_ID(0x08, 0xe8) 0 1 0 /* Port 1.0 MEM */
102*f126890aSEmmanuel Vadot				0x81000000 0x5 0     MBUS_ID(0x08, 0xe0) 0 1 0 /* Port 1.0 IO  */
103*f126890aSEmmanuel Vadot				0x82000000 0x6 0     MBUS_ID(0x08, 0xd8) 0 1 0 /* Port 1.1 MEM */
104*f126890aSEmmanuel Vadot				0x81000000 0x6 0     MBUS_ID(0x08, 0xd0) 0 1 0 /* Port 1.1 IO  */
105*f126890aSEmmanuel Vadot				0x82000000 0x7 0     MBUS_ID(0x08, 0xb8) 0 1 0 /* Port 1.2 MEM */
106*f126890aSEmmanuel Vadot				0x81000000 0x7 0     MBUS_ID(0x08, 0xb0) 0 1 0 /* Port 1.2 IO  */
107*f126890aSEmmanuel Vadot				0x82000000 0x8 0     MBUS_ID(0x08, 0x78) 0 1 0 /* Port 1.3 MEM */
108*f126890aSEmmanuel Vadot				0x81000000 0x8 0     MBUS_ID(0x08, 0x70) 0 1 0 /* Port 1.3 IO  */
109*f126890aSEmmanuel Vadot
110*f126890aSEmmanuel Vadot				0x82000000 0x9 0     MBUS_ID(0x04, 0xf8) 0 1 0 /* Port 2.0 MEM */
111*f126890aSEmmanuel Vadot				0x81000000 0x9 0     MBUS_ID(0x04, 0xf0) 0 1 0 /* Port 2.0 IO  */
112*f126890aSEmmanuel Vadot
113*f126890aSEmmanuel Vadot				0x82000000 0xa 0     MBUS_ID(0x08, 0xf8) 0 1 0 /* Port 3.0 MEM */
114*f126890aSEmmanuel Vadot				0x81000000 0xa 0     MBUS_ID(0x08, 0xf0) 0 1 0 /* Port 3.0 IO  */>;
115*f126890aSEmmanuel Vadot
116*f126890aSEmmanuel Vadot			pcie1: pcie@1,0 {
117*f126890aSEmmanuel Vadot				device_type = "pci";
118*f126890aSEmmanuel Vadot				assigned-addresses = <0x82000800 0 0x40000 0 0x2000>;
119*f126890aSEmmanuel Vadot				reg = <0x0800 0 0 0 0>;
120*f126890aSEmmanuel Vadot				#address-cells = <3>;
121*f126890aSEmmanuel Vadot				#size-cells = <2>;
122*f126890aSEmmanuel Vadot				interrupt-names = "intx";
123*f126890aSEmmanuel Vadot				interrupts-extended = <&mpic 58>;
124*f126890aSEmmanuel Vadot				#interrupt-cells = <1>;
125*f126890aSEmmanuel Vadot				ranges = <0x82000000 0 0 0x82000000 0x1 0 1 0
126*f126890aSEmmanuel Vadot					  0x81000000 0 0 0x81000000 0x1 0 1 0>;
127*f126890aSEmmanuel Vadot				bus-range = <0x00 0xff>;
128*f126890aSEmmanuel Vadot				interrupt-map-mask = <0 0 0 7>;
129*f126890aSEmmanuel Vadot				interrupt-map = <0 0 0 1 &pcie1_intc 0>,
130*f126890aSEmmanuel Vadot						<0 0 0 2 &pcie1_intc 1>,
131*f126890aSEmmanuel Vadot						<0 0 0 3 &pcie1_intc 2>,
132*f126890aSEmmanuel Vadot						<0 0 0 4 &pcie1_intc 3>;
133*f126890aSEmmanuel Vadot				marvell,pcie-port = <0>;
134*f126890aSEmmanuel Vadot				marvell,pcie-lane = <0>;
135*f126890aSEmmanuel Vadot				clocks = <&gateclk 5>;
136*f126890aSEmmanuel Vadot				status = "disabled";
137*f126890aSEmmanuel Vadot
138*f126890aSEmmanuel Vadot				pcie1_intc: interrupt-controller {
139*f126890aSEmmanuel Vadot					interrupt-controller;
140*f126890aSEmmanuel Vadot					#interrupt-cells = <1>;
141*f126890aSEmmanuel Vadot				};
142*f126890aSEmmanuel Vadot			};
143*f126890aSEmmanuel Vadot
144*f126890aSEmmanuel Vadot			pcie2: pcie@2,0 {
145*f126890aSEmmanuel Vadot				device_type = "pci";
146*f126890aSEmmanuel Vadot				assigned-addresses = <0x82001000 0 0x44000 0 0x2000>;
147*f126890aSEmmanuel Vadot				reg = <0x1000 0 0 0 0>;
148*f126890aSEmmanuel Vadot				#address-cells = <3>;
149*f126890aSEmmanuel Vadot				#size-cells = <2>;
150*f126890aSEmmanuel Vadot				interrupt-names = "intx";
151*f126890aSEmmanuel Vadot				interrupts-extended = <&mpic 59>;
152*f126890aSEmmanuel Vadot				#interrupt-cells = <1>;
153*f126890aSEmmanuel Vadot				ranges = <0x82000000 0 0 0x82000000 0x2 0 1 0
154*f126890aSEmmanuel Vadot					  0x81000000 0 0 0x81000000 0x2 0 1 0>;
155*f126890aSEmmanuel Vadot				bus-range = <0x00 0xff>;
156*f126890aSEmmanuel Vadot				interrupt-map-mask = <0 0 0 7>;
157*f126890aSEmmanuel Vadot				interrupt-map = <0 0 0 1 &pcie2_intc 0>,
158*f126890aSEmmanuel Vadot						<0 0 0 2 &pcie2_intc 1>,
159*f126890aSEmmanuel Vadot						<0 0 0 3 &pcie2_intc 2>,
160*f126890aSEmmanuel Vadot						<0 0 0 4 &pcie2_intc 3>;
161*f126890aSEmmanuel Vadot				marvell,pcie-port = <0>;
162*f126890aSEmmanuel Vadot				marvell,pcie-lane = <1>;
163*f126890aSEmmanuel Vadot				clocks = <&gateclk 6>;
164*f126890aSEmmanuel Vadot				status = "disabled";
165*f126890aSEmmanuel Vadot
166*f126890aSEmmanuel Vadot				pcie2_intc: interrupt-controller {
167*f126890aSEmmanuel Vadot					interrupt-controller;
168*f126890aSEmmanuel Vadot					#interrupt-cells = <1>;
169*f126890aSEmmanuel Vadot				};
170*f126890aSEmmanuel Vadot			};
171*f126890aSEmmanuel Vadot
172*f126890aSEmmanuel Vadot			pcie3: pcie@3,0 {
173*f126890aSEmmanuel Vadot				device_type = "pci";
174*f126890aSEmmanuel Vadot				assigned-addresses = <0x82001800 0 0x48000 0 0x2000>;
175*f126890aSEmmanuel Vadot				reg = <0x1800 0 0 0 0>;
176*f126890aSEmmanuel Vadot				#address-cells = <3>;
177*f126890aSEmmanuel Vadot				#size-cells = <2>;
178*f126890aSEmmanuel Vadot				interrupt-names = "intx";
179*f126890aSEmmanuel Vadot				interrupts-extended = <&mpic 60>;
180*f126890aSEmmanuel Vadot				#interrupt-cells = <1>;
181*f126890aSEmmanuel Vadot				ranges = <0x82000000 0 0 0x82000000 0x3 0 1 0
182*f126890aSEmmanuel Vadot					  0x81000000 0 0 0x81000000 0x3 0 1 0>;
183*f126890aSEmmanuel Vadot				bus-range = <0x00 0xff>;
184*f126890aSEmmanuel Vadot				interrupt-map-mask = <0 0 0 7>;
185*f126890aSEmmanuel Vadot				interrupt-map = <0 0 0 1 &pcie3_intc 0>,
186*f126890aSEmmanuel Vadot						<0 0 0 2 &pcie3_intc 1>,
187*f126890aSEmmanuel Vadot						<0 0 0 3 &pcie3_intc 2>,
188*f126890aSEmmanuel Vadot						<0 0 0 4 &pcie3_intc 3>;
189*f126890aSEmmanuel Vadot				marvell,pcie-port = <0>;
190*f126890aSEmmanuel Vadot				marvell,pcie-lane = <2>;
191*f126890aSEmmanuel Vadot				clocks = <&gateclk 7>;
192*f126890aSEmmanuel Vadot				status = "disabled";
193*f126890aSEmmanuel Vadot
194*f126890aSEmmanuel Vadot				pcie3_intc: interrupt-controller {
195*f126890aSEmmanuel Vadot					interrupt-controller;
196*f126890aSEmmanuel Vadot					#interrupt-cells = <1>;
197*f126890aSEmmanuel Vadot				};
198*f126890aSEmmanuel Vadot			};
199*f126890aSEmmanuel Vadot
200*f126890aSEmmanuel Vadot			pcie4: pcie@4,0 {
201*f126890aSEmmanuel Vadot				device_type = "pci";
202*f126890aSEmmanuel Vadot				assigned-addresses = <0x82002000 0 0x4c000 0 0x2000>;
203*f126890aSEmmanuel Vadot				reg = <0x2000 0 0 0 0>;
204*f126890aSEmmanuel Vadot				#address-cells = <3>;
205*f126890aSEmmanuel Vadot				#size-cells = <2>;
206*f126890aSEmmanuel Vadot				interrupt-names = "intx";
207*f126890aSEmmanuel Vadot				interrupts-extended = <&mpic 61>;
208*f126890aSEmmanuel Vadot				#interrupt-cells = <1>;
209*f126890aSEmmanuel Vadot				ranges = <0x82000000 0 0 0x82000000 0x4 0 1 0
210*f126890aSEmmanuel Vadot					  0x81000000 0 0 0x81000000 0x4 0 1 0>;
211*f126890aSEmmanuel Vadot				bus-range = <0x00 0xff>;
212*f126890aSEmmanuel Vadot				interrupt-map-mask = <0 0 0 7>;
213*f126890aSEmmanuel Vadot				interrupt-map = <0 0 0 1 &pcie4_intc 0>,
214*f126890aSEmmanuel Vadot						<0 0 0 2 &pcie4_intc 1>,
215*f126890aSEmmanuel Vadot						<0 0 0 3 &pcie4_intc 2>,
216*f126890aSEmmanuel Vadot						<0 0 0 4 &pcie4_intc 3>;
217*f126890aSEmmanuel Vadot				marvell,pcie-port = <0>;
218*f126890aSEmmanuel Vadot				marvell,pcie-lane = <3>;
219*f126890aSEmmanuel Vadot				clocks = <&gateclk 8>;
220*f126890aSEmmanuel Vadot				status = "disabled";
221*f126890aSEmmanuel Vadot
222*f126890aSEmmanuel Vadot				pcie4_intc: interrupt-controller {
223*f126890aSEmmanuel Vadot					interrupt-controller;
224*f126890aSEmmanuel Vadot					#interrupt-cells = <1>;
225*f126890aSEmmanuel Vadot				};
226*f126890aSEmmanuel Vadot			};
227*f126890aSEmmanuel Vadot
228*f126890aSEmmanuel Vadot			pcie5: pcie@5,0 {
229*f126890aSEmmanuel Vadot				device_type = "pci";
230*f126890aSEmmanuel Vadot				assigned-addresses = <0x82002800 0 0x80000 0 0x2000>;
231*f126890aSEmmanuel Vadot				reg = <0x2800 0 0 0 0>;
232*f126890aSEmmanuel Vadot				#address-cells = <3>;
233*f126890aSEmmanuel Vadot				#size-cells = <2>;
234*f126890aSEmmanuel Vadot				interrupt-names = "intx";
235*f126890aSEmmanuel Vadot				interrupts-extended = <&mpic 62>;
236*f126890aSEmmanuel Vadot				#interrupt-cells = <1>;
237*f126890aSEmmanuel Vadot				ranges = <0x82000000 0 0 0x82000000 0x5 0 1 0
238*f126890aSEmmanuel Vadot					  0x81000000 0 0 0x81000000 0x5 0 1 0>;
239*f126890aSEmmanuel Vadot				bus-range = <0x00 0xff>;
240*f126890aSEmmanuel Vadot				interrupt-map-mask = <0 0 0 7>;
241*f126890aSEmmanuel Vadot				interrupt-map = <0 0 0 1 &pcie5_intc 0>,
242*f126890aSEmmanuel Vadot						<0 0 0 2 &pcie5_intc 1>,
243*f126890aSEmmanuel Vadot						<0 0 0 3 &pcie5_intc 2>,
244*f126890aSEmmanuel Vadot						<0 0 0 4 &pcie5_intc 3>;
245*f126890aSEmmanuel Vadot				marvell,pcie-port = <1>;
246*f126890aSEmmanuel Vadot				marvell,pcie-lane = <0>;
247*f126890aSEmmanuel Vadot				clocks = <&gateclk 9>;
248*f126890aSEmmanuel Vadot				status = "disabled";
249*f126890aSEmmanuel Vadot
250*f126890aSEmmanuel Vadot				pcie5_intc: interrupt-controller {
251*f126890aSEmmanuel Vadot					interrupt-controller;
252*f126890aSEmmanuel Vadot					#interrupt-cells = <1>;
253*f126890aSEmmanuel Vadot				};
254*f126890aSEmmanuel Vadot			};
255*f126890aSEmmanuel Vadot
256*f126890aSEmmanuel Vadot			pcie6: pcie@6,0 {
257*f126890aSEmmanuel Vadot				device_type = "pci";
258*f126890aSEmmanuel Vadot				assigned-addresses = <0x82003000 0 0x84000 0 0x2000>;
259*f126890aSEmmanuel Vadot				reg = <0x3000 0 0 0 0>;
260*f126890aSEmmanuel Vadot				#address-cells = <3>;
261*f126890aSEmmanuel Vadot				#size-cells = <2>;
262*f126890aSEmmanuel Vadot				interrupt-names = "intx";
263*f126890aSEmmanuel Vadot				interrupts-extended = <&mpic 63>;
264*f126890aSEmmanuel Vadot				#interrupt-cells = <1>;
265*f126890aSEmmanuel Vadot				ranges = <0x82000000 0 0 0x82000000 0x6 0 1 0
266*f126890aSEmmanuel Vadot					  0x81000000 0 0 0x81000000 0x6 0 1 0>;
267*f126890aSEmmanuel Vadot				bus-range = <0x00 0xff>;
268*f126890aSEmmanuel Vadot				interrupt-map-mask = <0 0 0 7>;
269*f126890aSEmmanuel Vadot				interrupt-map = <0 0 0 1 &pcie6_intc 0>,
270*f126890aSEmmanuel Vadot						<0 0 0 2 &pcie6_intc 1>,
271*f126890aSEmmanuel Vadot						<0 0 0 3 &pcie6_intc 2>,
272*f126890aSEmmanuel Vadot						<0 0 0 4 &pcie6_intc 3>;
273*f126890aSEmmanuel Vadot				marvell,pcie-port = <1>;
274*f126890aSEmmanuel Vadot				marvell,pcie-lane = <1>;
275*f126890aSEmmanuel Vadot				clocks = <&gateclk 10>;
276*f126890aSEmmanuel Vadot				status = "disabled";
277*f126890aSEmmanuel Vadot
278*f126890aSEmmanuel Vadot				pcie6_intc: interrupt-controller {
279*f126890aSEmmanuel Vadot					interrupt-controller;
280*f126890aSEmmanuel Vadot					#interrupt-cells = <1>;
281*f126890aSEmmanuel Vadot				};
282*f126890aSEmmanuel Vadot			};
283*f126890aSEmmanuel Vadot
284*f126890aSEmmanuel Vadot			pcie7: pcie@7,0 {
285*f126890aSEmmanuel Vadot				device_type = "pci";
286*f126890aSEmmanuel Vadot				assigned-addresses = <0x82003800 0 0x88000 0 0x2000>;
287*f126890aSEmmanuel Vadot				reg = <0x3800 0 0 0 0>;
288*f126890aSEmmanuel Vadot				#address-cells = <3>;
289*f126890aSEmmanuel Vadot				#size-cells = <2>;
290*f126890aSEmmanuel Vadot				interrupt-names = "intx";
291*f126890aSEmmanuel Vadot				interrupts-extended = <&mpic 64>;
292*f126890aSEmmanuel Vadot				#interrupt-cells = <1>;
293*f126890aSEmmanuel Vadot				ranges = <0x82000000 0 0 0x82000000 0x7 0 1 0
294*f126890aSEmmanuel Vadot					  0x81000000 0 0 0x81000000 0x7 0 1 0>;
295*f126890aSEmmanuel Vadot				bus-range = <0x00 0xff>;
296*f126890aSEmmanuel Vadot				interrupt-map-mask = <0 0 0 7>;
297*f126890aSEmmanuel Vadot				interrupt-map = <0 0 0 1 &pcie7_intc 0>,
298*f126890aSEmmanuel Vadot						<0 0 0 2 &pcie7_intc 1>,
299*f126890aSEmmanuel Vadot						<0 0 0 3 &pcie7_intc 2>,
300*f126890aSEmmanuel Vadot						<0 0 0 4 &pcie7_intc 3>;
301*f126890aSEmmanuel Vadot				marvell,pcie-port = <1>;
302*f126890aSEmmanuel Vadot				marvell,pcie-lane = <2>;
303*f126890aSEmmanuel Vadot				clocks = <&gateclk 11>;
304*f126890aSEmmanuel Vadot				status = "disabled";
305*f126890aSEmmanuel Vadot
306*f126890aSEmmanuel Vadot				pcie7_intc: interrupt-controller {
307*f126890aSEmmanuel Vadot					interrupt-controller;
308*f126890aSEmmanuel Vadot					#interrupt-cells = <1>;
309*f126890aSEmmanuel Vadot				};
310*f126890aSEmmanuel Vadot			};
311*f126890aSEmmanuel Vadot
312*f126890aSEmmanuel Vadot			pcie8: pcie@8,0 {
313*f126890aSEmmanuel Vadot				device_type = "pci";
314*f126890aSEmmanuel Vadot				assigned-addresses = <0x82004000 0 0x8c000 0 0x2000>;
315*f126890aSEmmanuel Vadot				reg = <0x4000 0 0 0 0>;
316*f126890aSEmmanuel Vadot				#address-cells = <3>;
317*f126890aSEmmanuel Vadot				#size-cells = <2>;
318*f126890aSEmmanuel Vadot				interrupt-names = "intx";
319*f126890aSEmmanuel Vadot				interrupts-extended = <&mpic 65>;
320*f126890aSEmmanuel Vadot				#interrupt-cells = <1>;
321*f126890aSEmmanuel Vadot				ranges = <0x82000000 0 0 0x82000000 0x8 0 1 0
322*f126890aSEmmanuel Vadot					  0x81000000 0 0 0x81000000 0x8 0 1 0>;
323*f126890aSEmmanuel Vadot				bus-range = <0x00 0xff>;
324*f126890aSEmmanuel Vadot				interrupt-map-mask = <0 0 0 7>;
325*f126890aSEmmanuel Vadot				interrupt-map = <0 0 0 1 &pcie8_intc 0>,
326*f126890aSEmmanuel Vadot						<0 0 0 2 &pcie8_intc 1>,
327*f126890aSEmmanuel Vadot						<0 0 0 3 &pcie8_intc 2>,
328*f126890aSEmmanuel Vadot						<0 0 0 4 &pcie8_intc 3>;
329*f126890aSEmmanuel Vadot				marvell,pcie-port = <1>;
330*f126890aSEmmanuel Vadot				marvell,pcie-lane = <3>;
331*f126890aSEmmanuel Vadot				clocks = <&gateclk 12>;
332*f126890aSEmmanuel Vadot				status = "disabled";
333*f126890aSEmmanuel Vadot
334*f126890aSEmmanuel Vadot				pcie8_intc: interrupt-controller {
335*f126890aSEmmanuel Vadot					interrupt-controller;
336*f126890aSEmmanuel Vadot					#interrupt-cells = <1>;
337*f126890aSEmmanuel Vadot				};
338*f126890aSEmmanuel Vadot			};
339*f126890aSEmmanuel Vadot
340*f126890aSEmmanuel Vadot			pcie9: pcie@9,0 {
341*f126890aSEmmanuel Vadot				device_type = "pci";
342*f126890aSEmmanuel Vadot				assigned-addresses = <0x82004800 0 0x42000 0 0x2000>;
343*f126890aSEmmanuel Vadot				reg = <0x4800 0 0 0 0>;
344*f126890aSEmmanuel Vadot				#address-cells = <3>;
345*f126890aSEmmanuel Vadot				#size-cells = <2>;
346*f126890aSEmmanuel Vadot				interrupt-names = "intx";
347*f126890aSEmmanuel Vadot				interrupts-extended = <&mpic 99>;
348*f126890aSEmmanuel Vadot				#interrupt-cells = <1>;
349*f126890aSEmmanuel Vadot				ranges = <0x82000000 0 0 0x82000000 0x9 0 1 0
350*f126890aSEmmanuel Vadot					  0x81000000 0 0 0x81000000 0x9 0 1 0>;
351*f126890aSEmmanuel Vadot				bus-range = <0x00 0xff>;
352*f126890aSEmmanuel Vadot				interrupt-map-mask = <0 0 0 7>;
353*f126890aSEmmanuel Vadot				interrupt-map = <0 0 0 1 &pcie9_intc 0>,
354*f126890aSEmmanuel Vadot						<0 0 0 2 &pcie9_intc 1>,
355*f126890aSEmmanuel Vadot						<0 0 0 3 &pcie9_intc 2>,
356*f126890aSEmmanuel Vadot						<0 0 0 4 &pcie9_intc 3>;
357*f126890aSEmmanuel Vadot				marvell,pcie-port = <2>;
358*f126890aSEmmanuel Vadot				marvell,pcie-lane = <0>;
359*f126890aSEmmanuel Vadot				clocks = <&gateclk 26>;
360*f126890aSEmmanuel Vadot				status = "disabled";
361*f126890aSEmmanuel Vadot
362*f126890aSEmmanuel Vadot				pcie9_intc: interrupt-controller {
363*f126890aSEmmanuel Vadot					interrupt-controller;
364*f126890aSEmmanuel Vadot					#interrupt-cells = <1>;
365*f126890aSEmmanuel Vadot				};
366*f126890aSEmmanuel Vadot			};
367*f126890aSEmmanuel Vadot
368*f126890aSEmmanuel Vadot			pcie10: pcie@a,0 {
369*f126890aSEmmanuel Vadot				device_type = "pci";
370*f126890aSEmmanuel Vadot				assigned-addresses = <0x82005000 0 0x82000 0 0x2000>;
371*f126890aSEmmanuel Vadot				reg = <0x5000 0 0 0 0>;
372*f126890aSEmmanuel Vadot				#address-cells = <3>;
373*f126890aSEmmanuel Vadot				#size-cells = <2>;
374*f126890aSEmmanuel Vadot				interrupt-names = "intx";
375*f126890aSEmmanuel Vadot				interrupts-extended = <&mpic 103>;
376*f126890aSEmmanuel Vadot				#interrupt-cells = <1>;
377*f126890aSEmmanuel Vadot				ranges = <0x82000000 0 0 0x82000000 0xa 0 1 0
378*f126890aSEmmanuel Vadot					  0x81000000 0 0 0x81000000 0xa 0 1 0>;
379*f126890aSEmmanuel Vadot				bus-range = <0x00 0xff>;
380*f126890aSEmmanuel Vadot				interrupt-map-mask = <0 0 0 7>;
381*f126890aSEmmanuel Vadot				interrupt-map = <0 0 0 1 &pcie10_intc 0>,
382*f126890aSEmmanuel Vadot						<0 0 0 2 &pcie10_intc 1>,
383*f126890aSEmmanuel Vadot						<0 0 0 3 &pcie10_intc 2>,
384*f126890aSEmmanuel Vadot						<0 0 0 4 &pcie10_intc 3>;
385*f126890aSEmmanuel Vadot				marvell,pcie-port = <3>;
386*f126890aSEmmanuel Vadot				marvell,pcie-lane = <0>;
387*f126890aSEmmanuel Vadot				clocks = <&gateclk 27>;
388*f126890aSEmmanuel Vadot				status = "disabled";
389*f126890aSEmmanuel Vadot
390*f126890aSEmmanuel Vadot				pcie10_intc: interrupt-controller {
391*f126890aSEmmanuel Vadot					interrupt-controller;
392*f126890aSEmmanuel Vadot					#interrupt-cells = <1>;
393*f126890aSEmmanuel Vadot				};
394*f126890aSEmmanuel Vadot			};
395*f126890aSEmmanuel Vadot		};
396*f126890aSEmmanuel Vadot
397*f126890aSEmmanuel Vadot		internal-regs {
398*f126890aSEmmanuel Vadot			gpio0: gpio@18100 {
399*f126890aSEmmanuel Vadot				compatible = "marvell,armada-370-gpio",
400*f126890aSEmmanuel Vadot					     "marvell,orion-gpio";
401*f126890aSEmmanuel Vadot				reg = <0x18100 0x40>, <0x181c0 0x08>;
402*f126890aSEmmanuel Vadot				reg-names = "gpio", "pwm";
403*f126890aSEmmanuel Vadot				ngpios = <32>;
404*f126890aSEmmanuel Vadot				gpio-controller;
405*f126890aSEmmanuel Vadot				#gpio-cells = <2>;
406*f126890aSEmmanuel Vadot				#pwm-cells = <2>;
407*f126890aSEmmanuel Vadot				interrupt-controller;
408*f126890aSEmmanuel Vadot				#interrupt-cells = <2>;
409*f126890aSEmmanuel Vadot				interrupts = <82>, <83>, <84>, <85>;
410*f126890aSEmmanuel Vadot				clocks = <&coreclk 0>;
411*f126890aSEmmanuel Vadot			};
412*f126890aSEmmanuel Vadot
413*f126890aSEmmanuel Vadot			gpio1: gpio@18140 {
414*f126890aSEmmanuel Vadot				compatible = "marvell,armada-370-gpio",
415*f126890aSEmmanuel Vadot					     "marvell,orion-gpio";
416*f126890aSEmmanuel Vadot				reg = <0x18140 0x40>, <0x181c8 0x08>;
417*f126890aSEmmanuel Vadot				reg-names = "gpio", "pwm";
418*f126890aSEmmanuel Vadot				ngpios = <32>;
419*f126890aSEmmanuel Vadot				gpio-controller;
420*f126890aSEmmanuel Vadot				#gpio-cells = <2>;
421*f126890aSEmmanuel Vadot				#pwm-cells = <2>;
422*f126890aSEmmanuel Vadot				interrupt-controller;
423*f126890aSEmmanuel Vadot				#interrupt-cells = <2>;
424*f126890aSEmmanuel Vadot				interrupts = <87>, <88>, <89>, <90>;
425*f126890aSEmmanuel Vadot				clocks = <&coreclk 0>;
426*f126890aSEmmanuel Vadot			};
427*f126890aSEmmanuel Vadot
428*f126890aSEmmanuel Vadot			gpio2: gpio@18180 {
429*f126890aSEmmanuel Vadot				compatible = "marvell,armada-370-gpio",
430*f126890aSEmmanuel Vadot					     "marvell,orion-gpio";
431*f126890aSEmmanuel Vadot				reg = <0x18180 0x40>;
432*f126890aSEmmanuel Vadot				ngpios = <3>;
433*f126890aSEmmanuel Vadot				gpio-controller;
434*f126890aSEmmanuel Vadot				#gpio-cells = <2>;
435*f126890aSEmmanuel Vadot				interrupt-controller;
436*f126890aSEmmanuel Vadot				#interrupt-cells = <2>;
437*f126890aSEmmanuel Vadot				interrupts = <91>;
438*f126890aSEmmanuel Vadot			};
439*f126890aSEmmanuel Vadot
440*f126890aSEmmanuel Vadot			eth3: ethernet@34000 {
441*f126890aSEmmanuel Vadot				compatible = "marvell,armada-xp-neta";
442*f126890aSEmmanuel Vadot				reg = <0x34000 0x4000>;
443*f126890aSEmmanuel Vadot				interrupts = <14>;
444*f126890aSEmmanuel Vadot				clocks = <&gateclk 1>;
445*f126890aSEmmanuel Vadot				status = "disabled";
446*f126890aSEmmanuel Vadot			};
447*f126890aSEmmanuel Vadot		};
448*f126890aSEmmanuel Vadot	};
449*f126890aSEmmanuel Vadot};
450*f126890aSEmmanuel Vadot
451*f126890aSEmmanuel Vadot&pinctrl {
452*f126890aSEmmanuel Vadot	compatible = "marvell,mv78460-pinctrl";
453*f126890aSEmmanuel Vadot};
454