xref: /OK3568_Linux_fs/kernel/scripts/dtc/include-prefixes/arm64/apm/apm-storm.dtsi (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun// SPDX-License-Identifier: GPL-2.0-or-later
2*4882a593Smuzhiyun/*
3*4882a593Smuzhiyun * dts file for AppliedMicro (APM) X-Gene Storm SOC
4*4882a593Smuzhiyun *
5*4882a593Smuzhiyun * Copyright (C) 2013, Applied Micro Circuits Corporation
6*4882a593Smuzhiyun */
7*4882a593Smuzhiyun
8*4882a593Smuzhiyun/ {
9*4882a593Smuzhiyun	compatible = "apm,xgene-storm";
10*4882a593Smuzhiyun	interrupt-parent = <&gic>;
11*4882a593Smuzhiyun	#address-cells = <2>;
12*4882a593Smuzhiyun	#size-cells = <2>;
13*4882a593Smuzhiyun
14*4882a593Smuzhiyun	cpus {
15*4882a593Smuzhiyun		#address-cells = <2>;
16*4882a593Smuzhiyun		#size-cells = <0>;
17*4882a593Smuzhiyun
18*4882a593Smuzhiyun		cpu@0 {
19*4882a593Smuzhiyun			device_type = "cpu";
20*4882a593Smuzhiyun			compatible = "apm,potenza";
21*4882a593Smuzhiyun			reg = <0x0 0x000>;
22*4882a593Smuzhiyun			enable-method = "spin-table";
23*4882a593Smuzhiyun			cpu-release-addr = <0x1 0x0000fff8>;
24*4882a593Smuzhiyun			next-level-cache = <&xgene_L2_0>;
25*4882a593Smuzhiyun		};
26*4882a593Smuzhiyun		cpu@1 {
27*4882a593Smuzhiyun			device_type = "cpu";
28*4882a593Smuzhiyun			compatible = "apm,potenza";
29*4882a593Smuzhiyun			reg = <0x0 0x001>;
30*4882a593Smuzhiyun			enable-method = "spin-table";
31*4882a593Smuzhiyun			cpu-release-addr = <0x1 0x0000fff8>;
32*4882a593Smuzhiyun			next-level-cache = <&xgene_L2_0>;
33*4882a593Smuzhiyun		};
34*4882a593Smuzhiyun		cpu@100 {
35*4882a593Smuzhiyun			device_type = "cpu";
36*4882a593Smuzhiyun			compatible = "apm,potenza";
37*4882a593Smuzhiyun			reg = <0x0 0x100>;
38*4882a593Smuzhiyun			enable-method = "spin-table";
39*4882a593Smuzhiyun			cpu-release-addr = <0x1 0x0000fff8>;
40*4882a593Smuzhiyun			next-level-cache = <&xgene_L2_1>;
41*4882a593Smuzhiyun		};
42*4882a593Smuzhiyun		cpu@101 {
43*4882a593Smuzhiyun			device_type = "cpu";
44*4882a593Smuzhiyun			compatible = "apm,potenza";
45*4882a593Smuzhiyun			reg = <0x0 0x101>;
46*4882a593Smuzhiyun			enable-method = "spin-table";
47*4882a593Smuzhiyun			cpu-release-addr = <0x1 0x0000fff8>;
48*4882a593Smuzhiyun			next-level-cache = <&xgene_L2_1>;
49*4882a593Smuzhiyun		};
50*4882a593Smuzhiyun		cpu@200 {
51*4882a593Smuzhiyun			device_type = "cpu";
52*4882a593Smuzhiyun			compatible = "apm,potenza";
53*4882a593Smuzhiyun			reg = <0x0 0x200>;
54*4882a593Smuzhiyun			enable-method = "spin-table";
55*4882a593Smuzhiyun			cpu-release-addr = <0x1 0x0000fff8>;
56*4882a593Smuzhiyun			next-level-cache = <&xgene_L2_2>;
57*4882a593Smuzhiyun		};
58*4882a593Smuzhiyun		cpu@201 {
59*4882a593Smuzhiyun			device_type = "cpu";
60*4882a593Smuzhiyun			compatible = "apm,potenza";
61*4882a593Smuzhiyun			reg = <0x0 0x201>;
62*4882a593Smuzhiyun			enable-method = "spin-table";
63*4882a593Smuzhiyun			cpu-release-addr = <0x1 0x0000fff8>;
64*4882a593Smuzhiyun			next-level-cache = <&xgene_L2_2>;
65*4882a593Smuzhiyun		};
66*4882a593Smuzhiyun		cpu@300 {
67*4882a593Smuzhiyun			device_type = "cpu";
68*4882a593Smuzhiyun			compatible = "apm,potenza";
69*4882a593Smuzhiyun			reg = <0x0 0x300>;
70*4882a593Smuzhiyun			enable-method = "spin-table";
71*4882a593Smuzhiyun			cpu-release-addr = <0x1 0x0000fff8>;
72*4882a593Smuzhiyun			next-level-cache = <&xgene_L2_3>;
73*4882a593Smuzhiyun		};
74*4882a593Smuzhiyun		cpu@301 {
75*4882a593Smuzhiyun			device_type = "cpu";
76*4882a593Smuzhiyun			compatible = "apm,potenza";
77*4882a593Smuzhiyun			reg = <0x0 0x301>;
78*4882a593Smuzhiyun			enable-method = "spin-table";
79*4882a593Smuzhiyun			cpu-release-addr = <0x1 0x0000fff8>;
80*4882a593Smuzhiyun			next-level-cache = <&xgene_L2_3>;
81*4882a593Smuzhiyun		};
82*4882a593Smuzhiyun		xgene_L2_0: l2-cache-0 {
83*4882a593Smuzhiyun			compatible = "cache";
84*4882a593Smuzhiyun		};
85*4882a593Smuzhiyun		xgene_L2_1: l2-cache-1 {
86*4882a593Smuzhiyun			compatible = "cache";
87*4882a593Smuzhiyun		};
88*4882a593Smuzhiyun		xgene_L2_2: l2-cache-2 {
89*4882a593Smuzhiyun			compatible = "cache";
90*4882a593Smuzhiyun		};
91*4882a593Smuzhiyun		xgene_L2_3: l2-cache-3 {
92*4882a593Smuzhiyun			compatible = "cache";
93*4882a593Smuzhiyun		};
94*4882a593Smuzhiyun	};
95*4882a593Smuzhiyun
96*4882a593Smuzhiyun	gic: interrupt-controller@78010000 {
97*4882a593Smuzhiyun		compatible = "arm,cortex-a15-gic";
98*4882a593Smuzhiyun		#interrupt-cells = <3>;
99*4882a593Smuzhiyun		interrupt-controller;
100*4882a593Smuzhiyun		reg = <0x0 0x78010000 0x0 0x1000>,	/* GIC Dist */
101*4882a593Smuzhiyun		      <0x0 0x78020000 0x0 0x1000>,	/* GIC CPU */
102*4882a593Smuzhiyun		      <0x0 0x78040000 0x0 0x2000>,	/* GIC VCPU Control */
103*4882a593Smuzhiyun		      <0x0 0x78060000 0x0 0x2000>;	/* GIC VCPU */
104*4882a593Smuzhiyun		interrupts = <1 9 0xf04>;	/* GIC Maintenence IRQ */
105*4882a593Smuzhiyun	};
106*4882a593Smuzhiyun
107*4882a593Smuzhiyun	timer {
108*4882a593Smuzhiyun		compatible = "arm,armv8-timer";
109*4882a593Smuzhiyun		interrupts = <1 0 0xff08>,	/* Secure Phys IRQ */
110*4882a593Smuzhiyun			     <1 13 0xff08>,	/* Non-secure Phys IRQ */
111*4882a593Smuzhiyun			     <1 14 0xff08>,	/* Virt IRQ */
112*4882a593Smuzhiyun			     <1 15 0xff08>;	/* Hyp IRQ */
113*4882a593Smuzhiyun		clock-frequency = <50000000>;
114*4882a593Smuzhiyun	};
115*4882a593Smuzhiyun
116*4882a593Smuzhiyun	pmu {
117*4882a593Smuzhiyun		compatible = "apm,potenza-pmu", "arm,armv8-pmuv3";
118*4882a593Smuzhiyun		interrupts = <1 12 0xff04>;
119*4882a593Smuzhiyun	};
120*4882a593Smuzhiyun
121*4882a593Smuzhiyun	soc {
122*4882a593Smuzhiyun		compatible = "simple-bus";
123*4882a593Smuzhiyun		#address-cells = <2>;
124*4882a593Smuzhiyun		#size-cells = <2>;
125*4882a593Smuzhiyun		ranges;
126*4882a593Smuzhiyun		dma-ranges = <0x0 0x0 0x0 0x0 0x400 0x0>;
127*4882a593Smuzhiyun
128*4882a593Smuzhiyun		clocks {
129*4882a593Smuzhiyun			#address-cells = <2>;
130*4882a593Smuzhiyun			#size-cells = <2>;
131*4882a593Smuzhiyun			ranges;
132*4882a593Smuzhiyun			refclk: refclk {
133*4882a593Smuzhiyun				compatible = "fixed-clock";
134*4882a593Smuzhiyun				#clock-cells = <1>;
135*4882a593Smuzhiyun				clock-frequency = <100000000>;
136*4882a593Smuzhiyun				clock-output-names = "refclk";
137*4882a593Smuzhiyun			};
138*4882a593Smuzhiyun
139*4882a593Smuzhiyun			pcppll: pcppll@17000100 {
140*4882a593Smuzhiyun				compatible = "apm,xgene-pcppll-clock";
141*4882a593Smuzhiyun				#clock-cells = <1>;
142*4882a593Smuzhiyun				clocks = <&refclk 0>;
143*4882a593Smuzhiyun				clock-names = "pcppll";
144*4882a593Smuzhiyun				reg = <0x0 0x17000100 0x0 0x1000>;
145*4882a593Smuzhiyun				clock-output-names = "pcppll";
146*4882a593Smuzhiyun				type = <0>;
147*4882a593Smuzhiyun			};
148*4882a593Smuzhiyun
149*4882a593Smuzhiyun			socpll: socpll@17000120 {
150*4882a593Smuzhiyun				compatible = "apm,xgene-socpll-clock";
151*4882a593Smuzhiyun				#clock-cells = <1>;
152*4882a593Smuzhiyun				clocks = <&refclk 0>;
153*4882a593Smuzhiyun				clock-names = "socpll";
154*4882a593Smuzhiyun				reg = <0x0 0x17000120 0x0 0x1000>;
155*4882a593Smuzhiyun				clock-output-names = "socpll";
156*4882a593Smuzhiyun				type = <1>;
157*4882a593Smuzhiyun			};
158*4882a593Smuzhiyun
159*4882a593Smuzhiyun			socplldiv2: socplldiv2  {
160*4882a593Smuzhiyun				compatible = "fixed-factor-clock";
161*4882a593Smuzhiyun				#clock-cells = <1>;
162*4882a593Smuzhiyun				clocks = <&socpll 0>;
163*4882a593Smuzhiyun				clock-names = "socplldiv2";
164*4882a593Smuzhiyun				clock-mult = <1>;
165*4882a593Smuzhiyun				clock-div = <2>;
166*4882a593Smuzhiyun				clock-output-names = "socplldiv2";
167*4882a593Smuzhiyun			};
168*4882a593Smuzhiyun
169*4882a593Smuzhiyun			ahbclk: ahbclk@17000000 {
170*4882a593Smuzhiyun				compatible = "apm,xgene-device-clock";
171*4882a593Smuzhiyun				#clock-cells = <1>;
172*4882a593Smuzhiyun				clocks = <&socplldiv2 0>;
173*4882a593Smuzhiyun				reg = <0x0 0x17000000 0x0 0x2000>;
174*4882a593Smuzhiyun				reg-names = "div-reg";
175*4882a593Smuzhiyun				divider-offset = <0x164>;
176*4882a593Smuzhiyun				divider-width = <0x5>;
177*4882a593Smuzhiyun				divider-shift = <0x0>;
178*4882a593Smuzhiyun				clock-output-names = "ahbclk";
179*4882a593Smuzhiyun			};
180*4882a593Smuzhiyun
181*4882a593Smuzhiyun			sdioclk: sdioclk@1f2ac000 {
182*4882a593Smuzhiyun				compatible = "apm,xgene-device-clock";
183*4882a593Smuzhiyun				#clock-cells = <1>;
184*4882a593Smuzhiyun				clocks = <&socplldiv2 0>;
185*4882a593Smuzhiyun				reg = <0x0 0x1f2ac000 0x0 0x1000
186*4882a593Smuzhiyun					0x0 0x17000000 0x0 0x2000>;
187*4882a593Smuzhiyun				reg-names = "csr-reg", "div-reg";
188*4882a593Smuzhiyun				csr-offset = <0x0>;
189*4882a593Smuzhiyun				csr-mask = <0x2>;
190*4882a593Smuzhiyun				enable-offset = <0x8>;
191*4882a593Smuzhiyun				enable-mask = <0x2>;
192*4882a593Smuzhiyun				divider-offset = <0x178>;
193*4882a593Smuzhiyun				divider-width = <0x8>;
194*4882a593Smuzhiyun				divider-shift = <0x0>;
195*4882a593Smuzhiyun				clock-output-names = "sdioclk";
196*4882a593Smuzhiyun			};
197*4882a593Smuzhiyun
198*4882a593Smuzhiyun			ethclk: ethclk {
199*4882a593Smuzhiyun				compatible = "apm,xgene-device-clock";
200*4882a593Smuzhiyun				#clock-cells = <1>;
201*4882a593Smuzhiyun				clocks = <&socplldiv2 0>;
202*4882a593Smuzhiyun				clock-names = "ethclk";
203*4882a593Smuzhiyun				reg = <0x0 0x17000000 0x0 0x1000>;
204*4882a593Smuzhiyun				reg-names = "div-reg";
205*4882a593Smuzhiyun				divider-offset = <0x238>;
206*4882a593Smuzhiyun				divider-width = <0x9>;
207*4882a593Smuzhiyun				divider-shift = <0x0>;
208*4882a593Smuzhiyun				clock-output-names = "ethclk";
209*4882a593Smuzhiyun			};
210*4882a593Smuzhiyun
211*4882a593Smuzhiyun			menetclk: menetclk {
212*4882a593Smuzhiyun				compatible = "apm,xgene-device-clock";
213*4882a593Smuzhiyun				#clock-cells = <1>;
214*4882a593Smuzhiyun				clocks = <&ethclk 0>;
215*4882a593Smuzhiyun				reg = <0x0 0x1702c000 0x0 0x1000>;
216*4882a593Smuzhiyun				reg-names = "csr-reg";
217*4882a593Smuzhiyun				clock-output-names = "menetclk";
218*4882a593Smuzhiyun			};
219*4882a593Smuzhiyun
220*4882a593Smuzhiyun			sge0clk: sge0clk@1f21c000 {
221*4882a593Smuzhiyun				compatible = "apm,xgene-device-clock";
222*4882a593Smuzhiyun				#clock-cells = <1>;
223*4882a593Smuzhiyun				clocks = <&socplldiv2 0>;
224*4882a593Smuzhiyun				reg = <0x0 0x1f21c000 0x0 0x1000>;
225*4882a593Smuzhiyun				reg-names = "csr-reg";
226*4882a593Smuzhiyun				csr-mask = <0xa>;
227*4882a593Smuzhiyun				enable-mask = <0xf>;
228*4882a593Smuzhiyun				clock-output-names = "sge0clk";
229*4882a593Smuzhiyun			};
230*4882a593Smuzhiyun
231*4882a593Smuzhiyun			xge0clk: xge0clk@1f61c000 {
232*4882a593Smuzhiyun				compatible = "apm,xgene-device-clock";
233*4882a593Smuzhiyun				#clock-cells = <1>;
234*4882a593Smuzhiyun				clocks = <&socplldiv2 0>;
235*4882a593Smuzhiyun				reg = <0x0 0x1f61c000 0x0 0x1000>;
236*4882a593Smuzhiyun				reg-names = "csr-reg";
237*4882a593Smuzhiyun				csr-mask = <0x3>;
238*4882a593Smuzhiyun				clock-output-names = "xge0clk";
239*4882a593Smuzhiyun			};
240*4882a593Smuzhiyun
241*4882a593Smuzhiyun			xge1clk: xge1clk@1f62c000 {
242*4882a593Smuzhiyun				compatible = "apm,xgene-device-clock";
243*4882a593Smuzhiyun				status = "disabled";
244*4882a593Smuzhiyun				#clock-cells = <1>;
245*4882a593Smuzhiyun				clocks = <&socplldiv2 0>;
246*4882a593Smuzhiyun				reg = <0x0 0x1f62c000 0x0 0x1000>;
247*4882a593Smuzhiyun				reg-names = "csr-reg";
248*4882a593Smuzhiyun				csr-mask = <0x3>;
249*4882a593Smuzhiyun				clock-output-names = "xge1clk";
250*4882a593Smuzhiyun			};
251*4882a593Smuzhiyun
252*4882a593Smuzhiyun			sataphy1clk: sataphy1clk@1f21c000 {
253*4882a593Smuzhiyun				compatible = "apm,xgene-device-clock";
254*4882a593Smuzhiyun				#clock-cells = <1>;
255*4882a593Smuzhiyun				clocks = <&socplldiv2 0>;
256*4882a593Smuzhiyun				reg = <0x0 0x1f21c000 0x0 0x1000>;
257*4882a593Smuzhiyun				reg-names = "csr-reg";
258*4882a593Smuzhiyun				clock-output-names = "sataphy1clk";
259*4882a593Smuzhiyun				status = "disabled";
260*4882a593Smuzhiyun				csr-offset = <0x4>;
261*4882a593Smuzhiyun				csr-mask = <0x00>;
262*4882a593Smuzhiyun				enable-offset = <0x0>;
263*4882a593Smuzhiyun				enable-mask = <0x06>;
264*4882a593Smuzhiyun			};
265*4882a593Smuzhiyun
266*4882a593Smuzhiyun			sataphy2clk: sataphy1clk@1f22c000 {
267*4882a593Smuzhiyun				compatible = "apm,xgene-device-clock";
268*4882a593Smuzhiyun				#clock-cells = <1>;
269*4882a593Smuzhiyun				clocks = <&socplldiv2 0>;
270*4882a593Smuzhiyun				reg = <0x0 0x1f22c000 0x0 0x1000>;
271*4882a593Smuzhiyun				reg-names = "csr-reg";
272*4882a593Smuzhiyun				clock-output-names = "sataphy2clk";
273*4882a593Smuzhiyun				status = "ok";
274*4882a593Smuzhiyun				csr-offset = <0x4>;
275*4882a593Smuzhiyun				csr-mask = <0x3a>;
276*4882a593Smuzhiyun				enable-offset = <0x0>;
277*4882a593Smuzhiyun				enable-mask = <0x06>;
278*4882a593Smuzhiyun			};
279*4882a593Smuzhiyun
280*4882a593Smuzhiyun			sataphy3clk: sataphy1clk@1f23c000 {
281*4882a593Smuzhiyun				compatible = "apm,xgene-device-clock";
282*4882a593Smuzhiyun				#clock-cells = <1>;
283*4882a593Smuzhiyun				clocks = <&socplldiv2 0>;
284*4882a593Smuzhiyun				reg = <0x0 0x1f23c000 0x0 0x1000>;
285*4882a593Smuzhiyun				reg-names = "csr-reg";
286*4882a593Smuzhiyun				clock-output-names = "sataphy3clk";
287*4882a593Smuzhiyun				status = "ok";
288*4882a593Smuzhiyun				csr-offset = <0x4>;
289*4882a593Smuzhiyun				csr-mask = <0x3a>;
290*4882a593Smuzhiyun				enable-offset = <0x0>;
291*4882a593Smuzhiyun				enable-mask = <0x06>;
292*4882a593Smuzhiyun			};
293*4882a593Smuzhiyun
294*4882a593Smuzhiyun			sata01clk: sata01clk@1f21c000 {
295*4882a593Smuzhiyun				compatible = "apm,xgene-device-clock";
296*4882a593Smuzhiyun				#clock-cells = <1>;
297*4882a593Smuzhiyun				clocks = <&socplldiv2 0>;
298*4882a593Smuzhiyun				reg = <0x0 0x1f21c000 0x0 0x1000>;
299*4882a593Smuzhiyun				reg-names = "csr-reg";
300*4882a593Smuzhiyun				clock-output-names = "sata01clk";
301*4882a593Smuzhiyun				csr-offset = <0x4>;
302*4882a593Smuzhiyun				csr-mask = <0x05>;
303*4882a593Smuzhiyun				enable-offset = <0x0>;
304*4882a593Smuzhiyun				enable-mask = <0x39>;
305*4882a593Smuzhiyun			};
306*4882a593Smuzhiyun
307*4882a593Smuzhiyun			sata23clk: sata23clk@1f22c000 {
308*4882a593Smuzhiyun				compatible = "apm,xgene-device-clock";
309*4882a593Smuzhiyun				#clock-cells = <1>;
310*4882a593Smuzhiyun				clocks = <&socplldiv2 0>;
311*4882a593Smuzhiyun				reg = <0x0 0x1f22c000 0x0 0x1000>;
312*4882a593Smuzhiyun				reg-names = "csr-reg";
313*4882a593Smuzhiyun				clock-output-names = "sata23clk";
314*4882a593Smuzhiyun				csr-offset = <0x4>;
315*4882a593Smuzhiyun				csr-mask = <0x05>;
316*4882a593Smuzhiyun				enable-offset = <0x0>;
317*4882a593Smuzhiyun				enable-mask = <0x39>;
318*4882a593Smuzhiyun			};
319*4882a593Smuzhiyun
320*4882a593Smuzhiyun			sata45clk: sata45clk@1f23c000 {
321*4882a593Smuzhiyun				compatible = "apm,xgene-device-clock";
322*4882a593Smuzhiyun				#clock-cells = <1>;
323*4882a593Smuzhiyun				clocks = <&socplldiv2 0>;
324*4882a593Smuzhiyun				reg = <0x0 0x1f23c000 0x0 0x1000>;
325*4882a593Smuzhiyun				reg-names = "csr-reg";
326*4882a593Smuzhiyun				clock-output-names = "sata45clk";
327*4882a593Smuzhiyun				csr-offset = <0x4>;
328*4882a593Smuzhiyun				csr-mask = <0x05>;
329*4882a593Smuzhiyun				enable-offset = <0x0>;
330*4882a593Smuzhiyun				enable-mask = <0x39>;
331*4882a593Smuzhiyun			};
332*4882a593Smuzhiyun
333*4882a593Smuzhiyun			rtcclk: rtcclk@17000000 {
334*4882a593Smuzhiyun				compatible = "apm,xgene-device-clock";
335*4882a593Smuzhiyun				#clock-cells = <1>;
336*4882a593Smuzhiyun				clocks = <&socplldiv2 0>;
337*4882a593Smuzhiyun				reg = <0x0 0x17000000 0x0 0x2000>;
338*4882a593Smuzhiyun				reg-names = "csr-reg";
339*4882a593Smuzhiyun				csr-offset = <0xc>;
340*4882a593Smuzhiyun				csr-mask = <0x2>;
341*4882a593Smuzhiyun				enable-offset = <0x10>;
342*4882a593Smuzhiyun				enable-mask = <0x2>;
343*4882a593Smuzhiyun				clock-output-names = "rtcclk";
344*4882a593Smuzhiyun			};
345*4882a593Smuzhiyun
346*4882a593Smuzhiyun			rngpkaclk: rngpkaclk@17000000 {
347*4882a593Smuzhiyun				compatible = "apm,xgene-device-clock";
348*4882a593Smuzhiyun				#clock-cells = <1>;
349*4882a593Smuzhiyun				clocks = <&socplldiv2 0>;
350*4882a593Smuzhiyun				reg = <0x0 0x17000000 0x0 0x2000>;
351*4882a593Smuzhiyun				reg-names = "csr-reg";
352*4882a593Smuzhiyun				csr-offset = <0xc>;
353*4882a593Smuzhiyun				csr-mask = <0x10>;
354*4882a593Smuzhiyun				enable-offset = <0x10>;
355*4882a593Smuzhiyun				enable-mask = <0x10>;
356*4882a593Smuzhiyun				clock-output-names = "rngpkaclk";
357*4882a593Smuzhiyun			};
358*4882a593Smuzhiyun
359*4882a593Smuzhiyun			pcie0clk: pcie0clk@1f2bc000 {
360*4882a593Smuzhiyun				status = "disabled";
361*4882a593Smuzhiyun				compatible = "apm,xgene-device-clock";
362*4882a593Smuzhiyun				#clock-cells = <1>;
363*4882a593Smuzhiyun				clocks = <&socplldiv2 0>;
364*4882a593Smuzhiyun				reg = <0x0 0x1f2bc000 0x0 0x1000>;
365*4882a593Smuzhiyun				reg-names = "csr-reg";
366*4882a593Smuzhiyun				clock-output-names = "pcie0clk";
367*4882a593Smuzhiyun			};
368*4882a593Smuzhiyun
369*4882a593Smuzhiyun			pcie1clk: pcie1clk@1f2cc000 {
370*4882a593Smuzhiyun				status = "disabled";
371*4882a593Smuzhiyun				compatible = "apm,xgene-device-clock";
372*4882a593Smuzhiyun				#clock-cells = <1>;
373*4882a593Smuzhiyun				clocks = <&socplldiv2 0>;
374*4882a593Smuzhiyun				reg = <0x0 0x1f2cc000 0x0 0x1000>;
375*4882a593Smuzhiyun				reg-names = "csr-reg";
376*4882a593Smuzhiyun				clock-output-names = "pcie1clk";
377*4882a593Smuzhiyun			};
378*4882a593Smuzhiyun
379*4882a593Smuzhiyun			pcie2clk: pcie2clk@1f2dc000 {
380*4882a593Smuzhiyun				status = "disabled";
381*4882a593Smuzhiyun				compatible = "apm,xgene-device-clock";
382*4882a593Smuzhiyun				#clock-cells = <1>;
383*4882a593Smuzhiyun				clocks = <&socplldiv2 0>;
384*4882a593Smuzhiyun				reg = <0x0 0x1f2dc000 0x0 0x1000>;
385*4882a593Smuzhiyun				reg-names = "csr-reg";
386*4882a593Smuzhiyun				clock-output-names = "pcie2clk";
387*4882a593Smuzhiyun			};
388*4882a593Smuzhiyun
389*4882a593Smuzhiyun			pcie3clk: pcie3clk@1f50c000 {
390*4882a593Smuzhiyun				status = "disabled";
391*4882a593Smuzhiyun				compatible = "apm,xgene-device-clock";
392*4882a593Smuzhiyun				#clock-cells = <1>;
393*4882a593Smuzhiyun				clocks = <&socplldiv2 0>;
394*4882a593Smuzhiyun				reg = <0x0 0x1f50c000 0x0 0x1000>;
395*4882a593Smuzhiyun				reg-names = "csr-reg";
396*4882a593Smuzhiyun				clock-output-names = "pcie3clk";
397*4882a593Smuzhiyun			};
398*4882a593Smuzhiyun
399*4882a593Smuzhiyun			pcie4clk: pcie4clk@1f51c000 {
400*4882a593Smuzhiyun				status = "disabled";
401*4882a593Smuzhiyun				compatible = "apm,xgene-device-clock";
402*4882a593Smuzhiyun				#clock-cells = <1>;
403*4882a593Smuzhiyun				clocks = <&socplldiv2 0>;
404*4882a593Smuzhiyun				reg = <0x0 0x1f51c000 0x0 0x1000>;
405*4882a593Smuzhiyun				reg-names = "csr-reg";
406*4882a593Smuzhiyun				clock-output-names = "pcie4clk";
407*4882a593Smuzhiyun			};
408*4882a593Smuzhiyun
409*4882a593Smuzhiyun			dmaclk: dmaclk@1f27c000 {
410*4882a593Smuzhiyun				compatible = "apm,xgene-device-clock";
411*4882a593Smuzhiyun				#clock-cells = <1>;
412*4882a593Smuzhiyun				clocks = <&socplldiv2 0>;
413*4882a593Smuzhiyun				reg = <0x0 0x1f27c000 0x0 0x1000>;
414*4882a593Smuzhiyun				reg-names = "csr-reg";
415*4882a593Smuzhiyun				clock-output-names = "dmaclk";
416*4882a593Smuzhiyun			};
417*4882a593Smuzhiyun		};
418*4882a593Smuzhiyun
419*4882a593Smuzhiyun		msi: msi@79000000 {
420*4882a593Smuzhiyun			compatible = "apm,xgene1-msi";
421*4882a593Smuzhiyun			msi-controller;
422*4882a593Smuzhiyun			reg = <0x00 0x79000000 0x0 0x900000>;
423*4882a593Smuzhiyun			interrupts = <  0x0 0x10 0x4
424*4882a593Smuzhiyun					0x0 0x11 0x4
425*4882a593Smuzhiyun					0x0 0x12 0x4
426*4882a593Smuzhiyun					0x0 0x13 0x4
427*4882a593Smuzhiyun					0x0 0x14 0x4
428*4882a593Smuzhiyun					0x0 0x15 0x4
429*4882a593Smuzhiyun					0x0 0x16 0x4
430*4882a593Smuzhiyun					0x0 0x17 0x4
431*4882a593Smuzhiyun					0x0 0x18 0x4
432*4882a593Smuzhiyun					0x0 0x19 0x4
433*4882a593Smuzhiyun					0x0 0x1a 0x4
434*4882a593Smuzhiyun					0x0 0x1b 0x4
435*4882a593Smuzhiyun					0x0 0x1c 0x4
436*4882a593Smuzhiyun					0x0 0x1d 0x4
437*4882a593Smuzhiyun					0x0 0x1e 0x4
438*4882a593Smuzhiyun					0x0 0x1f 0x4>;
439*4882a593Smuzhiyun		};
440*4882a593Smuzhiyun
441*4882a593Smuzhiyun		scu: system-clk-controller@17000000 {
442*4882a593Smuzhiyun			compatible = "apm,xgene-scu","syscon";
443*4882a593Smuzhiyun			reg = <0x0 0x17000000 0x0 0x400>;
444*4882a593Smuzhiyun		};
445*4882a593Smuzhiyun
446*4882a593Smuzhiyun		reboot: reboot@17000014 {
447*4882a593Smuzhiyun			compatible = "syscon-reboot";
448*4882a593Smuzhiyun			regmap = <&scu>;
449*4882a593Smuzhiyun			offset = <0x14>;
450*4882a593Smuzhiyun			mask = <0x1>;
451*4882a593Smuzhiyun		};
452*4882a593Smuzhiyun
453*4882a593Smuzhiyun		csw: csw@7e200000 {
454*4882a593Smuzhiyun			compatible = "apm,xgene-csw", "syscon";
455*4882a593Smuzhiyun			reg = <0x0 0x7e200000 0x0 0x1000>;
456*4882a593Smuzhiyun		};
457*4882a593Smuzhiyun
458*4882a593Smuzhiyun		mcba: mcba@7e700000 {
459*4882a593Smuzhiyun			compatible = "apm,xgene-mcb", "syscon";
460*4882a593Smuzhiyun			reg = <0x0 0x7e700000 0x0 0x1000>;
461*4882a593Smuzhiyun		};
462*4882a593Smuzhiyun
463*4882a593Smuzhiyun		mcbb: mcbb@7e720000 {
464*4882a593Smuzhiyun			compatible = "apm,xgene-mcb", "syscon";
465*4882a593Smuzhiyun			reg = <0x0 0x7e720000 0x0 0x1000>;
466*4882a593Smuzhiyun		};
467*4882a593Smuzhiyun
468*4882a593Smuzhiyun		efuse: efuse@1054a000 {
469*4882a593Smuzhiyun			compatible = "apm,xgene-efuse", "syscon";
470*4882a593Smuzhiyun			reg = <0x0 0x1054a000 0x0 0x20>;
471*4882a593Smuzhiyun		};
472*4882a593Smuzhiyun
473*4882a593Smuzhiyun		rb: rb@7e000000 {
474*4882a593Smuzhiyun			compatible = "apm,xgene-rb", "syscon";
475*4882a593Smuzhiyun			reg = <0x0 0x7e000000 0x0 0x10>;
476*4882a593Smuzhiyun		};
477*4882a593Smuzhiyun
478*4882a593Smuzhiyun		edac@78800000 {
479*4882a593Smuzhiyun			compatible = "apm,xgene-edac";
480*4882a593Smuzhiyun			#address-cells = <2>;
481*4882a593Smuzhiyun			#size-cells = <2>;
482*4882a593Smuzhiyun			ranges;
483*4882a593Smuzhiyun			regmap-csw = <&csw>;
484*4882a593Smuzhiyun			regmap-mcba = <&mcba>;
485*4882a593Smuzhiyun			regmap-mcbb = <&mcbb>;
486*4882a593Smuzhiyun			regmap-efuse = <&efuse>;
487*4882a593Smuzhiyun			regmap-rb = <&rb>;
488*4882a593Smuzhiyun			reg = <0x0 0x78800000 0x0 0x100>;
489*4882a593Smuzhiyun			interrupts = <0x0 0x20 0x4>,
490*4882a593Smuzhiyun				     <0x0 0x21 0x4>,
491*4882a593Smuzhiyun				     <0x0 0x27 0x4>;
492*4882a593Smuzhiyun
493*4882a593Smuzhiyun			edacmc@7e800000 {
494*4882a593Smuzhiyun				compatible = "apm,xgene-edac-mc";
495*4882a593Smuzhiyun				reg = <0x0 0x7e800000 0x0 0x1000>;
496*4882a593Smuzhiyun				memory-controller = <0>;
497*4882a593Smuzhiyun			};
498*4882a593Smuzhiyun
499*4882a593Smuzhiyun			edacmc@7e840000 {
500*4882a593Smuzhiyun				compatible = "apm,xgene-edac-mc";
501*4882a593Smuzhiyun				reg = <0x0 0x7e840000 0x0 0x1000>;
502*4882a593Smuzhiyun				memory-controller = <1>;
503*4882a593Smuzhiyun			};
504*4882a593Smuzhiyun
505*4882a593Smuzhiyun			edacmc@7e880000 {
506*4882a593Smuzhiyun				compatible = "apm,xgene-edac-mc";
507*4882a593Smuzhiyun				reg = <0x0 0x7e880000 0x0 0x1000>;
508*4882a593Smuzhiyun				memory-controller = <2>;
509*4882a593Smuzhiyun			};
510*4882a593Smuzhiyun
511*4882a593Smuzhiyun			edacmc@7e8c0000 {
512*4882a593Smuzhiyun				compatible = "apm,xgene-edac-mc";
513*4882a593Smuzhiyun				reg = <0x0 0x7e8c0000 0x0 0x1000>;
514*4882a593Smuzhiyun				memory-controller = <3>;
515*4882a593Smuzhiyun			};
516*4882a593Smuzhiyun
517*4882a593Smuzhiyun			edacpmd@7c000000 {
518*4882a593Smuzhiyun				compatible = "apm,xgene-edac-pmd";
519*4882a593Smuzhiyun				reg = <0x0 0x7c000000 0x0 0x200000>;
520*4882a593Smuzhiyun				pmd-controller = <0>;
521*4882a593Smuzhiyun			};
522*4882a593Smuzhiyun
523*4882a593Smuzhiyun			edacpmd@7c200000 {
524*4882a593Smuzhiyun				compatible = "apm,xgene-edac-pmd";
525*4882a593Smuzhiyun				reg = <0x0 0x7c200000 0x0 0x200000>;
526*4882a593Smuzhiyun				pmd-controller = <1>;
527*4882a593Smuzhiyun			};
528*4882a593Smuzhiyun
529*4882a593Smuzhiyun			edacpmd@7c400000 {
530*4882a593Smuzhiyun				compatible = "apm,xgene-edac-pmd";
531*4882a593Smuzhiyun				reg = <0x0 0x7c400000 0x0 0x200000>;
532*4882a593Smuzhiyun				pmd-controller = <2>;
533*4882a593Smuzhiyun			};
534*4882a593Smuzhiyun
535*4882a593Smuzhiyun			edacpmd@7c600000 {
536*4882a593Smuzhiyun				compatible = "apm,xgene-edac-pmd";
537*4882a593Smuzhiyun				reg = <0x0 0x7c600000 0x0 0x200000>;
538*4882a593Smuzhiyun				pmd-controller = <3>;
539*4882a593Smuzhiyun			};
540*4882a593Smuzhiyun
541*4882a593Smuzhiyun			edacl3@7e600000 {
542*4882a593Smuzhiyun				compatible = "apm,xgene-edac-l3";
543*4882a593Smuzhiyun				reg = <0x0 0x7e600000 0x0 0x1000>;
544*4882a593Smuzhiyun			};
545*4882a593Smuzhiyun
546*4882a593Smuzhiyun			edacsoc@7e930000 {
547*4882a593Smuzhiyun				compatible = "apm,xgene-edac-soc-v1";
548*4882a593Smuzhiyun				reg = <0x0 0x7e930000 0x0 0x1000>;
549*4882a593Smuzhiyun			};
550*4882a593Smuzhiyun		};
551*4882a593Smuzhiyun
552*4882a593Smuzhiyun		pmu: pmu@78810000 {
553*4882a593Smuzhiyun			compatible = "apm,xgene-pmu-v2";
554*4882a593Smuzhiyun			#address-cells = <2>;
555*4882a593Smuzhiyun			#size-cells = <2>;
556*4882a593Smuzhiyun			ranges;
557*4882a593Smuzhiyun			regmap-csw = <&csw>;
558*4882a593Smuzhiyun			regmap-mcba = <&mcba>;
559*4882a593Smuzhiyun			regmap-mcbb = <&mcbb>;
560*4882a593Smuzhiyun			reg = <0x0 0x78810000 0x0 0x1000>;
561*4882a593Smuzhiyun			interrupts = <0x0 0x22 0x4>;
562*4882a593Smuzhiyun
563*4882a593Smuzhiyun			pmul3c@7e610000 {
564*4882a593Smuzhiyun				compatible = "apm,xgene-pmu-l3c";
565*4882a593Smuzhiyun				reg = <0x0 0x7e610000 0x0 0x1000>;
566*4882a593Smuzhiyun			};
567*4882a593Smuzhiyun
568*4882a593Smuzhiyun			pmuiob@7e940000 {
569*4882a593Smuzhiyun				compatible = "apm,xgene-pmu-iob";
570*4882a593Smuzhiyun				reg = <0x0 0x7e940000 0x0 0x1000>;
571*4882a593Smuzhiyun			};
572*4882a593Smuzhiyun
573*4882a593Smuzhiyun			pmucmcb@7e710000 {
574*4882a593Smuzhiyun				compatible = "apm,xgene-pmu-mcb";
575*4882a593Smuzhiyun				reg = <0x0 0x7e710000 0x0 0x1000>;
576*4882a593Smuzhiyun				enable-bit-index = <0>;
577*4882a593Smuzhiyun			};
578*4882a593Smuzhiyun
579*4882a593Smuzhiyun			pmucmcb@7e730000 {
580*4882a593Smuzhiyun				compatible = "apm,xgene-pmu-mcb";
581*4882a593Smuzhiyun				reg = <0x0 0x7e730000 0x0 0x1000>;
582*4882a593Smuzhiyun				enable-bit-index = <1>;
583*4882a593Smuzhiyun			};
584*4882a593Smuzhiyun
585*4882a593Smuzhiyun			pmucmc@7e810000 {
586*4882a593Smuzhiyun				compatible = "apm,xgene-pmu-mc";
587*4882a593Smuzhiyun				reg = <0x0 0x7e810000 0x0 0x1000>;
588*4882a593Smuzhiyun				enable-bit-index = <0>;
589*4882a593Smuzhiyun			};
590*4882a593Smuzhiyun
591*4882a593Smuzhiyun			pmucmc@7e850000 {
592*4882a593Smuzhiyun				compatible = "apm,xgene-pmu-mc";
593*4882a593Smuzhiyun				reg = <0x0 0x7e850000 0x0 0x1000>;
594*4882a593Smuzhiyun				enable-bit-index = <1>;
595*4882a593Smuzhiyun			};
596*4882a593Smuzhiyun
597*4882a593Smuzhiyun			pmucmc@7e890000 {
598*4882a593Smuzhiyun				compatible = "apm,xgene-pmu-mc";
599*4882a593Smuzhiyun				reg = <0x0 0x7e890000 0x0 0x1000>;
600*4882a593Smuzhiyun				enable-bit-index = <2>;
601*4882a593Smuzhiyun			};
602*4882a593Smuzhiyun
603*4882a593Smuzhiyun			pmucmc@7e8d0000 {
604*4882a593Smuzhiyun				compatible = "apm,xgene-pmu-mc";
605*4882a593Smuzhiyun				reg = <0x0 0x7e8d0000 0x0 0x1000>;
606*4882a593Smuzhiyun				enable-bit-index = <3>;
607*4882a593Smuzhiyun			};
608*4882a593Smuzhiyun		};
609*4882a593Smuzhiyun
610*4882a593Smuzhiyun		pcie0: pcie@1f2b0000 {
611*4882a593Smuzhiyun			status = "disabled";
612*4882a593Smuzhiyun			device_type = "pci";
613*4882a593Smuzhiyun			compatible = "apm,xgene-storm-pcie", "apm,xgene-pcie";
614*4882a593Smuzhiyun			#interrupt-cells = <1>;
615*4882a593Smuzhiyun			#size-cells = <2>;
616*4882a593Smuzhiyun			#address-cells = <3>;
617*4882a593Smuzhiyun			reg = < 0x00 0x1f2b0000 0x0 0x00010000   /* Controller registers */
618*4882a593Smuzhiyun				0xe0 0xd0000000 0x0 0x00040000>; /* PCI config space */
619*4882a593Smuzhiyun			reg-names = "csr", "cfg";
620*4882a593Smuzhiyun			ranges = <0x01000000 0x00 0x00000000 0xe0 0x10000000 0x00 0x00010000   /* io */
621*4882a593Smuzhiyun				  0x02000000 0x00 0x80000000 0xe1 0x80000000 0x00 0x80000000   /* mem */
622*4882a593Smuzhiyun				  0x43000000 0xf0 0x00000000 0xf0 0x00000000 0x10 0x00000000>; /* mem */
623*4882a593Smuzhiyun			dma-ranges = <0x42000000 0x80 0x00000000 0x80 0x00000000 0x00 0x80000000
624*4882a593Smuzhiyun				      0x42000000 0x00 0x00000000 0x00 0x00000000 0x80 0x00000000>;
625*4882a593Smuzhiyun			bus-range = <0x00 0xff>;
626*4882a593Smuzhiyun			interrupt-map-mask = <0x0 0x0 0x0 0x7>;
627*4882a593Smuzhiyun			interrupt-map = <0x0 0x0 0x0 0x1 &gic 0x0 0xc2 0x4
628*4882a593Smuzhiyun					 0x0 0x0 0x0 0x2 &gic 0x0 0xc3 0x4
629*4882a593Smuzhiyun					 0x0 0x0 0x0 0x3 &gic 0x0 0xc4 0x4
630*4882a593Smuzhiyun					 0x0 0x0 0x0 0x4 &gic 0x0 0xc5 0x4>;
631*4882a593Smuzhiyun			dma-coherent;
632*4882a593Smuzhiyun			clocks = <&pcie0clk 0>;
633*4882a593Smuzhiyun			msi-parent = <&msi>;
634*4882a593Smuzhiyun		};
635*4882a593Smuzhiyun
636*4882a593Smuzhiyun		pcie1: pcie@1f2c0000 {
637*4882a593Smuzhiyun			status = "disabled";
638*4882a593Smuzhiyun			device_type = "pci";
639*4882a593Smuzhiyun			compatible = "apm,xgene-storm-pcie", "apm,xgene-pcie";
640*4882a593Smuzhiyun			#interrupt-cells = <1>;
641*4882a593Smuzhiyun			#size-cells = <2>;
642*4882a593Smuzhiyun			#address-cells = <3>;
643*4882a593Smuzhiyun			reg = < 0x00 0x1f2c0000 0x0 0x00010000   /* Controller registers */
644*4882a593Smuzhiyun				0xd0 0xd0000000 0x0 0x00040000>; /* PCI config space */
645*4882a593Smuzhiyun			reg-names = "csr", "cfg";
646*4882a593Smuzhiyun			ranges = <0x01000000 0x00 0x00000000 0xd0 0x10000000 0x00 0x00010000   /* io  */
647*4882a593Smuzhiyun				  0x02000000 0x00 0x80000000 0xd1 0x80000000 0x00 0x80000000   /* mem */
648*4882a593Smuzhiyun				  0x43000000 0xd8 0x00000000 0xd8 0x00000000 0x08 0x00000000>; /* mem */
649*4882a593Smuzhiyun			dma-ranges = <0x42000000 0x80 0x00000000 0x80 0x00000000 0x00 0x80000000
650*4882a593Smuzhiyun				      0x42000000 0x00 0x00000000 0x00 0x00000000 0x80 0x00000000>;
651*4882a593Smuzhiyun			bus-range = <0x00 0xff>;
652*4882a593Smuzhiyun			interrupt-map-mask = <0x0 0x0 0x0 0x7>;
653*4882a593Smuzhiyun			interrupt-map = <0x0 0x0 0x0 0x1 &gic 0x0 0xc8 0x4
654*4882a593Smuzhiyun					 0x0 0x0 0x0 0x2 &gic 0x0 0xc9 0x4
655*4882a593Smuzhiyun					 0x0 0x0 0x0 0x3 &gic 0x0 0xca 0x4
656*4882a593Smuzhiyun					 0x0 0x0 0x0 0x4 &gic 0x0 0xcb 0x4>;
657*4882a593Smuzhiyun			dma-coherent;
658*4882a593Smuzhiyun			clocks = <&pcie1clk 0>;
659*4882a593Smuzhiyun			msi-parent = <&msi>;
660*4882a593Smuzhiyun		};
661*4882a593Smuzhiyun
662*4882a593Smuzhiyun		pcie2: pcie@1f2d0000 {
663*4882a593Smuzhiyun			status = "disabled";
664*4882a593Smuzhiyun			device_type = "pci";
665*4882a593Smuzhiyun			compatible = "apm,xgene-storm-pcie", "apm,xgene-pcie";
666*4882a593Smuzhiyun			#interrupt-cells = <1>;
667*4882a593Smuzhiyun			#size-cells = <2>;
668*4882a593Smuzhiyun			#address-cells = <3>;
669*4882a593Smuzhiyun			reg =  < 0x00 0x1f2d0000 0x0 0x00010000   /* Controller registers */
670*4882a593Smuzhiyun				 0x90 0xd0000000 0x0 0x00040000>; /* PCI config space */
671*4882a593Smuzhiyun			reg-names = "csr", "cfg";
672*4882a593Smuzhiyun			ranges = <0x01000000 0x00 0x00000000 0x90 0x10000000 0x00 0x00010000   /* io  */
673*4882a593Smuzhiyun				  0x02000000 0x00 0x80000000 0x91 0x80000000 0x00 0x80000000   /* mem */
674*4882a593Smuzhiyun				  0x43000000 0x94 0x00000000 0x94 0x00000000 0x04 0x00000000>; /* mem */
675*4882a593Smuzhiyun			dma-ranges = <0x42000000 0x80 0x00000000 0x80 0x00000000 0x00 0x80000000
676*4882a593Smuzhiyun				      0x42000000 0x00 0x00000000 0x00 0x00000000 0x80 0x00000000>;
677*4882a593Smuzhiyun			bus-range = <0x00 0xff>;
678*4882a593Smuzhiyun			interrupt-map-mask = <0x0 0x0 0x0 0x7>;
679*4882a593Smuzhiyun			interrupt-map = <0x0 0x0 0x0 0x1 &gic 0x0 0xce 0x4
680*4882a593Smuzhiyun					 0x0 0x0 0x0 0x2 &gic 0x0 0xcf 0x4
681*4882a593Smuzhiyun					 0x0 0x0 0x0 0x3 &gic 0x0 0xd0 0x4
682*4882a593Smuzhiyun					 0x0 0x0 0x0 0x4 &gic 0x0 0xd1 0x4>;
683*4882a593Smuzhiyun			dma-coherent;
684*4882a593Smuzhiyun			clocks = <&pcie2clk 0>;
685*4882a593Smuzhiyun			msi-parent = <&msi>;
686*4882a593Smuzhiyun		};
687*4882a593Smuzhiyun
688*4882a593Smuzhiyun		pcie3: pcie@1f500000 {
689*4882a593Smuzhiyun			status = "disabled";
690*4882a593Smuzhiyun			device_type = "pci";
691*4882a593Smuzhiyun			compatible = "apm,xgene-storm-pcie", "apm,xgene-pcie";
692*4882a593Smuzhiyun			#interrupt-cells = <1>;
693*4882a593Smuzhiyun			#size-cells = <2>;
694*4882a593Smuzhiyun			#address-cells = <3>;
695*4882a593Smuzhiyun			reg = < 0x00 0x1f500000 0x0 0x00010000   /* Controller registers */
696*4882a593Smuzhiyun				0xa0 0xd0000000 0x0 0x00040000>; /* PCI config space */
697*4882a593Smuzhiyun			reg-names = "csr", "cfg";
698*4882a593Smuzhiyun			ranges = <0x01000000 0x00 0x00000000 0xa0 0x10000000 0x00 0x00010000   /* io  */
699*4882a593Smuzhiyun				  0x02000000 0x00 0x80000000 0xa1 0x80000000 0x00 0x80000000   /* mem */
700*4882a593Smuzhiyun				  0x43000000 0xb0 0x00000000 0xb0 0x00000000 0x10 0x00000000>; /* mem */
701*4882a593Smuzhiyun			dma-ranges = <0x42000000 0x80 0x00000000 0x80 0x00000000 0x00 0x80000000
702*4882a593Smuzhiyun				      0x42000000 0x00 0x00000000 0x00 0x00000000 0x80 0x00000000>;
703*4882a593Smuzhiyun			bus-range = <0x00 0xff>;
704*4882a593Smuzhiyun			interrupt-map-mask = <0x0 0x0 0x0 0x7>;
705*4882a593Smuzhiyun			interrupt-map = <0x0 0x0 0x0 0x1 &gic 0x0 0xd4 0x4
706*4882a593Smuzhiyun					 0x0 0x0 0x0 0x2 &gic 0x0 0xd5 0x4
707*4882a593Smuzhiyun					 0x0 0x0 0x0 0x3 &gic 0x0 0xd6 0x4
708*4882a593Smuzhiyun					 0x0 0x0 0x0 0x4 &gic 0x0 0xd7 0x4>;
709*4882a593Smuzhiyun			dma-coherent;
710*4882a593Smuzhiyun			clocks = <&pcie3clk 0>;
711*4882a593Smuzhiyun			msi-parent = <&msi>;
712*4882a593Smuzhiyun		};
713*4882a593Smuzhiyun
714*4882a593Smuzhiyun		pcie4: pcie@1f510000 {
715*4882a593Smuzhiyun			status = "disabled";
716*4882a593Smuzhiyun			device_type = "pci";
717*4882a593Smuzhiyun			compatible = "apm,xgene-storm-pcie", "apm,xgene-pcie";
718*4882a593Smuzhiyun			#interrupt-cells = <1>;
719*4882a593Smuzhiyun			#size-cells = <2>;
720*4882a593Smuzhiyun			#address-cells = <3>;
721*4882a593Smuzhiyun			reg = < 0x00 0x1f510000 0x0 0x00010000   /* Controller registers */
722*4882a593Smuzhiyun				0xc0 0xd0000000 0x0 0x00200000>; /* PCI config space */
723*4882a593Smuzhiyun			reg-names = "csr", "cfg";
724*4882a593Smuzhiyun			ranges = <0x01000000 0x00 0x00000000 0xc0 0x10000000 0x00 0x00010000   /* io  */
725*4882a593Smuzhiyun				  0x02000000 0x00 0x80000000 0xc1 0x80000000 0x00 0x80000000   /* mem */
726*4882a593Smuzhiyun				  0x43000000 0xc8 0x00000000 0xc8 0x00000000 0x08 0x00000000>; /* mem */
727*4882a593Smuzhiyun			dma-ranges = <0x42000000 0x80 0x00000000 0x80 0x00000000 0x00 0x80000000
728*4882a593Smuzhiyun				      0x42000000 0x00 0x00000000 0x00 0x00000000 0x80 0x00000000>;
729*4882a593Smuzhiyun			bus-range = <0x00 0xff>;
730*4882a593Smuzhiyun			interrupt-map-mask = <0x0 0x0 0x0 0x7>;
731*4882a593Smuzhiyun			interrupt-map = <0x0 0x0 0x0 0x1 &gic 0x0 0xda 0x4
732*4882a593Smuzhiyun					 0x0 0x0 0x0 0x2 &gic 0x0 0xdb 0x4
733*4882a593Smuzhiyun					 0x0 0x0 0x0 0x3 &gic 0x0 0xdc 0x4
734*4882a593Smuzhiyun					 0x0 0x0 0x0 0x4 &gic 0x0 0xdd 0x4>;
735*4882a593Smuzhiyun			dma-coherent;
736*4882a593Smuzhiyun			clocks = <&pcie4clk 0>;
737*4882a593Smuzhiyun			msi-parent = <&msi>;
738*4882a593Smuzhiyun		};
739*4882a593Smuzhiyun
740*4882a593Smuzhiyun		mailbox: mailbox@10540000 {
741*4882a593Smuzhiyun			compatible = "apm,xgene-slimpro-mbox";
742*4882a593Smuzhiyun			reg = <0x0 0x10540000 0x0 0xa000>;
743*4882a593Smuzhiyun			#mbox-cells = <1>;
744*4882a593Smuzhiyun			interrupts =    <0x0 0x0 0x4>,
745*4882a593Smuzhiyun					<0x0 0x1 0x4>,
746*4882a593Smuzhiyun					<0x0 0x2 0x4>,
747*4882a593Smuzhiyun					<0x0 0x3 0x4>,
748*4882a593Smuzhiyun					<0x0 0x4 0x4>,
749*4882a593Smuzhiyun					<0x0 0x5 0x4>,
750*4882a593Smuzhiyun					<0x0 0x6 0x4>,
751*4882a593Smuzhiyun					<0x0 0x7 0x4>;
752*4882a593Smuzhiyun		};
753*4882a593Smuzhiyun
754*4882a593Smuzhiyun		i2cslimpro {
755*4882a593Smuzhiyun			compatible = "apm,xgene-slimpro-i2c";
756*4882a593Smuzhiyun			mboxes = <&mailbox 0>;
757*4882a593Smuzhiyun		};
758*4882a593Smuzhiyun
759*4882a593Smuzhiyun		hwmonslimpro {
760*4882a593Smuzhiyun			compatible = "apm,xgene-slimpro-hwmon";
761*4882a593Smuzhiyun			mboxes = <&mailbox 7>;
762*4882a593Smuzhiyun		};
763*4882a593Smuzhiyun
764*4882a593Smuzhiyun		serial0: serial@1c020000 {
765*4882a593Smuzhiyun			status = "disabled";
766*4882a593Smuzhiyun			device_type = "serial";
767*4882a593Smuzhiyun			compatible = "ns16550a";
768*4882a593Smuzhiyun			reg = <0 0x1c020000 0x0 0x1000>;
769*4882a593Smuzhiyun			reg-shift = <2>;
770*4882a593Smuzhiyun			clock-frequency = <10000000>; /* Updated by bootloader */
771*4882a593Smuzhiyun			interrupt-parent = <&gic>;
772*4882a593Smuzhiyun			interrupts = <0x0 0x4c 0x4>;
773*4882a593Smuzhiyun		};
774*4882a593Smuzhiyun
775*4882a593Smuzhiyun		serial1: serial@1c021000 {
776*4882a593Smuzhiyun			status = "disabled";
777*4882a593Smuzhiyun			device_type = "serial";
778*4882a593Smuzhiyun			compatible = "ns16550a";
779*4882a593Smuzhiyun			reg = <0 0x1c021000 0x0 0x1000>;
780*4882a593Smuzhiyun			reg-shift = <2>;
781*4882a593Smuzhiyun			clock-frequency = <10000000>; /* Updated by bootloader */
782*4882a593Smuzhiyun			interrupt-parent = <&gic>;
783*4882a593Smuzhiyun			interrupts = <0x0 0x4d 0x4>;
784*4882a593Smuzhiyun		};
785*4882a593Smuzhiyun
786*4882a593Smuzhiyun		serial2: serial@1c022000 {
787*4882a593Smuzhiyun			status = "disabled";
788*4882a593Smuzhiyun			device_type = "serial";
789*4882a593Smuzhiyun			compatible = "ns16550a";
790*4882a593Smuzhiyun			reg = <0 0x1c022000 0x0 0x1000>;
791*4882a593Smuzhiyun			reg-shift = <2>;
792*4882a593Smuzhiyun			clock-frequency = <10000000>; /* Updated by bootloader */
793*4882a593Smuzhiyun			interrupt-parent = <&gic>;
794*4882a593Smuzhiyun			interrupts = <0x0 0x4e 0x4>;
795*4882a593Smuzhiyun		};
796*4882a593Smuzhiyun
797*4882a593Smuzhiyun		serial3: serial@1c023000 {
798*4882a593Smuzhiyun			status = "disabled";
799*4882a593Smuzhiyun			device_type = "serial";
800*4882a593Smuzhiyun			compatible = "ns16550a";
801*4882a593Smuzhiyun			reg = <0 0x1c023000 0x0 0x1000>;
802*4882a593Smuzhiyun			reg-shift = <2>;
803*4882a593Smuzhiyun			clock-frequency = <10000000>; /* Updated by bootloader */
804*4882a593Smuzhiyun			interrupt-parent = <&gic>;
805*4882a593Smuzhiyun			interrupts = <0x0 0x4f 0x4>;
806*4882a593Smuzhiyun		};
807*4882a593Smuzhiyun
808*4882a593Smuzhiyun		mmc0: mmc@1c000000 {
809*4882a593Smuzhiyun			compatible = "arasan,sdhci-4.9a";
810*4882a593Smuzhiyun			reg = <0x0 0x1c000000 0x0 0x100>;
811*4882a593Smuzhiyun			interrupts = <0x0 0x49 0x4>;
812*4882a593Smuzhiyun			dma-coherent;
813*4882a593Smuzhiyun			no-1-8-v;
814*4882a593Smuzhiyun			clock-names = "clk_xin", "clk_ahb";
815*4882a593Smuzhiyun			clocks = <&sdioclk 0>, <&ahbclk 0>;
816*4882a593Smuzhiyun		};
817*4882a593Smuzhiyun
818*4882a593Smuzhiyun		gfcgpio: gpio0@1701c000 {
819*4882a593Smuzhiyun			compatible = "apm,xgene-gpio";
820*4882a593Smuzhiyun			reg = <0x0 0x1701c000 0x0 0x40>;
821*4882a593Smuzhiyun			gpio-controller;
822*4882a593Smuzhiyun			#gpio-cells = <2>;
823*4882a593Smuzhiyun		};
824*4882a593Smuzhiyun
825*4882a593Smuzhiyun		dwgpio: gpio@1c024000 {
826*4882a593Smuzhiyun			compatible = "snps,dw-apb-gpio";
827*4882a593Smuzhiyun			reg = <0x0 0x1c024000 0x0 0x1000>;
828*4882a593Smuzhiyun			#address-cells = <1>;
829*4882a593Smuzhiyun			#size-cells = <0>;
830*4882a593Smuzhiyun
831*4882a593Smuzhiyun			porta: gpio-controller@0 {
832*4882a593Smuzhiyun				compatible = "snps,dw-apb-gpio-port";
833*4882a593Smuzhiyun				gpio-controller;
834*4882a593Smuzhiyun				#gpio-cells = <2>;
835*4882a593Smuzhiyun				snps,nr-gpios = <32>;
836*4882a593Smuzhiyun				reg = <0>;
837*4882a593Smuzhiyun			};
838*4882a593Smuzhiyun		};
839*4882a593Smuzhiyun
840*4882a593Smuzhiyun		i2c0: i2c@10512000 {
841*4882a593Smuzhiyun			status = "disabled";
842*4882a593Smuzhiyun			#address-cells = <1>;
843*4882a593Smuzhiyun			#size-cells = <0>;
844*4882a593Smuzhiyun			compatible = "snps,designware-i2c";
845*4882a593Smuzhiyun			reg = <0x0 0x10512000 0x0 0x1000>;
846*4882a593Smuzhiyun			interrupts = <0 0x44 0x4>;
847*4882a593Smuzhiyun			#clock-cells = <1>;
848*4882a593Smuzhiyun			clocks = <&ahbclk 0>;
849*4882a593Smuzhiyun			bus_num = <0>;
850*4882a593Smuzhiyun		};
851*4882a593Smuzhiyun
852*4882a593Smuzhiyun		phy1: phy@1f21a000 {
853*4882a593Smuzhiyun			compatible = "apm,xgene-phy";
854*4882a593Smuzhiyun			reg = <0x0 0x1f21a000 0x0 0x100>;
855*4882a593Smuzhiyun			#phy-cells = <1>;
856*4882a593Smuzhiyun			clocks = <&sataphy1clk 0>;
857*4882a593Smuzhiyun			status = "disabled";
858*4882a593Smuzhiyun			apm,tx-boost-gain = <30 30 30 30 30 30>;
859*4882a593Smuzhiyun			apm,tx-eye-tuning = <2 10 10 2 10 10>;
860*4882a593Smuzhiyun		};
861*4882a593Smuzhiyun
862*4882a593Smuzhiyun		phy2: phy@1f22a000 {
863*4882a593Smuzhiyun			compatible = "apm,xgene-phy";
864*4882a593Smuzhiyun			reg = <0x0 0x1f22a000 0x0 0x100>;
865*4882a593Smuzhiyun			#phy-cells = <1>;
866*4882a593Smuzhiyun			clocks = <&sataphy2clk 0>;
867*4882a593Smuzhiyun			status = "ok";
868*4882a593Smuzhiyun			apm,tx-boost-gain = <30 30 30 30 30 30>;
869*4882a593Smuzhiyun			apm,tx-eye-tuning = <1 10 10 2 10 10>;
870*4882a593Smuzhiyun		};
871*4882a593Smuzhiyun
872*4882a593Smuzhiyun		phy3: phy@1f23a000 {
873*4882a593Smuzhiyun			compatible = "apm,xgene-phy";
874*4882a593Smuzhiyun			reg = <0x0 0x1f23a000 0x0 0x100>;
875*4882a593Smuzhiyun			#phy-cells = <1>;
876*4882a593Smuzhiyun			clocks = <&sataphy3clk 0>;
877*4882a593Smuzhiyun			status = "ok";
878*4882a593Smuzhiyun			apm,tx-boost-gain = <31 31 31 31 31 31>;
879*4882a593Smuzhiyun			apm,tx-eye-tuning = <2 10 10 2 10 10>;
880*4882a593Smuzhiyun		};
881*4882a593Smuzhiyun
882*4882a593Smuzhiyun		sata1: sata@1a000000 {
883*4882a593Smuzhiyun			compatible = "apm,xgene-ahci";
884*4882a593Smuzhiyun			reg = <0x0 0x1a000000 0x0 0x1000>,
885*4882a593Smuzhiyun			      <0x0 0x1f210000 0x0 0x1000>,
886*4882a593Smuzhiyun			      <0x0 0x1f21d000 0x0 0x1000>,
887*4882a593Smuzhiyun			      <0x0 0x1f21e000 0x0 0x1000>,
888*4882a593Smuzhiyun			      <0x0 0x1f217000 0x0 0x1000>;
889*4882a593Smuzhiyun			interrupts = <0x0 0x86 0x4>;
890*4882a593Smuzhiyun			dma-coherent;
891*4882a593Smuzhiyun			status = "disabled";
892*4882a593Smuzhiyun			clocks = <&sata01clk 0>;
893*4882a593Smuzhiyun			phys = <&phy1 0>;
894*4882a593Smuzhiyun			phy-names = "sata-phy";
895*4882a593Smuzhiyun		};
896*4882a593Smuzhiyun
897*4882a593Smuzhiyun		sata2: sata@1a400000 {
898*4882a593Smuzhiyun			compatible = "apm,xgene-ahci";
899*4882a593Smuzhiyun			reg = <0x0 0x1a400000 0x0 0x1000>,
900*4882a593Smuzhiyun			      <0x0 0x1f220000 0x0 0x1000>,
901*4882a593Smuzhiyun			      <0x0 0x1f22d000 0x0 0x1000>,
902*4882a593Smuzhiyun			      <0x0 0x1f22e000 0x0 0x1000>,
903*4882a593Smuzhiyun			      <0x0 0x1f227000 0x0 0x1000>;
904*4882a593Smuzhiyun			interrupts = <0x0 0x87 0x4>;
905*4882a593Smuzhiyun			dma-coherent;
906*4882a593Smuzhiyun			status = "ok";
907*4882a593Smuzhiyun			clocks = <&sata23clk 0>;
908*4882a593Smuzhiyun			phys = <&phy2 0>;
909*4882a593Smuzhiyun			phy-names = "sata-phy";
910*4882a593Smuzhiyun		};
911*4882a593Smuzhiyun
912*4882a593Smuzhiyun		sata3: sata@1a800000 {
913*4882a593Smuzhiyun			compatible = "apm,xgene-ahci";
914*4882a593Smuzhiyun			reg = <0x0 0x1a800000 0x0 0x1000>,
915*4882a593Smuzhiyun			      <0x0 0x1f230000 0x0 0x1000>,
916*4882a593Smuzhiyun			      <0x0 0x1f23d000 0x0 0x1000>,
917*4882a593Smuzhiyun			      <0x0 0x1f23e000 0x0 0x1000>;
918*4882a593Smuzhiyun			interrupts = <0x0 0x88 0x4>;
919*4882a593Smuzhiyun			dma-coherent;
920*4882a593Smuzhiyun			status = "ok";
921*4882a593Smuzhiyun			clocks = <&sata45clk 0>;
922*4882a593Smuzhiyun			phys = <&phy3 0>;
923*4882a593Smuzhiyun			phy-names = "sata-phy";
924*4882a593Smuzhiyun		};
925*4882a593Smuzhiyun
926*4882a593Smuzhiyun		/* Do not change dwusb name, coded for backward compatibility */
927*4882a593Smuzhiyun		usb0: dwusb@19000000 {
928*4882a593Smuzhiyun			status = "disabled";
929*4882a593Smuzhiyun			compatible = "snps,dwc3";
930*4882a593Smuzhiyun			reg =  <0x0 0x19000000 0x0 0x100000>;
931*4882a593Smuzhiyun			interrupts = <0x0 0x89 0x4>;
932*4882a593Smuzhiyun			dma-coherent;
933*4882a593Smuzhiyun			dr_mode = "host";
934*4882a593Smuzhiyun		};
935*4882a593Smuzhiyun
936*4882a593Smuzhiyun		usb1: dwusb@19800000 {
937*4882a593Smuzhiyun			status = "disabled";
938*4882a593Smuzhiyun			compatible = "snps,dwc3";
939*4882a593Smuzhiyun			reg =  <0x0 0x19800000 0x0 0x100000>;
940*4882a593Smuzhiyun			interrupts = <0x0 0x8a 0x4>;
941*4882a593Smuzhiyun			dma-coherent;
942*4882a593Smuzhiyun			dr_mode = "host";
943*4882a593Smuzhiyun		};
944*4882a593Smuzhiyun
945*4882a593Smuzhiyun		sbgpio: gpio@17001000{
946*4882a593Smuzhiyun			compatible = "apm,xgene-gpio-sb";
947*4882a593Smuzhiyun			reg = <0x0 0x17001000 0x0 0x400>;
948*4882a593Smuzhiyun			#gpio-cells = <2>;
949*4882a593Smuzhiyun			gpio-controller;
950*4882a593Smuzhiyun			interrupts = 	<0x0 0x28 0x1>,
951*4882a593Smuzhiyun					<0x0 0x29 0x1>,
952*4882a593Smuzhiyun					<0x0 0x2a 0x1>,
953*4882a593Smuzhiyun					<0x0 0x2b 0x1>,
954*4882a593Smuzhiyun					<0x0 0x2c 0x1>,
955*4882a593Smuzhiyun					<0x0 0x2d 0x1>;
956*4882a593Smuzhiyun			interrupt-parent = <&gic>;
957*4882a593Smuzhiyun			#interrupt-cells = <2>;
958*4882a593Smuzhiyun			interrupt-controller;
959*4882a593Smuzhiyun		};
960*4882a593Smuzhiyun
961*4882a593Smuzhiyun		rtc: rtc@10510000 {
962*4882a593Smuzhiyun			compatible = "apm,xgene-rtc";
963*4882a593Smuzhiyun			reg = <0x0 0x10510000 0x0 0x400>;
964*4882a593Smuzhiyun			interrupts = <0x0 0x46 0x4>;
965*4882a593Smuzhiyun			#clock-cells = <1>;
966*4882a593Smuzhiyun			clocks = <&rtcclk 0>;
967*4882a593Smuzhiyun		};
968*4882a593Smuzhiyun
969*4882a593Smuzhiyun		mdio: mdio@17020000 {
970*4882a593Smuzhiyun			compatible = "apm,xgene-mdio-rgmii";
971*4882a593Smuzhiyun			#address-cells = <1>;
972*4882a593Smuzhiyun			#size-cells = <0>;
973*4882a593Smuzhiyun			reg = <0x0 0x17020000 0x0 0xd100>;
974*4882a593Smuzhiyun			clocks = <&menetclk 0>;
975*4882a593Smuzhiyun		};
976*4882a593Smuzhiyun
977*4882a593Smuzhiyun		menet: ethernet@17020000 {
978*4882a593Smuzhiyun			compatible = "apm,xgene-enet";
979*4882a593Smuzhiyun			status = "disabled";
980*4882a593Smuzhiyun			reg = <0x0 0x17020000 0x0 0xd100>,
981*4882a593Smuzhiyun			      <0x0 0x17030000 0x0 0xc300>,
982*4882a593Smuzhiyun			      <0x0 0x10000000 0x0 0x200>;
983*4882a593Smuzhiyun			reg-names = "enet_csr", "ring_csr", "ring_cmd";
984*4882a593Smuzhiyun			interrupts = <0x0 0x3c 0x4>;
985*4882a593Smuzhiyun			dma-coherent;
986*4882a593Smuzhiyun			clocks = <&menetclk 0>;
987*4882a593Smuzhiyun			/* mac address will be overwritten by the bootloader */
988*4882a593Smuzhiyun			local-mac-address = [00 00 00 00 00 00];
989*4882a593Smuzhiyun			phy-connection-type = "rgmii";
990*4882a593Smuzhiyun			phy-handle = <&menetphy>,<&menet0phy>;
991*4882a593Smuzhiyun			mdio {
992*4882a593Smuzhiyun				compatible = "apm,xgene-mdio";
993*4882a593Smuzhiyun				#address-cells = <1>;
994*4882a593Smuzhiyun				#size-cells = <0>;
995*4882a593Smuzhiyun				menetphy: menetphy@3 {
996*4882a593Smuzhiyun					compatible = "ethernet-phy-id001c.c915";
997*4882a593Smuzhiyun					reg = <0x3>;
998*4882a593Smuzhiyun				};
999*4882a593Smuzhiyun
1000*4882a593Smuzhiyun			};
1001*4882a593Smuzhiyun		};
1002*4882a593Smuzhiyun
1003*4882a593Smuzhiyun		sgenet0: ethernet@1f210000 {
1004*4882a593Smuzhiyun			compatible = "apm,xgene1-sgenet";
1005*4882a593Smuzhiyun			status = "disabled";
1006*4882a593Smuzhiyun			reg = <0x0 0x1f210000 0x0 0xd100>,
1007*4882a593Smuzhiyun			      <0x0 0x1f200000 0x0 0xc300>,
1008*4882a593Smuzhiyun			      <0x0 0x1b000000 0x0 0x200>;
1009*4882a593Smuzhiyun			reg-names = "enet_csr", "ring_csr", "ring_cmd";
1010*4882a593Smuzhiyun			interrupts = <0x0 0xa0 0x4>,
1011*4882a593Smuzhiyun				     <0x0 0xa1 0x4>;
1012*4882a593Smuzhiyun			dma-coherent;
1013*4882a593Smuzhiyun			clocks = <&sge0clk 0>;
1014*4882a593Smuzhiyun			local-mac-address = [00 00 00 00 00 00];
1015*4882a593Smuzhiyun			phy-connection-type = "sgmii";
1016*4882a593Smuzhiyun			phy-handle = <&sgenet0phy>;
1017*4882a593Smuzhiyun		};
1018*4882a593Smuzhiyun
1019*4882a593Smuzhiyun		sgenet1: ethernet@1f210030 {
1020*4882a593Smuzhiyun			compatible = "apm,xgene1-sgenet";
1021*4882a593Smuzhiyun			status = "disabled";
1022*4882a593Smuzhiyun			reg = <0x0 0x1f210030 0x0 0xd100>,
1023*4882a593Smuzhiyun			      <0x0 0x1f200000 0x0 0xc300>,
1024*4882a593Smuzhiyun			      <0x0 0x1b000000 0x0 0x8000>;
1025*4882a593Smuzhiyun			reg-names = "enet_csr", "ring_csr", "ring_cmd";
1026*4882a593Smuzhiyun			interrupts = <0x0 0xac 0x4>,
1027*4882a593Smuzhiyun				     <0x0 0xad 0x4>;
1028*4882a593Smuzhiyun			port-id = <1>;
1029*4882a593Smuzhiyun			dma-coherent;
1030*4882a593Smuzhiyun			local-mac-address = [00 00 00 00 00 00];
1031*4882a593Smuzhiyun			phy-connection-type = "sgmii";
1032*4882a593Smuzhiyun			phy-handle = <&sgenet1phy>;
1033*4882a593Smuzhiyun		};
1034*4882a593Smuzhiyun
1035*4882a593Smuzhiyun		xgenet: ethernet@1f610000 {
1036*4882a593Smuzhiyun			compatible = "apm,xgene1-xgenet";
1037*4882a593Smuzhiyun			status = "disabled";
1038*4882a593Smuzhiyun			reg = <0x0 0x1f610000 0x0 0xd100>,
1039*4882a593Smuzhiyun			      <0x0 0x1f600000 0x0 0xc300>,
1040*4882a593Smuzhiyun			      <0x0 0x18000000 0x0 0x200>;
1041*4882a593Smuzhiyun			reg-names = "enet_csr", "ring_csr", "ring_cmd";
1042*4882a593Smuzhiyun			interrupts = <0x0 0x60 0x4>,
1043*4882a593Smuzhiyun				     <0x0 0x61 0x4>,
1044*4882a593Smuzhiyun				     <0x0 0x62 0x4>,
1045*4882a593Smuzhiyun				     <0x0 0x63 0x4>,
1046*4882a593Smuzhiyun				     <0x0 0x64 0x4>,
1047*4882a593Smuzhiyun				     <0x0 0x65 0x4>,
1048*4882a593Smuzhiyun				     <0x0 0x66 0x4>,
1049*4882a593Smuzhiyun				     <0x0 0x67 0x4>;
1050*4882a593Smuzhiyun			channel = <0>;
1051*4882a593Smuzhiyun			dma-coherent;
1052*4882a593Smuzhiyun			clocks = <&xge0clk 0>;
1053*4882a593Smuzhiyun			/* mac address will be overwritten by the bootloader */
1054*4882a593Smuzhiyun			local-mac-address = [00 00 00 00 00 00];
1055*4882a593Smuzhiyun			phy-connection-type = "xgmii";
1056*4882a593Smuzhiyun		};
1057*4882a593Smuzhiyun
1058*4882a593Smuzhiyun		xgenet1: ethernet@1f620000 {
1059*4882a593Smuzhiyun			compatible = "apm,xgene1-xgenet";
1060*4882a593Smuzhiyun			status = "disabled";
1061*4882a593Smuzhiyun			reg = <0x0 0x1f620000 0x0 0xd100>,
1062*4882a593Smuzhiyun			      <0x0 0x1f600000 0x0 0xc300>,
1063*4882a593Smuzhiyun			      <0x0 0x18000000 0x0 0x8000>;
1064*4882a593Smuzhiyun			reg-names = "enet_csr", "ring_csr", "ring_cmd";
1065*4882a593Smuzhiyun			interrupts = <0x0 0x6c 0x4>,
1066*4882a593Smuzhiyun				     <0x0 0x6d 0x4>;
1067*4882a593Smuzhiyun			port-id = <1>;
1068*4882a593Smuzhiyun			dma-coherent;
1069*4882a593Smuzhiyun			clocks = <&xge1clk 0>;
1070*4882a593Smuzhiyun			/* mac address will be overwritten by the bootloader */
1071*4882a593Smuzhiyun			local-mac-address = [00 00 00 00 00 00];
1072*4882a593Smuzhiyun			phy-connection-type = "xgmii";
1073*4882a593Smuzhiyun		};
1074*4882a593Smuzhiyun
1075*4882a593Smuzhiyun		rng: rng@10520000 {
1076*4882a593Smuzhiyun			compatible = "apm,xgene-rng";
1077*4882a593Smuzhiyun			reg = <0x0 0x10520000 0x0 0x100>;
1078*4882a593Smuzhiyun			interrupts = <0x0 0x41 0x4>;
1079*4882a593Smuzhiyun			clocks = <&rngpkaclk 0>;
1080*4882a593Smuzhiyun		};
1081*4882a593Smuzhiyun
1082*4882a593Smuzhiyun		dma: dma@1f270000 {
1083*4882a593Smuzhiyun			compatible = "apm,xgene-storm-dma";
1084*4882a593Smuzhiyun			device_type = "dma";
1085*4882a593Smuzhiyun			reg = <0x0 0x1f270000 0x0 0x10000>,
1086*4882a593Smuzhiyun			      <0x0 0x1f200000 0x0 0x10000>,
1087*4882a593Smuzhiyun			      <0x0 0x1b000000 0x0 0x400000>,
1088*4882a593Smuzhiyun			      <0x0 0x1054a000 0x0 0x100>;
1089*4882a593Smuzhiyun			interrupts = <0x0 0x82 0x4>,
1090*4882a593Smuzhiyun				     <0x0 0xb8 0x4>,
1091*4882a593Smuzhiyun				     <0x0 0xb9 0x4>,
1092*4882a593Smuzhiyun				     <0x0 0xba 0x4>,
1093*4882a593Smuzhiyun				     <0x0 0xbb 0x4>;
1094*4882a593Smuzhiyun			dma-coherent;
1095*4882a593Smuzhiyun			clocks = <&dmaclk 0>;
1096*4882a593Smuzhiyun		};
1097*4882a593Smuzhiyun	};
1098*4882a593Smuzhiyun};
1099