1ca5b3410SRobert Richter/*
2ca5b3410SRobert Richter * dts file for AppliedMicro (APM) X-Gene Storm SOC
3ca5b3410SRobert Richter *
4ca5b3410SRobert Richter * Copyright (C) 2013, Applied Micro Circuits Corporation
5ca5b3410SRobert Richter *
6ca5b3410SRobert Richter * This program is free software; you can redistribute it and/or
7ca5b3410SRobert Richter * modify it under the terms of the GNU General Public License as
8ca5b3410SRobert Richter * published by the Free Software Foundation; either version 2 of
9ca5b3410SRobert Richter * the License, or (at your option) any later version.
10ca5b3410SRobert Richter */
11ca5b3410SRobert Richter
12ca5b3410SRobert Richter/ {
13ca5b3410SRobert Richter	compatible = "apm,xgene-storm";
14ca5b3410SRobert Richter	interrupt-parent = <&gic>;
15ca5b3410SRobert Richter	#address-cells = <2>;
16ca5b3410SRobert Richter	#size-cells = <2>;
17ca5b3410SRobert Richter
18ca5b3410SRobert Richter	cpus {
19ca5b3410SRobert Richter		#address-cells = <2>;
20ca5b3410SRobert Richter		#size-cells = <0>;
21ca5b3410SRobert Richter
22ca5b3410SRobert Richter		cpu@000 {
23ca5b3410SRobert Richter			device_type = "cpu";
24ca5b3410SRobert Richter			compatible = "apm,potenza", "arm,armv8";
25ca5b3410SRobert Richter			reg = <0x0 0x000>;
26ca5b3410SRobert Richter			enable-method = "spin-table";
27ca5b3410SRobert Richter			cpu-release-addr = <0x1 0x0000fff8>;
28ca5b3410SRobert Richter		};
29ca5b3410SRobert Richter		cpu@001 {
30ca5b3410SRobert Richter			device_type = "cpu";
31ca5b3410SRobert Richter			compatible = "apm,potenza", "arm,armv8";
32ca5b3410SRobert Richter			reg = <0x0 0x001>;
33ca5b3410SRobert Richter			enable-method = "spin-table";
34ca5b3410SRobert Richter			cpu-release-addr = <0x1 0x0000fff8>;
35ca5b3410SRobert Richter		};
36ca5b3410SRobert Richter		cpu@100 {
37ca5b3410SRobert Richter			device_type = "cpu";
38ca5b3410SRobert Richter			compatible = "apm,potenza", "arm,armv8";
39ca5b3410SRobert Richter			reg = <0x0 0x100>;
40ca5b3410SRobert Richter			enable-method = "spin-table";
41ca5b3410SRobert Richter			cpu-release-addr = <0x1 0x0000fff8>;
42ca5b3410SRobert Richter		};
43ca5b3410SRobert Richter		cpu@101 {
44ca5b3410SRobert Richter			device_type = "cpu";
45ca5b3410SRobert Richter			compatible = "apm,potenza", "arm,armv8";
46ca5b3410SRobert Richter			reg = <0x0 0x101>;
47ca5b3410SRobert Richter			enable-method = "spin-table";
48ca5b3410SRobert Richter			cpu-release-addr = <0x1 0x0000fff8>;
49ca5b3410SRobert Richter		};
50ca5b3410SRobert Richter		cpu@200 {
51ca5b3410SRobert Richter			device_type = "cpu";
52ca5b3410SRobert Richter			compatible = "apm,potenza", "arm,armv8";
53ca5b3410SRobert Richter			reg = <0x0 0x200>;
54ca5b3410SRobert Richter			enable-method = "spin-table";
55ca5b3410SRobert Richter			cpu-release-addr = <0x1 0x0000fff8>;
56ca5b3410SRobert Richter		};
57ca5b3410SRobert Richter		cpu@201 {
58ca5b3410SRobert Richter			device_type = "cpu";
59ca5b3410SRobert Richter			compatible = "apm,potenza", "arm,armv8";
60ca5b3410SRobert Richter			reg = <0x0 0x201>;
61ca5b3410SRobert Richter			enable-method = "spin-table";
62ca5b3410SRobert Richter			cpu-release-addr = <0x1 0x0000fff8>;
63ca5b3410SRobert Richter		};
64ca5b3410SRobert Richter		cpu@300 {
65ca5b3410SRobert Richter			device_type = "cpu";
66ca5b3410SRobert Richter			compatible = "apm,potenza", "arm,armv8";
67ca5b3410SRobert Richter			reg = <0x0 0x300>;
68ca5b3410SRobert Richter			enable-method = "spin-table";
69ca5b3410SRobert Richter			cpu-release-addr = <0x1 0x0000fff8>;
70ca5b3410SRobert Richter		};
71ca5b3410SRobert Richter		cpu@301 {
72ca5b3410SRobert Richter			device_type = "cpu";
73ca5b3410SRobert Richter			compatible = "apm,potenza", "arm,armv8";
74ca5b3410SRobert Richter			reg = <0x0 0x301>;
75ca5b3410SRobert Richter			enable-method = "spin-table";
76ca5b3410SRobert Richter			cpu-release-addr = <0x1 0x0000fff8>;
77ca5b3410SRobert Richter		};
78ca5b3410SRobert Richter	};
79ca5b3410SRobert Richter
80ca5b3410SRobert Richter	gic: interrupt-controller@78010000 {
81ca5b3410SRobert Richter		compatible = "arm,cortex-a15-gic";
82ca5b3410SRobert Richter		#interrupt-cells = <3>;
83ca5b3410SRobert Richter		interrupt-controller;
84ca5b3410SRobert Richter		reg = <0x0 0x78010000 0x0 0x1000>,	/* GIC Dist */
85ca5b3410SRobert Richter		      <0x0 0x78020000 0x0 0x1000>,	/* GIC CPU */
86ca5b3410SRobert Richter		      <0x0 0x78040000 0x0 0x2000>,	/* GIC VCPU Control */
87ca5b3410SRobert Richter		      <0x0 0x78060000 0x0 0x2000>;	/* GIC VCPU */
88ca5b3410SRobert Richter		interrupts = <1 9 0xf04>;	/* GIC Maintenence IRQ */
89ca5b3410SRobert Richter	};
90ca5b3410SRobert Richter
91ca5b3410SRobert Richter	timer {
92ca5b3410SRobert Richter		compatible = "arm,armv8-timer";
93ca5b3410SRobert Richter		interrupts = <1 0 0xff01>,	/* Secure Phys IRQ */
94ca5b3410SRobert Richter			     <1 13 0xff01>,	/* Non-secure Phys IRQ */
95ca5b3410SRobert Richter			     <1 14 0xff01>,	/* Virt IRQ */
96ca5b3410SRobert Richter			     <1 15 0xff01>;	/* Hyp IRQ */
97ca5b3410SRobert Richter		clock-frequency = <50000000>;
98ca5b3410SRobert Richter	};
99ca5b3410SRobert Richter
100ca5b3410SRobert Richter	soc {
101ca5b3410SRobert Richter		compatible = "simple-bus";
102ca5b3410SRobert Richter		#address-cells = <2>;
103ca5b3410SRobert Richter		#size-cells = <2>;
104ca5b3410SRobert Richter		ranges;
10574e353e1SRameshwar Prasad Sahu		dma-ranges = <0x0 0x0 0x0 0x0 0x400 0x0>;
106ca5b3410SRobert Richter
107ca5b3410SRobert Richter		clocks {
108ca5b3410SRobert Richter			#address-cells = <2>;
109ca5b3410SRobert Richter			#size-cells = <2>;
110ca5b3410SRobert Richter			ranges;
111ca5b3410SRobert Richter			refclk: refclk {
112ca5b3410SRobert Richter				compatible = "fixed-clock";
113ca5b3410SRobert Richter				#clock-cells = <1>;
114ca5b3410SRobert Richter				clock-frequency = <100000000>;
115ca5b3410SRobert Richter				clock-output-names = "refclk";
116ca5b3410SRobert Richter			};
117ca5b3410SRobert Richter
118ca5b3410SRobert Richter			pcppll: pcppll@17000100 {
119ca5b3410SRobert Richter				compatible = "apm,xgene-pcppll-clock";
120ca5b3410SRobert Richter				#clock-cells = <1>;
121ca5b3410SRobert Richter				clocks = <&refclk 0>;
122ca5b3410SRobert Richter				clock-names = "pcppll";
123ca5b3410SRobert Richter				reg = <0x0 0x17000100 0x0 0x1000>;
124ca5b3410SRobert Richter				clock-output-names = "pcppll";
125ca5b3410SRobert Richter				type = <0>;
126ca5b3410SRobert Richter			};
127ca5b3410SRobert Richter
128ca5b3410SRobert Richter			socpll: socpll@17000120 {
129ca5b3410SRobert Richter				compatible = "apm,xgene-socpll-clock";
130ca5b3410SRobert Richter				#clock-cells = <1>;
131ca5b3410SRobert Richter				clocks = <&refclk 0>;
132ca5b3410SRobert Richter				clock-names = "socpll";
133ca5b3410SRobert Richter				reg = <0x0 0x17000120 0x0 0x1000>;
134ca5b3410SRobert Richter				clock-output-names = "socpll";
135ca5b3410SRobert Richter				type = <1>;
136ca5b3410SRobert Richter			};
137ca5b3410SRobert Richter
138ca5b3410SRobert Richter			socplldiv2: socplldiv2  {
139ca5b3410SRobert Richter				compatible = "fixed-factor-clock";
140ca5b3410SRobert Richter				#clock-cells = <1>;
141ca5b3410SRobert Richter				clocks = <&socpll 0>;
142ca5b3410SRobert Richter				clock-names = "socplldiv2";
143ca5b3410SRobert Richter				clock-mult = <1>;
144ca5b3410SRobert Richter				clock-div = <2>;
145ca5b3410SRobert Richter				clock-output-names = "socplldiv2";
146ca5b3410SRobert Richter			};
147ca5b3410SRobert Richter
148ca5b3410SRobert Richter			qmlclk: qmlclk {
149ca5b3410SRobert Richter				compatible = "apm,xgene-device-clock";
150ca5b3410SRobert Richter				#clock-cells = <1>;
151ca5b3410SRobert Richter				clocks = <&socplldiv2 0>;
152ca5b3410SRobert Richter				clock-names = "qmlclk";
153ca5b3410SRobert Richter				reg = <0x0 0x1703C000 0x0 0x1000>;
154ca5b3410SRobert Richter				reg-names = "csr-reg";
155ca5b3410SRobert Richter				clock-output-names = "qmlclk";
156ca5b3410SRobert Richter			};
157ca5b3410SRobert Richter
158ca5b3410SRobert Richter			ethclk: ethclk {
159ca5b3410SRobert Richter				compatible = "apm,xgene-device-clock";
160ca5b3410SRobert Richter				#clock-cells = <1>;
161ca5b3410SRobert Richter				clocks = <&socplldiv2 0>;
162ca5b3410SRobert Richter				clock-names = "ethclk";
163ca5b3410SRobert Richter				reg = <0x0 0x17000000 0x0 0x1000>;
164ca5b3410SRobert Richter				reg-names = "div-reg";
165ca5b3410SRobert Richter				divider-offset = <0x238>;
166ca5b3410SRobert Richter				divider-width = <0x9>;
167ca5b3410SRobert Richter				divider-shift = <0x0>;
168ca5b3410SRobert Richter				clock-output-names = "ethclk";
169ca5b3410SRobert Richter			};
170ca5b3410SRobert Richter
171ca5b3410SRobert Richter			menetclk: menetclk {
172ca5b3410SRobert Richter				compatible = "apm,xgene-device-clock";
173ca5b3410SRobert Richter				#clock-cells = <1>;
174ca5b3410SRobert Richter				clocks = <&ethclk 0>;
175ca5b3410SRobert Richter				reg = <0x0 0x1702C000 0x0 0x1000>;
176ca5b3410SRobert Richter				reg-names = "csr-reg";
177ca5b3410SRobert Richter				clock-output-names = "menetclk";
178ca5b3410SRobert Richter			};
179ca5b3410SRobert Richter
180ca5b3410SRobert Richter			sge0clk: sge0clk@1f21c000 {
181ca5b3410SRobert Richter				compatible = "apm,xgene-device-clock";
182ca5b3410SRobert Richter				#clock-cells = <1>;
183ca5b3410SRobert Richter				clocks = <&socplldiv2 0>;
184ca5b3410SRobert Richter				reg = <0x0 0x1f21c000 0x0 0x1000>;
185ca5b3410SRobert Richter				reg-names = "csr-reg";
186ca5b3410SRobert Richter				csr-mask = <0x3>;
187ca5b3410SRobert Richter				clock-output-names = "sge0clk";
188ca5b3410SRobert Richter			};
189ca5b3410SRobert Richter
1902d33394eSKeyur Chudgar			sge1clk: sge1clk@1f21c000 {
1912d33394eSKeyur Chudgar				compatible = "apm,xgene-device-clock";
1922d33394eSKeyur Chudgar				#clock-cells = <1>;
1932d33394eSKeyur Chudgar				clocks = <&socplldiv2 0>;
1942d33394eSKeyur Chudgar				reg = <0x0 0x1f21c000 0x0 0x1000>;
1952d33394eSKeyur Chudgar				reg-names = "csr-reg";
1962d33394eSKeyur Chudgar				csr-mask = <0xc>;
1972d33394eSKeyur Chudgar				clock-output-names = "sge1clk";
1982d33394eSKeyur Chudgar			};
1992d33394eSKeyur Chudgar
200ca5b3410SRobert Richter			xge0clk: xge0clk@1f61c000 {
201ca5b3410SRobert Richter				compatible = "apm,xgene-device-clock";
202ca5b3410SRobert Richter				#clock-cells = <1>;
203ca5b3410SRobert Richter				clocks = <&socplldiv2 0>;
204ca5b3410SRobert Richter				reg = <0x0 0x1f61c000 0x0 0x1000>;
205ca5b3410SRobert Richter				reg-names = "csr-reg";
206ca5b3410SRobert Richter				csr-mask = <0x3>;
207ca5b3410SRobert Richter				clock-output-names = "xge0clk";
208ca5b3410SRobert Richter			};
209ca5b3410SRobert Richter
210ca5b3410SRobert Richter			sataphy1clk: sataphy1clk@1f21c000 {
211ca5b3410SRobert Richter				compatible = "apm,xgene-device-clock";
212ca5b3410SRobert Richter				#clock-cells = <1>;
213ca5b3410SRobert Richter				clocks = <&socplldiv2 0>;
214ca5b3410SRobert Richter				reg = <0x0 0x1f21c000 0x0 0x1000>;
215ca5b3410SRobert Richter				reg-names = "csr-reg";
216ca5b3410SRobert Richter				clock-output-names = "sataphy1clk";
217ca5b3410SRobert Richter				status = "disabled";
218ca5b3410SRobert Richter				csr-offset = <0x4>;
219ca5b3410SRobert Richter				csr-mask = <0x00>;
220ca5b3410SRobert Richter				enable-offset = <0x0>;
221ca5b3410SRobert Richter				enable-mask = <0x06>;
222ca5b3410SRobert Richter			};
223ca5b3410SRobert Richter
224ca5b3410SRobert Richter			sataphy2clk: sataphy1clk@1f22c000 {
225ca5b3410SRobert Richter				compatible = "apm,xgene-device-clock";
226ca5b3410SRobert Richter				#clock-cells = <1>;
227ca5b3410SRobert Richter				clocks = <&socplldiv2 0>;
228ca5b3410SRobert Richter				reg = <0x0 0x1f22c000 0x0 0x1000>;
229ca5b3410SRobert Richter				reg-names = "csr-reg";
230ca5b3410SRobert Richter				clock-output-names = "sataphy2clk";
231ca5b3410SRobert Richter				status = "ok";
232ca5b3410SRobert Richter				csr-offset = <0x4>;
233ca5b3410SRobert Richter				csr-mask = <0x3a>;
234ca5b3410SRobert Richter				enable-offset = <0x0>;
235ca5b3410SRobert Richter				enable-mask = <0x06>;
236ca5b3410SRobert Richter			};
237ca5b3410SRobert Richter
238ca5b3410SRobert Richter			sataphy3clk: sataphy1clk@1f23c000 {
239ca5b3410SRobert Richter				compatible = "apm,xgene-device-clock";
240ca5b3410SRobert Richter				#clock-cells = <1>;
241ca5b3410SRobert Richter				clocks = <&socplldiv2 0>;
242ca5b3410SRobert Richter				reg = <0x0 0x1f23c000 0x0 0x1000>;
243ca5b3410SRobert Richter				reg-names = "csr-reg";
244ca5b3410SRobert Richter				clock-output-names = "sataphy3clk";
245ca5b3410SRobert Richter				status = "ok";
246ca5b3410SRobert Richter				csr-offset = <0x4>;
247ca5b3410SRobert Richter				csr-mask = <0x3a>;
248ca5b3410SRobert Richter				enable-offset = <0x0>;
249ca5b3410SRobert Richter				enable-mask = <0x06>;
250ca5b3410SRobert Richter			};
251ca5b3410SRobert Richter
252ca5b3410SRobert Richter			sata01clk: sata01clk@1f21c000 {
253ca5b3410SRobert Richter				compatible = "apm,xgene-device-clock";
254ca5b3410SRobert Richter				#clock-cells = <1>;
255ca5b3410SRobert Richter				clocks = <&socplldiv2 0>;
256ca5b3410SRobert Richter				reg = <0x0 0x1f21c000 0x0 0x1000>;
257ca5b3410SRobert Richter				reg-names = "csr-reg";
258ca5b3410SRobert Richter				clock-output-names = "sata01clk";
259ca5b3410SRobert Richter				csr-offset = <0x4>;
260ca5b3410SRobert Richter				csr-mask = <0x05>;
261ca5b3410SRobert Richter				enable-offset = <0x0>;
262ca5b3410SRobert Richter				enable-mask = <0x39>;
263ca5b3410SRobert Richter			};
264ca5b3410SRobert Richter
265ca5b3410SRobert Richter			sata23clk: sata23clk@1f22c000 {
266ca5b3410SRobert Richter				compatible = "apm,xgene-device-clock";
267ca5b3410SRobert Richter				#clock-cells = <1>;
268ca5b3410SRobert Richter				clocks = <&socplldiv2 0>;
269ca5b3410SRobert Richter				reg = <0x0 0x1f22c000 0x0 0x1000>;
270ca5b3410SRobert Richter				reg-names = "csr-reg";
271ca5b3410SRobert Richter				clock-output-names = "sata23clk";
272ca5b3410SRobert Richter				csr-offset = <0x4>;
273ca5b3410SRobert Richter				csr-mask = <0x05>;
274ca5b3410SRobert Richter				enable-offset = <0x0>;
275ca5b3410SRobert Richter				enable-mask = <0x39>;
276ca5b3410SRobert Richter			};
277ca5b3410SRobert Richter
278ca5b3410SRobert Richter			sata45clk: sata45clk@1f23c000 {
279ca5b3410SRobert Richter				compatible = "apm,xgene-device-clock";
280ca5b3410SRobert Richter				#clock-cells = <1>;
281ca5b3410SRobert Richter				clocks = <&socplldiv2 0>;
282ca5b3410SRobert Richter				reg = <0x0 0x1f23c000 0x0 0x1000>;
283ca5b3410SRobert Richter				reg-names = "csr-reg";
284ca5b3410SRobert Richter				clock-output-names = "sata45clk";
285ca5b3410SRobert Richter				csr-offset = <0x4>;
286ca5b3410SRobert Richter				csr-mask = <0x05>;
287ca5b3410SRobert Richter				enable-offset = <0x0>;
288ca5b3410SRobert Richter				enable-mask = <0x39>;
289ca5b3410SRobert Richter			};
290ca5b3410SRobert Richter
291ca5b3410SRobert Richter			rtcclk: rtcclk@17000000 {
292ca5b3410SRobert Richter				compatible = "apm,xgene-device-clock";
293ca5b3410SRobert Richter				#clock-cells = <1>;
294ca5b3410SRobert Richter				clocks = <&socplldiv2 0>;
295ca5b3410SRobert Richter				reg = <0x0 0x17000000 0x0 0x2000>;
296ca5b3410SRobert Richter				reg-names = "csr-reg";
297ca5b3410SRobert Richter				csr-offset = <0xc>;
298ca5b3410SRobert Richter				csr-mask = <0x2>;
299ca5b3410SRobert Richter				enable-offset = <0x10>;
300ca5b3410SRobert Richter				enable-mask = <0x2>;
301ca5b3410SRobert Richter				clock-output-names = "rtcclk";
302ca5b3410SRobert Richter			};
303ca5b3410SRobert Richter
304ca5b3410SRobert Richter			rngpkaclk: rngpkaclk@17000000 {
305ca5b3410SRobert Richter				compatible = "apm,xgene-device-clock";
306ca5b3410SRobert Richter				#clock-cells = <1>;
307ca5b3410SRobert Richter				clocks = <&socplldiv2 0>;
308ca5b3410SRobert Richter				reg = <0x0 0x17000000 0x0 0x2000>;
309ca5b3410SRobert Richter				reg-names = "csr-reg";
310ca5b3410SRobert Richter				csr-offset = <0xc>;
311ca5b3410SRobert Richter				csr-mask = <0x10>;
312ca5b3410SRobert Richter				enable-offset = <0x10>;
313ca5b3410SRobert Richter				enable-mask = <0x10>;
314ca5b3410SRobert Richter				clock-output-names = "rngpkaclk";
315ca5b3410SRobert Richter			};
316ca5b3410SRobert Richter
317ca5b3410SRobert Richter			pcie0clk: pcie0clk@1f2bc000 {
318ca5b3410SRobert Richter				status = "disabled";
319ca5b3410SRobert Richter				compatible = "apm,xgene-device-clock";
320ca5b3410SRobert Richter				#clock-cells = <1>;
321ca5b3410SRobert Richter				clocks = <&socplldiv2 0>;
322ca5b3410SRobert Richter				reg = <0x0 0x1f2bc000 0x0 0x1000>;
323ca5b3410SRobert Richter				reg-names = "csr-reg";
324ca5b3410SRobert Richter				clock-output-names = "pcie0clk";
325ca5b3410SRobert Richter			};
326ca5b3410SRobert Richter
327ca5b3410SRobert Richter			pcie1clk: pcie1clk@1f2cc000 {
328ca5b3410SRobert Richter				status = "disabled";
329ca5b3410SRobert Richter				compatible = "apm,xgene-device-clock";
330ca5b3410SRobert Richter				#clock-cells = <1>;
331ca5b3410SRobert Richter				clocks = <&socplldiv2 0>;
332ca5b3410SRobert Richter				reg = <0x0 0x1f2cc000 0x0 0x1000>;
333ca5b3410SRobert Richter				reg-names = "csr-reg";
334ca5b3410SRobert Richter				clock-output-names = "pcie1clk";
335ca5b3410SRobert Richter			};
336ca5b3410SRobert Richter
337ca5b3410SRobert Richter			pcie2clk: pcie2clk@1f2dc000 {
338ca5b3410SRobert Richter				status = "disabled";
339ca5b3410SRobert Richter				compatible = "apm,xgene-device-clock";
340ca5b3410SRobert Richter				#clock-cells = <1>;
341ca5b3410SRobert Richter				clocks = <&socplldiv2 0>;
342ca5b3410SRobert Richter				reg = <0x0 0x1f2dc000 0x0 0x1000>;
343ca5b3410SRobert Richter				reg-names = "csr-reg";
344ca5b3410SRobert Richter				clock-output-names = "pcie2clk";
345ca5b3410SRobert Richter			};
346ca5b3410SRobert Richter
347ca5b3410SRobert Richter			pcie3clk: pcie3clk@1f50c000 {
348ca5b3410SRobert Richter				status = "disabled";
349ca5b3410SRobert Richter				compatible = "apm,xgene-device-clock";
350ca5b3410SRobert Richter				#clock-cells = <1>;
351ca5b3410SRobert Richter				clocks = <&socplldiv2 0>;
352ca5b3410SRobert Richter				reg = <0x0 0x1f50c000 0x0 0x1000>;
353ca5b3410SRobert Richter				reg-names = "csr-reg";
354ca5b3410SRobert Richter				clock-output-names = "pcie3clk";
355ca5b3410SRobert Richter			};
356ca5b3410SRobert Richter
357ca5b3410SRobert Richter			pcie4clk: pcie4clk@1f51c000 {
358ca5b3410SRobert Richter				status = "disabled";
359ca5b3410SRobert Richter				compatible = "apm,xgene-device-clock";
360ca5b3410SRobert Richter				#clock-cells = <1>;
361ca5b3410SRobert Richter				clocks = <&socplldiv2 0>;
362ca5b3410SRobert Richter				reg = <0x0 0x1f51c000 0x0 0x1000>;
363ca5b3410SRobert Richter				reg-names = "csr-reg";
364ca5b3410SRobert Richter				clock-output-names = "pcie4clk";
365ca5b3410SRobert Richter			};
36674e353e1SRameshwar Prasad Sahu
36774e353e1SRameshwar Prasad Sahu			dmaclk: dmaclk@1f27c000 {
36874e353e1SRameshwar Prasad Sahu				compatible = "apm,xgene-device-clock";
36974e353e1SRameshwar Prasad Sahu				#clock-cells = <1>;
37074e353e1SRameshwar Prasad Sahu				clocks = <&socplldiv2 0>;
37174e353e1SRameshwar Prasad Sahu				reg = <0x0 0x1f27c000 0x0 0x1000>;
37274e353e1SRameshwar Prasad Sahu				reg-names = "csr-reg";
37374e353e1SRameshwar Prasad Sahu				clock-output-names = "dmaclk";
37474e353e1SRameshwar Prasad Sahu			};
375ca5b3410SRobert Richter		};
376ca5b3410SRobert Richter
377ca5b3410SRobert Richter		pcie0: pcie@1f2b0000 {
378ca5b3410SRobert Richter			status = "disabled";
379ca5b3410SRobert Richter			device_type = "pci";
380ca5b3410SRobert Richter			compatible = "apm,xgene-storm-pcie", "apm,xgene-pcie";
381ca5b3410SRobert Richter			#interrupt-cells = <1>;
382ca5b3410SRobert Richter			#size-cells = <2>;
383ca5b3410SRobert Richter			#address-cells = <3>;
384ca5b3410SRobert Richter			reg = < 0x00 0x1f2b0000 0x0 0x00010000   /* Controller registers */
385ca5b3410SRobert Richter				0xe0 0xd0000000 0x0 0x00040000>; /* PCI config space */
386ca5b3410SRobert Richter			reg-names = "csr", "cfg";
387ca5b3410SRobert Richter			ranges = <0x01000000 0x00 0x00000000 0xe0 0x10000000 0x00 0x00010000   /* io */
388ca5b3410SRobert Richter				  0x02000000 0x00 0x80000000 0xe1 0x80000000 0x00 0x80000000>; /* mem */
389ca5b3410SRobert Richter			dma-ranges = <0x42000000 0x80 0x00000000 0x80 0x00000000 0x00 0x80000000
390ca5b3410SRobert Richter				      0x42000000 0x00 0x00000000 0x00 0x00000000 0x80 0x00000000>;
391ca5b3410SRobert Richter			interrupt-map-mask = <0x0 0x0 0x0 0x7>;
392ca5b3410SRobert Richter			interrupt-map = <0x0 0x0 0x0 0x1 &gic 0x0 0xc2 0x1
393ca5b3410SRobert Richter					 0x0 0x0 0x0 0x2 &gic 0x0 0xc3 0x1
394ca5b3410SRobert Richter					 0x0 0x0 0x0 0x3 &gic 0x0 0xc4 0x1
395ca5b3410SRobert Richter					 0x0 0x0 0x0 0x4 &gic 0x0 0xc5 0x1>;
396ca5b3410SRobert Richter			dma-coherent;
397ca5b3410SRobert Richter			clocks = <&pcie0clk 0>;
398ca5b3410SRobert Richter		};
399ca5b3410SRobert Richter
400ca5b3410SRobert Richter		pcie1: pcie@1f2c0000 {
401ca5b3410SRobert Richter			status = "disabled";
402ca5b3410SRobert Richter			device_type = "pci";
403ca5b3410SRobert Richter			compatible = "apm,xgene-storm-pcie", "apm,xgene-pcie";
404ca5b3410SRobert Richter			#interrupt-cells = <1>;
405ca5b3410SRobert Richter			#size-cells = <2>;
406ca5b3410SRobert Richter			#address-cells = <3>;
407ca5b3410SRobert Richter			reg = < 0x00 0x1f2c0000 0x0 0x00010000   /* Controller registers */
408ca5b3410SRobert Richter				0xd0 0xd0000000 0x0 0x00040000>; /* PCI config space */
409ca5b3410SRobert Richter			reg-names = "csr", "cfg";
410ca5b3410SRobert Richter			ranges = <0x01000000 0x0 0x00000000 0xd0 0x10000000 0x00 0x00010000   /* io  */
411ca5b3410SRobert Richter				  0x02000000 0x0 0x80000000 0xd1 0x80000000 0x00 0x80000000>; /* mem */
412ca5b3410SRobert Richter			dma-ranges = <0x42000000 0x80 0x00000000 0x80 0x00000000 0x00 0x80000000
413ca5b3410SRobert Richter				      0x42000000 0x00 0x00000000 0x00 0x00000000 0x80 0x00000000>;
414ca5b3410SRobert Richter			interrupt-map-mask = <0x0 0x0 0x0 0x7>;
415ca5b3410SRobert Richter			interrupt-map = <0x0 0x0 0x0 0x1 &gic 0x0 0xc8 0x1
416ca5b3410SRobert Richter					 0x0 0x0 0x0 0x2 &gic 0x0 0xc9 0x1
417ca5b3410SRobert Richter					 0x0 0x0 0x0 0x3 &gic 0x0 0xca 0x1
418ca5b3410SRobert Richter					 0x0 0x0 0x0 0x4 &gic 0x0 0xcb 0x1>;
419ca5b3410SRobert Richter			dma-coherent;
420ca5b3410SRobert Richter			clocks = <&pcie1clk 0>;
421ca5b3410SRobert Richter		};
422ca5b3410SRobert Richter
423ca5b3410SRobert Richter		pcie2: pcie@1f2d0000 {
424ca5b3410SRobert Richter			status = "disabled";
425ca5b3410SRobert Richter			device_type = "pci";
426ca5b3410SRobert Richter			compatible = "apm,xgene-storm-pcie", "apm,xgene-pcie";
427ca5b3410SRobert Richter			#interrupt-cells = <1>;
428ca5b3410SRobert Richter			#size-cells = <2>;
429ca5b3410SRobert Richter			#address-cells = <3>;
430ca5b3410SRobert Richter			reg =  < 0x00 0x1f2d0000 0x0 0x00010000   /* Controller registers */
431ca5b3410SRobert Richter				 0x90 0xd0000000 0x0 0x00040000>; /* PCI config space */
432ca5b3410SRobert Richter			reg-names = "csr", "cfg";
433ca5b3410SRobert Richter			ranges = <0x01000000 0x0 0x00000000 0x90 0x10000000 0x0 0x00010000   /* io  */
434ca5b3410SRobert Richter				  0x02000000 0x0 0x80000000 0x91 0x80000000 0x0 0x80000000>; /* mem */
435ca5b3410SRobert Richter			dma-ranges = <0x42000000 0x80 0x00000000 0x80 0x00000000 0x00 0x80000000
436ca5b3410SRobert Richter				      0x42000000 0x00 0x00000000 0x00 0x00000000 0x80 0x00000000>;
437ca5b3410SRobert Richter			interrupt-map-mask = <0x0 0x0 0x0 0x7>;
438ca5b3410SRobert Richter			interrupt-map = <0x0 0x0 0x0 0x1 &gic 0x0 0xce 0x1
439ca5b3410SRobert Richter					 0x0 0x0 0x0 0x2 &gic 0x0 0xcf 0x1
440ca5b3410SRobert Richter					 0x0 0x0 0x0 0x3 &gic 0x0 0xd0 0x1
441ca5b3410SRobert Richter					 0x0 0x0 0x0 0x4 &gic 0x0 0xd1 0x1>;
442ca5b3410SRobert Richter			dma-coherent;
443ca5b3410SRobert Richter			clocks = <&pcie2clk 0>;
444ca5b3410SRobert Richter		};
445ca5b3410SRobert Richter
446ca5b3410SRobert Richter		pcie3: pcie@1f500000 {
447ca5b3410SRobert Richter			status = "disabled";
448ca5b3410SRobert Richter			device_type = "pci";
449ca5b3410SRobert Richter			compatible = "apm,xgene-storm-pcie", "apm,xgene-pcie";
450ca5b3410SRobert Richter			#interrupt-cells = <1>;
451ca5b3410SRobert Richter			#size-cells = <2>;
452ca5b3410SRobert Richter			#address-cells = <3>;
453ca5b3410SRobert Richter			reg = < 0x00 0x1f500000 0x0 0x00010000   /* Controller registers */
454ca5b3410SRobert Richter				0xa0 0xd0000000 0x0 0x00040000>; /* PCI config space */
455ca5b3410SRobert Richter			reg-names = "csr", "cfg";
456ca5b3410SRobert Richter			ranges = <0x01000000 0x0 0x00000000 0xa0 0x10000000 0x0 0x00010000   /* io   */
457ca5b3410SRobert Richter				  0x02000000 0x0 0x80000000 0xa1 0x80000000 0x0 0x80000000>; /* mem  */
458ca5b3410SRobert Richter			dma-ranges = <0x42000000 0x80 0x00000000 0x80 0x00000000 0x00 0x80000000
459ca5b3410SRobert Richter				      0x42000000 0x00 0x00000000 0x00 0x00000000 0x80 0x00000000>;
460ca5b3410SRobert Richter			interrupt-map-mask = <0x0 0x0 0x0 0x7>;
461ca5b3410SRobert Richter			interrupt-map = <0x0 0x0 0x0 0x1 &gic 0x0 0xd4 0x1
462ca5b3410SRobert Richter					 0x0 0x0 0x0 0x2 &gic 0x0 0xd5 0x1
463ca5b3410SRobert Richter					 0x0 0x0 0x0 0x3 &gic 0x0 0xd6 0x1
464ca5b3410SRobert Richter					 0x0 0x0 0x0 0x4 &gic 0x0 0xd7 0x1>;
465ca5b3410SRobert Richter			dma-coherent;
466ca5b3410SRobert Richter			clocks = <&pcie3clk 0>;
467ca5b3410SRobert Richter		};
468ca5b3410SRobert Richter
469ca5b3410SRobert Richter		pcie4: pcie@1f510000 {
470ca5b3410SRobert Richter			status = "disabled";
471ca5b3410SRobert Richter			device_type = "pci";
472ca5b3410SRobert Richter			compatible = "apm,xgene-storm-pcie", "apm,xgene-pcie";
473ca5b3410SRobert Richter			#interrupt-cells = <1>;
474ca5b3410SRobert Richter			#size-cells = <2>;
475ca5b3410SRobert Richter			#address-cells = <3>;
476ca5b3410SRobert Richter			reg = < 0x00 0x1f510000 0x0 0x00010000   /* Controller registers */
477ca5b3410SRobert Richter				0xc0 0xd0000000 0x0 0x00200000>; /* PCI config space */
478ca5b3410SRobert Richter			reg-names = "csr", "cfg";
479ca5b3410SRobert Richter			ranges = <0x01000000 0x0 0x00000000 0xc0 0x10000000 0x0 0x00010000   /* io  */
480ca5b3410SRobert Richter				  0x02000000 0x0 0x80000000 0xc1 0x80000000 0x0 0x80000000>; /* mem */
481ca5b3410SRobert Richter			dma-ranges = <0x42000000 0x80 0x00000000 0x80 0x00000000 0x00 0x80000000
482ca5b3410SRobert Richter				      0x42000000 0x00 0x00000000 0x00 0x00000000 0x80 0x00000000>;
483ca5b3410SRobert Richter			interrupt-map-mask = <0x0 0x0 0x0 0x7>;
484ca5b3410SRobert Richter			interrupt-map = <0x0 0x0 0x0 0x1 &gic 0x0 0xda 0x1
485ca5b3410SRobert Richter					 0x0 0x0 0x0 0x2 &gic 0x0 0xdb 0x1
486ca5b3410SRobert Richter					 0x0 0x0 0x0 0x3 &gic 0x0 0xdc 0x1
487ca5b3410SRobert Richter					 0x0 0x0 0x0 0x4 &gic 0x0 0xdd 0x1>;
488ca5b3410SRobert Richter			dma-coherent;
489ca5b3410SRobert Richter			clocks = <&pcie4clk 0>;
490ca5b3410SRobert Richter		};
491ca5b3410SRobert Richter
492ca5b3410SRobert Richter		serial0: serial@1c020000 {
493ca5b3410SRobert Richter			status = "disabled";
494ca5b3410SRobert Richter			device_type = "serial";
495ca5b3410SRobert Richter			compatible = "ns16550a";
496ca5b3410SRobert Richter			reg = <0 0x1c020000 0x0 0x1000>;
497ca5b3410SRobert Richter			reg-shift = <2>;
498ca5b3410SRobert Richter			clock-frequency = <10000000>; /* Updated by bootloader */
499ca5b3410SRobert Richter			interrupt-parent = <&gic>;
500ca5b3410SRobert Richter			interrupts = <0x0 0x4c 0x4>;
501ca5b3410SRobert Richter		};
502ca5b3410SRobert Richter
503ca5b3410SRobert Richter		serial1: serial@1c021000 {
504ca5b3410SRobert Richter			status = "disabled";
505ca5b3410SRobert Richter			device_type = "serial";
506ca5b3410SRobert Richter			compatible = "ns16550a";
507ca5b3410SRobert Richter			reg = <0 0x1c021000 0x0 0x1000>;
508ca5b3410SRobert Richter			reg-shift = <2>;
509ca5b3410SRobert Richter			clock-frequency = <10000000>; /* Updated by bootloader */
510ca5b3410SRobert Richter			interrupt-parent = <&gic>;
511ca5b3410SRobert Richter			interrupts = <0x0 0x4d 0x4>;
512ca5b3410SRobert Richter		};
513ca5b3410SRobert Richter
514ca5b3410SRobert Richter		serial2: serial@1c022000 {
515ca5b3410SRobert Richter			status = "disabled";
516ca5b3410SRobert Richter			device_type = "serial";
517ca5b3410SRobert Richter			compatible = "ns16550a";
518ca5b3410SRobert Richter			reg = <0 0x1c022000 0x0 0x1000>;
519ca5b3410SRobert Richter			reg-shift = <2>;
520ca5b3410SRobert Richter			clock-frequency = <10000000>; /* Updated by bootloader */
521ca5b3410SRobert Richter			interrupt-parent = <&gic>;
522ca5b3410SRobert Richter			interrupts = <0x0 0x4e 0x4>;
523ca5b3410SRobert Richter		};
524ca5b3410SRobert Richter
525ca5b3410SRobert Richter		serial3: serial@1c023000 {
526ca5b3410SRobert Richter			status = "disabled";
527ca5b3410SRobert Richter			device_type = "serial";
528ca5b3410SRobert Richter			compatible = "ns16550a";
529ca5b3410SRobert Richter			reg = <0 0x1c023000 0x0 0x1000>;
530ca5b3410SRobert Richter			reg-shift = <2>;
531ca5b3410SRobert Richter			clock-frequency = <10000000>; /* Updated by bootloader */
532ca5b3410SRobert Richter			interrupt-parent = <&gic>;
533ca5b3410SRobert Richter			interrupts = <0x0 0x4f 0x4>;
534ca5b3410SRobert Richter		};
535ca5b3410SRobert Richter
536ca5b3410SRobert Richter		phy1: phy@1f21a000 {
537ca5b3410SRobert Richter			compatible = "apm,xgene-phy";
538ca5b3410SRobert Richter			reg = <0x0 0x1f21a000 0x0 0x100>;
539ca5b3410SRobert Richter			#phy-cells = <1>;
540ca5b3410SRobert Richter			clocks = <&sataphy1clk 0>;
541ca5b3410SRobert Richter			status = "disabled";
542ca5b3410SRobert Richter			apm,tx-boost-gain = <30 30 30 30 30 30>;
543ca5b3410SRobert Richter			apm,tx-eye-tuning = <2 10 10 2 10 10>;
544ca5b3410SRobert Richter		};
545ca5b3410SRobert Richter
546ca5b3410SRobert Richter		phy2: phy@1f22a000 {
547ca5b3410SRobert Richter			compatible = "apm,xgene-phy";
548ca5b3410SRobert Richter			reg = <0x0 0x1f22a000 0x0 0x100>;
549ca5b3410SRobert Richter			#phy-cells = <1>;
550ca5b3410SRobert Richter			clocks = <&sataphy2clk 0>;
551ca5b3410SRobert Richter			status = "ok";
552ca5b3410SRobert Richter			apm,tx-boost-gain = <30 30 30 30 30 30>;
553ca5b3410SRobert Richter			apm,tx-eye-tuning = <1 10 10 2 10 10>;
554ca5b3410SRobert Richter		};
555ca5b3410SRobert Richter
556ca5b3410SRobert Richter		phy3: phy@1f23a000 {
557ca5b3410SRobert Richter			compatible = "apm,xgene-phy";
558ca5b3410SRobert Richter			reg = <0x0 0x1f23a000 0x0 0x100>;
559ca5b3410SRobert Richter			#phy-cells = <1>;
560ca5b3410SRobert Richter			clocks = <&sataphy3clk 0>;
561ca5b3410SRobert Richter			status = "ok";
562ca5b3410SRobert Richter			apm,tx-boost-gain = <31 31 31 31 31 31>;
563ca5b3410SRobert Richter			apm,tx-eye-tuning = <2 10 10 2 10 10>;
564ca5b3410SRobert Richter		};
565ca5b3410SRobert Richter
566ca5b3410SRobert Richter		sata1: sata@1a000000 {
567ca5b3410SRobert Richter			compatible = "apm,xgene-ahci";
568ca5b3410SRobert Richter			reg = <0x0 0x1a000000 0x0 0x1000>,
569ca5b3410SRobert Richter			      <0x0 0x1f210000 0x0 0x1000>,
570ca5b3410SRobert Richter			      <0x0 0x1f21d000 0x0 0x1000>,
571ca5b3410SRobert Richter			      <0x0 0x1f21e000 0x0 0x1000>,
572ca5b3410SRobert Richter			      <0x0 0x1f217000 0x0 0x1000>;
573ca5b3410SRobert Richter			interrupts = <0x0 0x86 0x4>;
574ca5b3410SRobert Richter			dma-coherent;
575ca5b3410SRobert Richter			status = "disabled";
576ca5b3410SRobert Richter			clocks = <&sata01clk 0>;
577ca5b3410SRobert Richter			phys = <&phy1 0>;
578ca5b3410SRobert Richter			phy-names = "sata-phy";
579ca5b3410SRobert Richter		};
580ca5b3410SRobert Richter
581ca5b3410SRobert Richter		sata2: sata@1a400000 {
582ca5b3410SRobert Richter			compatible = "apm,xgene-ahci";
583ca5b3410SRobert Richter			reg = <0x0 0x1a400000 0x0 0x1000>,
584ca5b3410SRobert Richter			      <0x0 0x1f220000 0x0 0x1000>,
585ca5b3410SRobert Richter			      <0x0 0x1f22d000 0x0 0x1000>,
586ca5b3410SRobert Richter			      <0x0 0x1f22e000 0x0 0x1000>,
587ca5b3410SRobert Richter			      <0x0 0x1f227000 0x0 0x1000>;
588ca5b3410SRobert Richter			interrupts = <0x0 0x87 0x4>;
589ca5b3410SRobert Richter			dma-coherent;
590ca5b3410SRobert Richter			status = "ok";
591ca5b3410SRobert Richter			clocks = <&sata23clk 0>;
592ca5b3410SRobert Richter			phys = <&phy2 0>;
593ca5b3410SRobert Richter			phy-names = "sata-phy";
594ca5b3410SRobert Richter		};
595ca5b3410SRobert Richter
596ca5b3410SRobert Richter		sata3: sata@1a800000 {
597ca5b3410SRobert Richter			compatible = "apm,xgene-ahci";
598ca5b3410SRobert Richter			reg = <0x0 0x1a800000 0x0 0x1000>,
599ca5b3410SRobert Richter			      <0x0 0x1f230000 0x0 0x1000>,
600ca5b3410SRobert Richter			      <0x0 0x1f23d000 0x0 0x1000>,
601ca5b3410SRobert Richter			      <0x0 0x1f23e000 0x0 0x1000>;
602ca5b3410SRobert Richter			interrupts = <0x0 0x88 0x4>;
603ca5b3410SRobert Richter			dma-coherent;
604ca5b3410SRobert Richter			status = "ok";
605ca5b3410SRobert Richter			clocks = <&sata45clk 0>;
606ca5b3410SRobert Richter			phys = <&phy3 0>;
607ca5b3410SRobert Richter			phy-names = "sata-phy";
608ca5b3410SRobert Richter		};
609ca5b3410SRobert Richter
610ea21feb3SY Vo		sbgpio: sbgpio@17001000{
611ea21feb3SY Vo			compatible = "apm,xgene-gpio-sb";
612ea21feb3SY Vo			reg = <0x0 0x17001000 0x0 0x400>;
613ea21feb3SY Vo			#gpio-cells = <2>;
614ea21feb3SY Vo			gpio-controller;
615ea21feb3SY Vo			interrupts = 	<0x0 0x28 0x1>,
616ea21feb3SY Vo					<0x0 0x29 0x1>,
617ea21feb3SY Vo					<0x0 0x2a 0x1>,
618ea21feb3SY Vo					<0x0 0x2b 0x1>,
619ea21feb3SY Vo					<0x0 0x2c 0x1>,
620ea21feb3SY Vo					<0x0 0x2d 0x1>;
621ea21feb3SY Vo		};
622ea21feb3SY Vo
623ca5b3410SRobert Richter		rtc: rtc@10510000 {
624ca5b3410SRobert Richter			compatible = "apm,xgene-rtc";
625ca5b3410SRobert Richter			reg = <0x0 0x10510000 0x0 0x400>;
626ca5b3410SRobert Richter			interrupts = <0x0 0x46 0x4>;
627ca5b3410SRobert Richter			#clock-cells = <1>;
628ca5b3410SRobert Richter			clocks = <&rtcclk 0>;
629ca5b3410SRobert Richter		};
630ca5b3410SRobert Richter
631ca5b3410SRobert Richter		menet: ethernet@17020000 {
632ca5b3410SRobert Richter			compatible = "apm,xgene-enet";
633ca5b3410SRobert Richter			status = "disabled";
634ca5b3410SRobert Richter			reg = <0x0 0x17020000 0x0 0xd100>,
6356c9e9247SLinus Torvalds			      <0x0 0X17030000 0x0 0Xc300>,
636ca5b3410SRobert Richter			      <0x0 0X10000000 0x0 0X200>;
637ca5b3410SRobert Richter			reg-names = "enet_csr", "ring_csr", "ring_cmd";
638ca5b3410SRobert Richter			interrupts = <0x0 0x3c 0x4>;
639ca5b3410SRobert Richter			dma-coherent;
640ca5b3410SRobert Richter			clocks = <&menetclk 0>;
641ca5b3410SRobert Richter			/* mac address will be overwritten by the bootloader */
642ca5b3410SRobert Richter			local-mac-address = [00 00 00 00 00 00];
643ca5b3410SRobert Richter			phy-connection-type = "rgmii";
644ca5b3410SRobert Richter			phy-handle = <&menetphy>;
645ca5b3410SRobert Richter			mdio {
646ca5b3410SRobert Richter				compatible = "apm,xgene-mdio";
647ca5b3410SRobert Richter				#address-cells = <1>;
648ca5b3410SRobert Richter				#size-cells = <0>;
649ca5b3410SRobert Richter				menetphy: menetphy@3 {
650ca5b3410SRobert Richter					compatible = "ethernet-phy-id001c.c915";
651ca5b3410SRobert Richter					reg = <0x3>;
652ca5b3410SRobert Richter				};
653ca5b3410SRobert Richter
654ca5b3410SRobert Richter			};
655ca5b3410SRobert Richter		};
656ca5b3410SRobert Richter
657ca5b3410SRobert Richter		sgenet0: ethernet@1f210000 {
6582a91eb72SIyappan Subramanian			compatible = "apm,xgene1-sgenet";
659ca5b3410SRobert Richter			status = "disabled";
6606c9e9247SLinus Torvalds			reg = <0x0 0x1f210000 0x0 0xd100>,
6616c9e9247SLinus Torvalds			      <0x0 0x1f200000 0x0 0Xc300>,
6626c9e9247SLinus Torvalds			      <0x0 0x1B000000 0x0 0X200>;
663ca5b3410SRobert Richter			reg-names = "enet_csr", "ring_csr", "ring_cmd";
664d3134649SIyappan Subramanian			interrupts = <0x0 0xA0 0x4>,
665d3134649SIyappan Subramanian				     <0x0 0xA1 0x4>;
666ca5b3410SRobert Richter			dma-coherent;
667ca5b3410SRobert Richter			clocks = <&sge0clk 0>;
668ca5b3410SRobert Richter			local-mac-address = [00 00 00 00 00 00];
669ca5b3410SRobert Richter			phy-connection-type = "sgmii";
670ca5b3410SRobert Richter		};
671ca5b3410SRobert Richter
6722d33394eSKeyur Chudgar		sgenet1: ethernet@1f210030 {
6732d33394eSKeyur Chudgar			compatible = "apm,xgene1-sgenet";
6742d33394eSKeyur Chudgar			status = "disabled";
6752d33394eSKeyur Chudgar			reg = <0x0 0x1f210030 0x0 0xd100>,
6762d33394eSKeyur Chudgar			      <0x0 0x1f200000 0x0 0Xc300>,
6772d33394eSKeyur Chudgar			      <0x0 0x1B000000 0x0 0X8000>;
6782d33394eSKeyur Chudgar			reg-names = "enet_csr", "ring_csr", "ring_cmd";
679d3134649SIyappan Subramanian			interrupts = <0x0 0xAC 0x4>,
680d3134649SIyappan Subramanian				     <0x0 0xAD 0x4>;
6812d33394eSKeyur Chudgar			port-id = <1>;
6822d33394eSKeyur Chudgar			dma-coherent;
6832d33394eSKeyur Chudgar			clocks = <&sge1clk 0>;
6842d33394eSKeyur Chudgar			local-mac-address = [00 00 00 00 00 00];
6852d33394eSKeyur Chudgar			phy-connection-type = "sgmii";
6862d33394eSKeyur Chudgar		};
6872d33394eSKeyur Chudgar
688ca5b3410SRobert Richter		xgenet: ethernet@1f610000 {
6892a91eb72SIyappan Subramanian			compatible = "apm,xgene1-xgenet";
690ca5b3410SRobert Richter			status = "disabled";
691ca5b3410SRobert Richter			reg = <0x0 0x1f610000 0x0 0xd100>,
6926c9e9247SLinus Torvalds			      <0x0 0x1f600000 0x0 0Xc300>,
693ca5b3410SRobert Richter			      <0x0 0x18000000 0x0 0X200>;
694ca5b3410SRobert Richter			reg-names = "enet_csr", "ring_csr", "ring_cmd";
695d3134649SIyappan Subramanian			interrupts = <0x0 0x60 0x4>,
696d3134649SIyappan Subramanian				     <0x0 0x61 0x4>;
697ca5b3410SRobert Richter			dma-coherent;
698ca5b3410SRobert Richter			clocks = <&xge0clk 0>;
699ca5b3410SRobert Richter			/* mac address will be overwritten by the bootloader */
700ca5b3410SRobert Richter			local-mac-address = [00 00 00 00 00 00];
701ca5b3410SRobert Richter			phy-connection-type = "xgmii";
702ca5b3410SRobert Richter		};
703ca5b3410SRobert Richter
704ca5b3410SRobert Richter		rng: rng@10520000 {
705ca5b3410SRobert Richter			compatible = "apm,xgene-rng";
706ca5b3410SRobert Richter			reg = <0x0 0x10520000 0x0 0x100>;
707ca5b3410SRobert Richter			interrupts = <0x0 0x41 0x4>;
708ca5b3410SRobert Richter			clocks = <&rngpkaclk 0>;
709ca5b3410SRobert Richter		};
71074e353e1SRameshwar Prasad Sahu
71174e353e1SRameshwar Prasad Sahu		dma: dma@1f270000 {
71274e353e1SRameshwar Prasad Sahu			compatible = "apm,xgene-storm-dma";
71374e353e1SRameshwar Prasad Sahu			device_type = "dma";
71474e353e1SRameshwar Prasad Sahu			reg = <0x0 0x1f270000 0x0 0x10000>,
71574e353e1SRameshwar Prasad Sahu			      <0x0 0x1f200000 0x0 0x10000>,
71674e353e1SRameshwar Prasad Sahu			      <0x0 0x1b008000 0x0 0x2000>,
71774e353e1SRameshwar Prasad Sahu			      <0x0 0x1054a000 0x0 0x100>;
71874e353e1SRameshwar Prasad Sahu			interrupts = <0x0 0x82 0x4>,
71974e353e1SRameshwar Prasad Sahu				     <0x0 0xb8 0x4>,
72074e353e1SRameshwar Prasad Sahu				     <0x0 0xb9 0x4>,
72174e353e1SRameshwar Prasad Sahu				     <0x0 0xba 0x4>,
72274e353e1SRameshwar Prasad Sahu				     <0x0 0xbb 0x4>;
72374e353e1SRameshwar Prasad Sahu			dma-coherent;
72474e353e1SRameshwar Prasad Sahu			clocks = <&dmaclk 0>;
72574e353e1SRameshwar Prasad Sahu		};
726ca5b3410SRobert Richter	};
727ca5b3410SRobert Richter};
728