xref: /linux/scripts/dtc/include-prefixes/powerpc/ksi8560.dts (revision ee0a3f564e5b45792ae26fd3a2f8daf98c30ff45)
1*ee0a3f56SAlexandr Smirnov/*
2*ee0a3f56SAlexandr Smirnov * Device Tree Source for Emerson KSI8560
3*ee0a3f56SAlexandr Smirnov *
4*ee0a3f56SAlexandr Smirnov * Author: Alexandr Smirnov <asmirnov@ru.mvista.com>
5*ee0a3f56SAlexandr Smirnov *
6*ee0a3f56SAlexandr Smirnov * Based on mpc8560ads.dts
7*ee0a3f56SAlexandr Smirnov *
8*ee0a3f56SAlexandr Smirnov * 2008 (c) MontaVista, Software, Inc.  This file is licensed under
9*ee0a3f56SAlexandr Smirnov * the terms of the GNU General Public License version 2.  This program
10*ee0a3f56SAlexandr Smirnov * is licensed "as is" without any warranty of any kind, whether express
11*ee0a3f56SAlexandr Smirnov * or implied.
12*ee0a3f56SAlexandr Smirnov *
13*ee0a3f56SAlexandr Smirnov */
14*ee0a3f56SAlexandr Smirnov
15*ee0a3f56SAlexandr Smirnov/dts-v1/;
16*ee0a3f56SAlexandr Smirnov
17*ee0a3f56SAlexandr Smirnov/ {
18*ee0a3f56SAlexandr Smirnov	model = "KSI8560";
19*ee0a3f56SAlexandr Smirnov	compatible = "emerson,KSI8560";
20*ee0a3f56SAlexandr Smirnov	#address-cells = <1>;
21*ee0a3f56SAlexandr Smirnov	#size-cells = <1>;
22*ee0a3f56SAlexandr Smirnov
23*ee0a3f56SAlexandr Smirnov	aliases {
24*ee0a3f56SAlexandr Smirnov		ethernet0 = &enet0;
25*ee0a3f56SAlexandr Smirnov		ethernet1 = &enet1;
26*ee0a3f56SAlexandr Smirnov		ethernet2 = &enet2;
27*ee0a3f56SAlexandr Smirnov	};
28*ee0a3f56SAlexandr Smirnov
29*ee0a3f56SAlexandr Smirnov	cpus {
30*ee0a3f56SAlexandr Smirnov		#address-cells = <1>;
31*ee0a3f56SAlexandr Smirnov		#size-cells = <0>;
32*ee0a3f56SAlexandr Smirnov
33*ee0a3f56SAlexandr Smirnov		PowerPC,8560@0 {
34*ee0a3f56SAlexandr Smirnov			device_type = "cpu";
35*ee0a3f56SAlexandr Smirnov			reg = <0>;
36*ee0a3f56SAlexandr Smirnov			d-cache-line-size = <32>;
37*ee0a3f56SAlexandr Smirnov			i-cache-line-size = <32>;
38*ee0a3f56SAlexandr Smirnov			d-cache-size = <0x8000>;		/* L1, 32K */
39*ee0a3f56SAlexandr Smirnov			i-cache-size = <0x8000>;		/* L1, 32K */
40*ee0a3f56SAlexandr Smirnov			timebase-frequency = <0>;		/* From U-boot */
41*ee0a3f56SAlexandr Smirnov			bus-frequency = <0>;			/* From U-boot */
42*ee0a3f56SAlexandr Smirnov			clock-frequency = <0>;			/* From U-boot */
43*ee0a3f56SAlexandr Smirnov		};
44*ee0a3f56SAlexandr Smirnov	};
45*ee0a3f56SAlexandr Smirnov
46*ee0a3f56SAlexandr Smirnov	memory {
47*ee0a3f56SAlexandr Smirnov		device_type = "memory";
48*ee0a3f56SAlexandr Smirnov		reg = <0x00000000 0x10000000>;			/* Fixed by bootwrapper */
49*ee0a3f56SAlexandr Smirnov	};
50*ee0a3f56SAlexandr Smirnov
51*ee0a3f56SAlexandr Smirnov	soc@fdf00000 {
52*ee0a3f56SAlexandr Smirnov		#address-cells = <1>;
53*ee0a3f56SAlexandr Smirnov		#size-cells = <1>;
54*ee0a3f56SAlexandr Smirnov		device_type = "soc";
55*ee0a3f56SAlexandr Smirnov		ranges = <0x00000000 0xfdf00000 0x00100000>;
56*ee0a3f56SAlexandr Smirnov		bus-frequency = <0>;				/* Fixed by bootwrapper */
57*ee0a3f56SAlexandr Smirnov
58*ee0a3f56SAlexandr Smirnov		memory-controller@2000 {
59*ee0a3f56SAlexandr Smirnov			compatible = "fsl,8540-memory-controller";
60*ee0a3f56SAlexandr Smirnov			reg = <0x2000 0x1000>;
61*ee0a3f56SAlexandr Smirnov			interrupt-parent = <&MPIC>;
62*ee0a3f56SAlexandr Smirnov			interrupts = <0x12 0x2>;
63*ee0a3f56SAlexandr Smirnov		};
64*ee0a3f56SAlexandr Smirnov
65*ee0a3f56SAlexandr Smirnov		l2-cache-controller@20000 {
66*ee0a3f56SAlexandr Smirnov			compatible = "fsl,8540-l2-cache-controller";
67*ee0a3f56SAlexandr Smirnov			reg = <0x20000 0x1000>;
68*ee0a3f56SAlexandr Smirnov			cache-line-size = <0x20>;		/* 32 bytes */
69*ee0a3f56SAlexandr Smirnov			cache-size = <0x40000>;			/* L2, 256K */
70*ee0a3f56SAlexandr Smirnov			interrupt-parent = <&MPIC>;
71*ee0a3f56SAlexandr Smirnov			interrupts = <0x10 0x2>;
72*ee0a3f56SAlexandr Smirnov		};
73*ee0a3f56SAlexandr Smirnov
74*ee0a3f56SAlexandr Smirnov		i2c@3000 {
75*ee0a3f56SAlexandr Smirnov			#address-cells = <1>;
76*ee0a3f56SAlexandr Smirnov			#size-cells = <0>;
77*ee0a3f56SAlexandr Smirnov			cell-index = <0>;
78*ee0a3f56SAlexandr Smirnov			compatible = "fsl-i2c";
79*ee0a3f56SAlexandr Smirnov			reg = <0x3000 0x100>;
80*ee0a3f56SAlexandr Smirnov			interrupts = <0x2b 0x2>;
81*ee0a3f56SAlexandr Smirnov			interrupt-parent = <&MPIC>;
82*ee0a3f56SAlexandr Smirnov			dfsrr;
83*ee0a3f56SAlexandr Smirnov		};
84*ee0a3f56SAlexandr Smirnov
85*ee0a3f56SAlexandr Smirnov		mdio@24520 {					/* For TSECs */
86*ee0a3f56SAlexandr Smirnov			#address-cells = <1>;
87*ee0a3f56SAlexandr Smirnov			#size-cells = <0>;
88*ee0a3f56SAlexandr Smirnov			compatible = "fsl,gianfar-mdio";
89*ee0a3f56SAlexandr Smirnov			reg = <0x24520 0x20>;
90*ee0a3f56SAlexandr Smirnov
91*ee0a3f56SAlexandr Smirnov			PHY1: ethernet-phy@1 {
92*ee0a3f56SAlexandr Smirnov				interrupt-parent = <&MPIC>;
93*ee0a3f56SAlexandr Smirnov				reg = <0x1>;
94*ee0a3f56SAlexandr Smirnov				device_type = "ethernet-phy";
95*ee0a3f56SAlexandr Smirnov			};
96*ee0a3f56SAlexandr Smirnov
97*ee0a3f56SAlexandr Smirnov			PHY2: ethernet-phy@2 {
98*ee0a3f56SAlexandr Smirnov				interrupt-parent = <&MPIC>;
99*ee0a3f56SAlexandr Smirnov				reg = <0x2>;
100*ee0a3f56SAlexandr Smirnov				device_type = "ethernet-phy";
101*ee0a3f56SAlexandr Smirnov			};
102*ee0a3f56SAlexandr Smirnov		};
103*ee0a3f56SAlexandr Smirnov
104*ee0a3f56SAlexandr Smirnov		enet0: ethernet@24000 {
105*ee0a3f56SAlexandr Smirnov			device_type = "network";
106*ee0a3f56SAlexandr Smirnov			model = "TSEC";
107*ee0a3f56SAlexandr Smirnov			compatible = "gianfar";
108*ee0a3f56SAlexandr Smirnov			reg = <0x24000 0x1000>;
109*ee0a3f56SAlexandr Smirnov			/* Mac address filled in by bootwrapper */
110*ee0a3f56SAlexandr Smirnov			local-mac-address = [ 00 00 00 00 00 00 ];
111*ee0a3f56SAlexandr Smirnov			interrupts = <0x1d 0x2 0x1e 0x2 0x22 0x2>;
112*ee0a3f56SAlexandr Smirnov			interrupt-parent = <&MPIC>;
113*ee0a3f56SAlexandr Smirnov			phy-handle = <&PHY1>;
114*ee0a3f56SAlexandr Smirnov		};
115*ee0a3f56SAlexandr Smirnov
116*ee0a3f56SAlexandr Smirnov		enet1: ethernet@25000 {
117*ee0a3f56SAlexandr Smirnov			device_type = "network";
118*ee0a3f56SAlexandr Smirnov			model = "TSEC";
119*ee0a3f56SAlexandr Smirnov			compatible = "gianfar";
120*ee0a3f56SAlexandr Smirnov			reg = <0x25000 0x1000>;
121*ee0a3f56SAlexandr Smirnov			/* Mac address filled in by bootwrapper */
122*ee0a3f56SAlexandr Smirnov			local-mac-address = [ 00 00 00 00 00 00 ];
123*ee0a3f56SAlexandr Smirnov			interrupts = <0x23 0x2 0x24 0x2 0x28 0x2>;
124*ee0a3f56SAlexandr Smirnov			interrupt-parent = <&MPIC>;
125*ee0a3f56SAlexandr Smirnov			phy-handle = <&PHY2>;
126*ee0a3f56SAlexandr Smirnov		};
127*ee0a3f56SAlexandr Smirnov
128*ee0a3f56SAlexandr Smirnov		MPIC: pic@40000 {
129*ee0a3f56SAlexandr Smirnov			#address-cells = <0>;
130*ee0a3f56SAlexandr Smirnov			#interrupt-cells = <2>;
131*ee0a3f56SAlexandr Smirnov			interrupt-controller;
132*ee0a3f56SAlexandr Smirnov			reg = <0x40000 0x40000>;
133*ee0a3f56SAlexandr Smirnov			device_type = "open-pic";
134*ee0a3f56SAlexandr Smirnov		};
135*ee0a3f56SAlexandr Smirnov
136*ee0a3f56SAlexandr Smirnov		cpm@919c0 {
137*ee0a3f56SAlexandr Smirnov			#address-cells = <1>;
138*ee0a3f56SAlexandr Smirnov			#size-cells = <1>;
139*ee0a3f56SAlexandr Smirnov			compatible = "fsl,mpc8560-cpm", "fsl,cpm2";
140*ee0a3f56SAlexandr Smirnov			reg = <0x919c0 0x30>;
141*ee0a3f56SAlexandr Smirnov			ranges;
142*ee0a3f56SAlexandr Smirnov
143*ee0a3f56SAlexandr Smirnov			muram@80000 {
144*ee0a3f56SAlexandr Smirnov				#address-cells = <1>;
145*ee0a3f56SAlexandr Smirnov				#size-cells = <1>;
146*ee0a3f56SAlexandr Smirnov				ranges = <0x0 0x80000 0x10000>;
147*ee0a3f56SAlexandr Smirnov
148*ee0a3f56SAlexandr Smirnov				data@0 {
149*ee0a3f56SAlexandr Smirnov					compatible = "fsl,cpm-muram-data";
150*ee0a3f56SAlexandr Smirnov					reg = <0x0 0x4000 0x9000 0x2000>;
151*ee0a3f56SAlexandr Smirnov				};
152*ee0a3f56SAlexandr Smirnov			};
153*ee0a3f56SAlexandr Smirnov
154*ee0a3f56SAlexandr Smirnov			brg@919f0 {
155*ee0a3f56SAlexandr Smirnov				compatible = "fsl,mpc8560-brg",
156*ee0a3f56SAlexandr Smirnov					     "fsl,cpm2-brg",
157*ee0a3f56SAlexandr Smirnov					     "fsl,cpm-brg";
158*ee0a3f56SAlexandr Smirnov				reg = <0x919f0 0x10 0x915f0 0x10>;
159*ee0a3f56SAlexandr Smirnov				clock-frequency = <165000000>;	/* 166MHz */
160*ee0a3f56SAlexandr Smirnov			};
161*ee0a3f56SAlexandr Smirnov
162*ee0a3f56SAlexandr Smirnov			CPMPIC: pic@90c00 {
163*ee0a3f56SAlexandr Smirnov				#address-cells = <0>;
164*ee0a3f56SAlexandr Smirnov				#interrupt-cells = <2>;
165*ee0a3f56SAlexandr Smirnov				interrupt-controller;
166*ee0a3f56SAlexandr Smirnov				interrupts = <0x2e 0x2>;
167*ee0a3f56SAlexandr Smirnov				interrupt-parent = <&MPIC>;
168*ee0a3f56SAlexandr Smirnov				reg = <0x90c00 0x80>;
169*ee0a3f56SAlexandr Smirnov				compatible = "fsl,mpc8560-cpm-pic", "fsl,cpm2-pic";
170*ee0a3f56SAlexandr Smirnov			};
171*ee0a3f56SAlexandr Smirnov
172*ee0a3f56SAlexandr Smirnov			serial@91a00 {
173*ee0a3f56SAlexandr Smirnov				device_type = "serial";
174*ee0a3f56SAlexandr Smirnov				compatible = "fsl,mpc8560-scc-uart",
175*ee0a3f56SAlexandr Smirnov					     "fsl,cpm2-scc-uart";
176*ee0a3f56SAlexandr Smirnov				reg = <0x91a00 0x20 0x88000 0x100>;
177*ee0a3f56SAlexandr Smirnov				fsl,cpm-brg = <1>;
178*ee0a3f56SAlexandr Smirnov				fsl,cpm-command = <0x800000>;
179*ee0a3f56SAlexandr Smirnov				current-speed = <0x1c200>;
180*ee0a3f56SAlexandr Smirnov				interrupts = <0x28 0x8>;
181*ee0a3f56SAlexandr Smirnov				interrupt-parent = <&CPMPIC>;
182*ee0a3f56SAlexandr Smirnov			};
183*ee0a3f56SAlexandr Smirnov
184*ee0a3f56SAlexandr Smirnov			serial@91a20 {
185*ee0a3f56SAlexandr Smirnov				device_type = "serial";
186*ee0a3f56SAlexandr Smirnov				compatible = "fsl,mpc8560-scc-uart",
187*ee0a3f56SAlexandr Smirnov					     "fsl,cpm2-scc-uart";
188*ee0a3f56SAlexandr Smirnov				reg = <0x91a20 0x20 0x88100 0x100>;
189*ee0a3f56SAlexandr Smirnov				fsl,cpm-brg = <2>;
190*ee0a3f56SAlexandr Smirnov				fsl,cpm-command = <0x4a00000>;
191*ee0a3f56SAlexandr Smirnov				current-speed = <0x1c200>;
192*ee0a3f56SAlexandr Smirnov				interrupts = <0x29 0x8>;
193*ee0a3f56SAlexandr Smirnov				interrupt-parent = <&CPMPIC>;
194*ee0a3f56SAlexandr Smirnov			};
195*ee0a3f56SAlexandr Smirnov
196*ee0a3f56SAlexandr Smirnov			mdio@90d00 {				/* For FCCs */
197*ee0a3f56SAlexandr Smirnov				#address-cells = <1>;
198*ee0a3f56SAlexandr Smirnov				#size-cells = <0>;
199*ee0a3f56SAlexandr Smirnov				compatible = "fsl,cpm2-mdio-bitbang";
200*ee0a3f56SAlexandr Smirnov				reg = <0x90d00 0x14>;
201*ee0a3f56SAlexandr Smirnov				fsl,mdio-pin = <24>;
202*ee0a3f56SAlexandr Smirnov				fsl,mdc-pin = <25>;
203*ee0a3f56SAlexandr Smirnov
204*ee0a3f56SAlexandr Smirnov				PHY0: ethernet-phy@0 {
205*ee0a3f56SAlexandr Smirnov					interrupt-parent = <&MPIC>;
206*ee0a3f56SAlexandr Smirnov					reg = <0x0>;
207*ee0a3f56SAlexandr Smirnov					device_type = "ethernet-phy";
208*ee0a3f56SAlexandr Smirnov				};
209*ee0a3f56SAlexandr Smirnov			};
210*ee0a3f56SAlexandr Smirnov
211*ee0a3f56SAlexandr Smirnov			enet2: ethernet@91300 {
212*ee0a3f56SAlexandr Smirnov				device_type = "network";
213*ee0a3f56SAlexandr Smirnov				compatible = "fsl,mpc8560-fcc-enet",
214*ee0a3f56SAlexandr Smirnov					     "fsl,cpm2-fcc-enet";
215*ee0a3f56SAlexandr Smirnov				reg = <0x91300 0x20 0x88400 0x100 0x91390 0x1>;
216*ee0a3f56SAlexandr Smirnov				/* Mac address filled in by bootwrapper */
217*ee0a3f56SAlexandr Smirnov				local-mac-address = [ 00 00 00 00 00 00 ];
218*ee0a3f56SAlexandr Smirnov				fsl,cpm-command = <0x12000300>;
219*ee0a3f56SAlexandr Smirnov				interrupts = <0x20 0x8>;
220*ee0a3f56SAlexandr Smirnov				interrupt-parent = <&CPMPIC>;
221*ee0a3f56SAlexandr Smirnov				phy-handle = <&PHY0>;
222*ee0a3f56SAlexandr Smirnov			};
223*ee0a3f56SAlexandr Smirnov		};
224*ee0a3f56SAlexandr Smirnov	};
225*ee0a3f56SAlexandr Smirnov
226*ee0a3f56SAlexandr Smirnov	localbus@fdf05000 {
227*ee0a3f56SAlexandr Smirnov		#address-cells = <2>;
228*ee0a3f56SAlexandr Smirnov		#size-cells = <1>;
229*ee0a3f56SAlexandr Smirnov		compatible = "fsl,mpc8560-localbus";
230*ee0a3f56SAlexandr Smirnov		reg = <0xfdf05000 0x68>;
231*ee0a3f56SAlexandr Smirnov
232*ee0a3f56SAlexandr Smirnov		ranges = <0x0 0x0 0xe0000000 0x00800000
233*ee0a3f56SAlexandr Smirnov			  0x4 0x0 0xe8080000 0x00080000>;
234*ee0a3f56SAlexandr Smirnov
235*ee0a3f56SAlexandr Smirnov		flash@0,0 {
236*ee0a3f56SAlexandr Smirnov			#address-cells = <1>;
237*ee0a3f56SAlexandr Smirnov			#size-cells = <1>;
238*ee0a3f56SAlexandr Smirnov			compatible = "jedec-flash";
239*ee0a3f56SAlexandr Smirnov			reg = <0x0 0x0 0x800000>;
240*ee0a3f56SAlexandr Smirnov			bank-width = <0x2>;
241*ee0a3f56SAlexandr Smirnov
242*ee0a3f56SAlexandr Smirnov			partition@0 {
243*ee0a3f56SAlexandr Smirnov				label = "Primary Kernel";
244*ee0a3f56SAlexandr Smirnov				reg = <0x0 0x180000>;
245*ee0a3f56SAlexandr Smirnov			};
246*ee0a3f56SAlexandr Smirnov			partition@180000 {
247*ee0a3f56SAlexandr Smirnov				label = "Primary Filesystem";
248*ee0a3f56SAlexandr Smirnov				reg = <0x180000 0x580000>;
249*ee0a3f56SAlexandr Smirnov			};
250*ee0a3f56SAlexandr Smirnov			partition@700000 {
251*ee0a3f56SAlexandr Smirnov				label = "Monitor";
252*ee0a3f56SAlexandr Smirnov				reg = <0x300000 0x100000>;
253*ee0a3f56SAlexandr Smirnov				read-only;
254*ee0a3f56SAlexandr Smirnov			};
255*ee0a3f56SAlexandr Smirnov		};
256*ee0a3f56SAlexandr Smirnov
257*ee0a3f56SAlexandr Smirnov		cpld@4,0 {
258*ee0a3f56SAlexandr Smirnov			compatible = "emerson,KSI8560-cpld";
259*ee0a3f56SAlexandr Smirnov			reg = <0x4 0x0 0x80000>;
260*ee0a3f56SAlexandr Smirnov		};
261*ee0a3f56SAlexandr Smirnov	};
262*ee0a3f56SAlexandr Smirnov
263*ee0a3f56SAlexandr Smirnov
264*ee0a3f56SAlexandr Smirnov	chosen {
265*ee0a3f56SAlexandr Smirnov		linux,stdout-path = "/soc/cpm/serial@91a00";
266*ee0a3f56SAlexandr Smirnov	};
267*ee0a3f56SAlexandr Smirnov};
268