xref: /freebsd/sys/contrib/device-tree/src/powerpc/tqm8555.dts (revision c66ec88fed842fbaad62c30d510644ceb7bd2d71)
1*c66ec88fSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-or-later
2*c66ec88fSEmmanuel Vadot/*
3*c66ec88fSEmmanuel Vadot * TQM 8555 Device Tree Source
4*c66ec88fSEmmanuel Vadot *
5*c66ec88fSEmmanuel Vadot * Copyright 2008 Freescale Semiconductor Inc.
6*c66ec88fSEmmanuel Vadot */
7*c66ec88fSEmmanuel Vadot
8*c66ec88fSEmmanuel Vadot/dts-v1/;
9*c66ec88fSEmmanuel Vadot
10*c66ec88fSEmmanuel Vadot/ {
11*c66ec88fSEmmanuel Vadot	model = "tqc,tqm8555";
12*c66ec88fSEmmanuel Vadot	compatible = "tqc,tqm8555";
13*c66ec88fSEmmanuel Vadot	#address-cells = <1>;
14*c66ec88fSEmmanuel Vadot	#size-cells = <1>;
15*c66ec88fSEmmanuel Vadot
16*c66ec88fSEmmanuel Vadot	aliases {
17*c66ec88fSEmmanuel Vadot		ethernet0 = &enet0;
18*c66ec88fSEmmanuel Vadot		ethernet1 = &enet1;
19*c66ec88fSEmmanuel Vadot		serial0 = &serial0;
20*c66ec88fSEmmanuel Vadot		serial1 = &serial1;
21*c66ec88fSEmmanuel Vadot		pci0 = &pci0;
22*c66ec88fSEmmanuel Vadot	};
23*c66ec88fSEmmanuel Vadot
24*c66ec88fSEmmanuel Vadot	cpus {
25*c66ec88fSEmmanuel Vadot		#address-cells = <1>;
26*c66ec88fSEmmanuel Vadot		#size-cells = <0>;
27*c66ec88fSEmmanuel Vadot
28*c66ec88fSEmmanuel Vadot		PowerPC,8555@0 {
29*c66ec88fSEmmanuel Vadot			device_type = "cpu";
30*c66ec88fSEmmanuel Vadot			reg = <0>;
31*c66ec88fSEmmanuel Vadot			d-cache-line-size = <32>;
32*c66ec88fSEmmanuel Vadot			i-cache-line-size = <32>;
33*c66ec88fSEmmanuel Vadot			d-cache-size = <32768>;
34*c66ec88fSEmmanuel Vadot			i-cache-size = <32768>;
35*c66ec88fSEmmanuel Vadot			timebase-frequency = <0>;
36*c66ec88fSEmmanuel Vadot			bus-frequency = <0>;
37*c66ec88fSEmmanuel Vadot			clock-frequency = <0>;
38*c66ec88fSEmmanuel Vadot			next-level-cache = <&L2>;
39*c66ec88fSEmmanuel Vadot		};
40*c66ec88fSEmmanuel Vadot	};
41*c66ec88fSEmmanuel Vadot
42*c66ec88fSEmmanuel Vadot	memory {
43*c66ec88fSEmmanuel Vadot		device_type = "memory";
44*c66ec88fSEmmanuel Vadot		reg = <0x00000000 0x10000000>;
45*c66ec88fSEmmanuel Vadot	};
46*c66ec88fSEmmanuel Vadot
47*c66ec88fSEmmanuel Vadot	soc@e0000000 {
48*c66ec88fSEmmanuel Vadot		#address-cells = <1>;
49*c66ec88fSEmmanuel Vadot		#size-cells = <1>;
50*c66ec88fSEmmanuel Vadot		device_type = "soc";
51*c66ec88fSEmmanuel Vadot		ranges = <0x0 0xe0000000 0x100000>;
52*c66ec88fSEmmanuel Vadot		bus-frequency = <0>;
53*c66ec88fSEmmanuel Vadot		compatible = "fsl,mpc8555-immr", "simple-bus";
54*c66ec88fSEmmanuel Vadot
55*c66ec88fSEmmanuel Vadot		ecm-law@0 {
56*c66ec88fSEmmanuel Vadot			compatible = "fsl,ecm-law";
57*c66ec88fSEmmanuel Vadot			reg = <0x0 0x1000>;
58*c66ec88fSEmmanuel Vadot			fsl,num-laws = <8>;
59*c66ec88fSEmmanuel Vadot		};
60*c66ec88fSEmmanuel Vadot
61*c66ec88fSEmmanuel Vadot		ecm@1000 {
62*c66ec88fSEmmanuel Vadot			compatible = "fsl,mpc8555-ecm", "fsl,ecm";
63*c66ec88fSEmmanuel Vadot			reg = <0x1000 0x1000>;
64*c66ec88fSEmmanuel Vadot			interrupts = <17 2>;
65*c66ec88fSEmmanuel Vadot			interrupt-parent = <&mpic>;
66*c66ec88fSEmmanuel Vadot		};
67*c66ec88fSEmmanuel Vadot
68*c66ec88fSEmmanuel Vadot		memory-controller@2000 {
69*c66ec88fSEmmanuel Vadot			compatible = "fsl,mpc8540-memory-controller";
70*c66ec88fSEmmanuel Vadot			reg = <0x2000 0x1000>;
71*c66ec88fSEmmanuel Vadot			interrupt-parent = <&mpic>;
72*c66ec88fSEmmanuel Vadot			interrupts = <18 2>;
73*c66ec88fSEmmanuel Vadot		};
74*c66ec88fSEmmanuel Vadot
75*c66ec88fSEmmanuel Vadot		L2: l2-cache-controller@20000 {
76*c66ec88fSEmmanuel Vadot			compatible = "fsl,mpc8540-l2-cache-controller";
77*c66ec88fSEmmanuel Vadot			reg = <0x20000 0x1000>;
78*c66ec88fSEmmanuel Vadot			cache-line-size = <32>;
79*c66ec88fSEmmanuel Vadot			cache-size = <0x40000>;	// L2, 256K
80*c66ec88fSEmmanuel Vadot			interrupt-parent = <&mpic>;
81*c66ec88fSEmmanuel Vadot			interrupts = <16 2>;
82*c66ec88fSEmmanuel Vadot		};
83*c66ec88fSEmmanuel Vadot
84*c66ec88fSEmmanuel Vadot		i2c@3000 {
85*c66ec88fSEmmanuel Vadot			#address-cells = <1>;
86*c66ec88fSEmmanuel Vadot			#size-cells = <0>;
87*c66ec88fSEmmanuel Vadot			cell-index = <0>;
88*c66ec88fSEmmanuel Vadot			compatible = "fsl-i2c";
89*c66ec88fSEmmanuel Vadot			reg = <0x3000 0x100>;
90*c66ec88fSEmmanuel Vadot			interrupts = <43 2>;
91*c66ec88fSEmmanuel Vadot			interrupt-parent = <&mpic>;
92*c66ec88fSEmmanuel Vadot			dfsrr;
93*c66ec88fSEmmanuel Vadot
94*c66ec88fSEmmanuel Vadot			dtt@48 {
95*c66ec88fSEmmanuel Vadot				compatible = "national,lm75";
96*c66ec88fSEmmanuel Vadot				reg = <0x48>;
97*c66ec88fSEmmanuel Vadot			};
98*c66ec88fSEmmanuel Vadot
99*c66ec88fSEmmanuel Vadot			rtc@68 {
100*c66ec88fSEmmanuel Vadot				compatible = "dallas,ds1337";
101*c66ec88fSEmmanuel Vadot				reg = <0x68>;
102*c66ec88fSEmmanuel Vadot			};
103*c66ec88fSEmmanuel Vadot		};
104*c66ec88fSEmmanuel Vadot
105*c66ec88fSEmmanuel Vadot		dma@21300 {
106*c66ec88fSEmmanuel Vadot			#address-cells = <1>;
107*c66ec88fSEmmanuel Vadot			#size-cells = <1>;
108*c66ec88fSEmmanuel Vadot			compatible = "fsl,mpc8555-dma", "fsl,eloplus-dma";
109*c66ec88fSEmmanuel Vadot			reg = <0x21300 0x4>;
110*c66ec88fSEmmanuel Vadot			ranges = <0x0 0x21100 0x200>;
111*c66ec88fSEmmanuel Vadot			cell-index = <0>;
112*c66ec88fSEmmanuel Vadot			dma-channel@0 {
113*c66ec88fSEmmanuel Vadot				compatible = "fsl,mpc8555-dma-channel",
114*c66ec88fSEmmanuel Vadot						"fsl,eloplus-dma-channel";
115*c66ec88fSEmmanuel Vadot				reg = <0x0 0x80>;
116*c66ec88fSEmmanuel Vadot				cell-index = <0>;
117*c66ec88fSEmmanuel Vadot				interrupt-parent = <&mpic>;
118*c66ec88fSEmmanuel Vadot				interrupts = <20 2>;
119*c66ec88fSEmmanuel Vadot			};
120*c66ec88fSEmmanuel Vadot			dma-channel@80 {
121*c66ec88fSEmmanuel Vadot				compatible = "fsl,mpc8555-dma-channel",
122*c66ec88fSEmmanuel Vadot						"fsl,eloplus-dma-channel";
123*c66ec88fSEmmanuel Vadot				reg = <0x80 0x80>;
124*c66ec88fSEmmanuel Vadot				cell-index = <1>;
125*c66ec88fSEmmanuel Vadot				interrupt-parent = <&mpic>;
126*c66ec88fSEmmanuel Vadot				interrupts = <21 2>;
127*c66ec88fSEmmanuel Vadot			};
128*c66ec88fSEmmanuel Vadot			dma-channel@100 {
129*c66ec88fSEmmanuel Vadot				compatible = "fsl,mpc8555-dma-channel",
130*c66ec88fSEmmanuel Vadot						"fsl,eloplus-dma-channel";
131*c66ec88fSEmmanuel Vadot				reg = <0x100 0x80>;
132*c66ec88fSEmmanuel Vadot				cell-index = <2>;
133*c66ec88fSEmmanuel Vadot				interrupt-parent = <&mpic>;
134*c66ec88fSEmmanuel Vadot				interrupts = <22 2>;
135*c66ec88fSEmmanuel Vadot			};
136*c66ec88fSEmmanuel Vadot			dma-channel@180 {
137*c66ec88fSEmmanuel Vadot				compatible = "fsl,mpc8555-dma-channel",
138*c66ec88fSEmmanuel Vadot						"fsl,eloplus-dma-channel";
139*c66ec88fSEmmanuel Vadot				reg = <0x180 0x80>;
140*c66ec88fSEmmanuel Vadot				cell-index = <3>;
141*c66ec88fSEmmanuel Vadot				interrupt-parent = <&mpic>;
142*c66ec88fSEmmanuel Vadot				interrupts = <23 2>;
143*c66ec88fSEmmanuel Vadot			};
144*c66ec88fSEmmanuel Vadot		};
145*c66ec88fSEmmanuel Vadot
146*c66ec88fSEmmanuel Vadot		enet0: ethernet@24000 {
147*c66ec88fSEmmanuel Vadot			#address-cells = <1>;
148*c66ec88fSEmmanuel Vadot			#size-cells = <1>;
149*c66ec88fSEmmanuel Vadot			cell-index = <0>;
150*c66ec88fSEmmanuel Vadot			device_type = "network";
151*c66ec88fSEmmanuel Vadot			model = "TSEC";
152*c66ec88fSEmmanuel Vadot			compatible = "gianfar";
153*c66ec88fSEmmanuel Vadot			reg = <0x24000 0x1000>;
154*c66ec88fSEmmanuel Vadot			ranges = <0x0 0x24000 0x1000>;
155*c66ec88fSEmmanuel Vadot			local-mac-address = [ 00 00 00 00 00 00 ];
156*c66ec88fSEmmanuel Vadot			interrupts = <29 2 30 2 34 2>;
157*c66ec88fSEmmanuel Vadot			interrupt-parent = <&mpic>;
158*c66ec88fSEmmanuel Vadot			tbi-handle = <&tbi0>;
159*c66ec88fSEmmanuel Vadot			phy-handle = <&phy2>;
160*c66ec88fSEmmanuel Vadot
161*c66ec88fSEmmanuel Vadot			mdio@520 {
162*c66ec88fSEmmanuel Vadot				#address-cells = <1>;
163*c66ec88fSEmmanuel Vadot				#size-cells = <0>;
164*c66ec88fSEmmanuel Vadot				compatible = "fsl,gianfar-mdio";
165*c66ec88fSEmmanuel Vadot				reg = <0x520 0x20>;
166*c66ec88fSEmmanuel Vadot
167*c66ec88fSEmmanuel Vadot				phy1: ethernet-phy@1 {
168*c66ec88fSEmmanuel Vadot					interrupt-parent = <&mpic>;
169*c66ec88fSEmmanuel Vadot					interrupts = <8 1>;
170*c66ec88fSEmmanuel Vadot					reg = <1>;
171*c66ec88fSEmmanuel Vadot				};
172*c66ec88fSEmmanuel Vadot				phy2: ethernet-phy@2 {
173*c66ec88fSEmmanuel Vadot					interrupt-parent = <&mpic>;
174*c66ec88fSEmmanuel Vadot					interrupts = <8 1>;
175*c66ec88fSEmmanuel Vadot					reg = <2>;
176*c66ec88fSEmmanuel Vadot				};
177*c66ec88fSEmmanuel Vadot				phy3: ethernet-phy@3 {
178*c66ec88fSEmmanuel Vadot					interrupt-parent = <&mpic>;
179*c66ec88fSEmmanuel Vadot					interrupts = <8 1>;
180*c66ec88fSEmmanuel Vadot					reg = <3>;
181*c66ec88fSEmmanuel Vadot				};
182*c66ec88fSEmmanuel Vadot				tbi0: tbi-phy@11 {
183*c66ec88fSEmmanuel Vadot					reg = <0x11>;
184*c66ec88fSEmmanuel Vadot					device_type = "tbi-phy";
185*c66ec88fSEmmanuel Vadot				};
186*c66ec88fSEmmanuel Vadot			};
187*c66ec88fSEmmanuel Vadot		};
188*c66ec88fSEmmanuel Vadot
189*c66ec88fSEmmanuel Vadot		enet1: ethernet@25000 {
190*c66ec88fSEmmanuel Vadot			#address-cells = <1>;
191*c66ec88fSEmmanuel Vadot			#size-cells = <1>;
192*c66ec88fSEmmanuel Vadot			cell-index = <1>;
193*c66ec88fSEmmanuel Vadot			device_type = "network";
194*c66ec88fSEmmanuel Vadot			model = "TSEC";
195*c66ec88fSEmmanuel Vadot			compatible = "gianfar";
196*c66ec88fSEmmanuel Vadot			reg = <0x25000 0x1000>;
197*c66ec88fSEmmanuel Vadot			ranges = <0x0 0x25000 0x1000>;
198*c66ec88fSEmmanuel Vadot			local-mac-address = [ 00 00 00 00 00 00 ];
199*c66ec88fSEmmanuel Vadot			interrupts = <35 2 36 2 40 2>;
200*c66ec88fSEmmanuel Vadot			interrupt-parent = <&mpic>;
201*c66ec88fSEmmanuel Vadot			tbi-handle = <&tbi1>;
202*c66ec88fSEmmanuel Vadot			phy-handle = <&phy1>;
203*c66ec88fSEmmanuel Vadot
204*c66ec88fSEmmanuel Vadot			mdio@520 {
205*c66ec88fSEmmanuel Vadot				#address-cells = <1>;
206*c66ec88fSEmmanuel Vadot				#size-cells = <0>;
207*c66ec88fSEmmanuel Vadot				compatible = "fsl,gianfar-tbi";
208*c66ec88fSEmmanuel Vadot				reg = <0x520 0x20>;
209*c66ec88fSEmmanuel Vadot
210*c66ec88fSEmmanuel Vadot				tbi1: tbi-phy@11 {
211*c66ec88fSEmmanuel Vadot					reg = <0x11>;
212*c66ec88fSEmmanuel Vadot					device_type = "tbi-phy";
213*c66ec88fSEmmanuel Vadot				};
214*c66ec88fSEmmanuel Vadot			};
215*c66ec88fSEmmanuel Vadot		};
216*c66ec88fSEmmanuel Vadot
217*c66ec88fSEmmanuel Vadot		serial0: serial@4500 {
218*c66ec88fSEmmanuel Vadot			cell-index = <0>;
219*c66ec88fSEmmanuel Vadot			device_type = "serial";
220*c66ec88fSEmmanuel Vadot			compatible = "fsl,ns16550", "ns16550";
221*c66ec88fSEmmanuel Vadot			reg = <0x4500 0x100>; 	// reg base, size
222*c66ec88fSEmmanuel Vadot			clock-frequency = <0>; 	// should we fill in in uboot?
223*c66ec88fSEmmanuel Vadot			interrupts = <42 2>;
224*c66ec88fSEmmanuel Vadot			interrupt-parent = <&mpic>;
225*c66ec88fSEmmanuel Vadot		};
226*c66ec88fSEmmanuel Vadot
227*c66ec88fSEmmanuel Vadot		serial1: serial@4600 {
228*c66ec88fSEmmanuel Vadot			cell-index = <1>;
229*c66ec88fSEmmanuel Vadot			device_type = "serial";
230*c66ec88fSEmmanuel Vadot			compatible = "fsl,ns16550", "ns16550";
231*c66ec88fSEmmanuel Vadot			reg = <0x4600 0x100>;	// reg base, size
232*c66ec88fSEmmanuel Vadot			clock-frequency = <0>; 	// should we fill in in uboot?
233*c66ec88fSEmmanuel Vadot			interrupts = <42 2>;
234*c66ec88fSEmmanuel Vadot			interrupt-parent = <&mpic>;
235*c66ec88fSEmmanuel Vadot		};
236*c66ec88fSEmmanuel Vadot
237*c66ec88fSEmmanuel Vadot		crypto@30000 {
238*c66ec88fSEmmanuel Vadot			compatible = "fsl,sec2.0";
239*c66ec88fSEmmanuel Vadot			reg = <0x30000 0x10000>;
240*c66ec88fSEmmanuel Vadot			interrupts = <45 2>;
241*c66ec88fSEmmanuel Vadot			interrupt-parent = <&mpic>;
242*c66ec88fSEmmanuel Vadot			fsl,num-channels = <4>;
243*c66ec88fSEmmanuel Vadot			fsl,channel-fifo-len = <24>;
244*c66ec88fSEmmanuel Vadot			fsl,exec-units-mask = <0x7e>;
245*c66ec88fSEmmanuel Vadot			fsl,descriptor-types-mask = <0x01010ebf>;
246*c66ec88fSEmmanuel Vadot		};
247*c66ec88fSEmmanuel Vadot
248*c66ec88fSEmmanuel Vadot		mpic: pic@40000 {
249*c66ec88fSEmmanuel Vadot			interrupt-controller;
250*c66ec88fSEmmanuel Vadot			#address-cells = <0>;
251*c66ec88fSEmmanuel Vadot			#interrupt-cells = <2>;
252*c66ec88fSEmmanuel Vadot			reg = <0x40000 0x40000>;
253*c66ec88fSEmmanuel Vadot			device_type = "open-pic";
254*c66ec88fSEmmanuel Vadot			compatible = "chrp,open-pic";
255*c66ec88fSEmmanuel Vadot		};
256*c66ec88fSEmmanuel Vadot
257*c66ec88fSEmmanuel Vadot		cpm@919c0 {
258*c66ec88fSEmmanuel Vadot			#address-cells = <1>;
259*c66ec88fSEmmanuel Vadot			#size-cells = <1>;
260*c66ec88fSEmmanuel Vadot			compatible = "fsl,mpc8555-cpm", "fsl,cpm2", "simple-bus";
261*c66ec88fSEmmanuel Vadot			reg = <0x919c0 0x30>;
262*c66ec88fSEmmanuel Vadot			ranges;
263*c66ec88fSEmmanuel Vadot
264*c66ec88fSEmmanuel Vadot			muram@80000 {
265*c66ec88fSEmmanuel Vadot				#address-cells = <1>;
266*c66ec88fSEmmanuel Vadot				#size-cells = <1>;
267*c66ec88fSEmmanuel Vadot				ranges = <0 0x80000 0x10000>;
268*c66ec88fSEmmanuel Vadot
269*c66ec88fSEmmanuel Vadot				data@0 {
270*c66ec88fSEmmanuel Vadot					compatible = "fsl,cpm-muram-data";
271*c66ec88fSEmmanuel Vadot					reg = <0 0x2000 0x9000 0x1000>;
272*c66ec88fSEmmanuel Vadot				};
273*c66ec88fSEmmanuel Vadot			};
274*c66ec88fSEmmanuel Vadot
275*c66ec88fSEmmanuel Vadot			brg@919f0 {
276*c66ec88fSEmmanuel Vadot				compatible = "fsl,mpc8555-brg",
277*c66ec88fSEmmanuel Vadot				             "fsl,cpm2-brg",
278*c66ec88fSEmmanuel Vadot				             "fsl,cpm-brg";
279*c66ec88fSEmmanuel Vadot				reg = <0x919f0 0x10 0x915f0 0x10>;
280*c66ec88fSEmmanuel Vadot				clock-frequency = <0>;
281*c66ec88fSEmmanuel Vadot			};
282*c66ec88fSEmmanuel Vadot
283*c66ec88fSEmmanuel Vadot			cpmpic: pic@90c00 {
284*c66ec88fSEmmanuel Vadot				interrupt-controller;
285*c66ec88fSEmmanuel Vadot				#address-cells = <0>;
286*c66ec88fSEmmanuel Vadot				#interrupt-cells = <2>;
287*c66ec88fSEmmanuel Vadot				interrupts = <46 2>;
288*c66ec88fSEmmanuel Vadot				interrupt-parent = <&mpic>;
289*c66ec88fSEmmanuel Vadot				reg = <0x90c00 0x80>;
290*c66ec88fSEmmanuel Vadot				compatible = "fsl,mpc8555-cpm-pic", "fsl,cpm2-pic";
291*c66ec88fSEmmanuel Vadot			};
292*c66ec88fSEmmanuel Vadot		};
293*c66ec88fSEmmanuel Vadot	};
294*c66ec88fSEmmanuel Vadot
295*c66ec88fSEmmanuel Vadot	pci0: pci@e0008000 {
296*c66ec88fSEmmanuel Vadot		#interrupt-cells = <1>;
297*c66ec88fSEmmanuel Vadot		#size-cells = <2>;
298*c66ec88fSEmmanuel Vadot		#address-cells = <3>;
299*c66ec88fSEmmanuel Vadot		compatible = "fsl,mpc8540-pcix", "fsl,mpc8540-pci";
300*c66ec88fSEmmanuel Vadot		device_type = "pci";
301*c66ec88fSEmmanuel Vadot		reg = <0xe0008000 0x1000>;
302*c66ec88fSEmmanuel Vadot		clock-frequency = <66666666>;
303*c66ec88fSEmmanuel Vadot		interrupt-map-mask = <0xf800 0x0 0x0 0x7>;
304*c66ec88fSEmmanuel Vadot		interrupt-map = <
305*c66ec88fSEmmanuel Vadot				/* IDSEL 28 */
306*c66ec88fSEmmanuel Vadot				 0xe000 0 0 1 &mpic 2 1
307*c66ec88fSEmmanuel Vadot				 0xe000 0 0 2 &mpic 3 1
308*c66ec88fSEmmanuel Vadot				 0xe000 0 0 3 &mpic 6 1
309*c66ec88fSEmmanuel Vadot				 0xe000 0 0 4 &mpic 5 1
310*c66ec88fSEmmanuel Vadot
311*c66ec88fSEmmanuel Vadot				/* IDSEL 11 */
312*c66ec88fSEmmanuel Vadot				 0x5800 0 0 1 &mpic 6 1
313*c66ec88fSEmmanuel Vadot				 0x5800 0 0 2 &mpic 5 1
314*c66ec88fSEmmanuel Vadot				 >;
315*c66ec88fSEmmanuel Vadot
316*c66ec88fSEmmanuel Vadot		interrupt-parent = <&mpic>;
317*c66ec88fSEmmanuel Vadot		interrupts = <24 2>;
318*c66ec88fSEmmanuel Vadot		bus-range = <0 0>;
319*c66ec88fSEmmanuel Vadot		ranges = <0x02000000 0 0x80000000 0x80000000 0 0x20000000
320*c66ec88fSEmmanuel Vadot			  0x01000000 0 0x00000000 0xe2000000 0 0x01000000>;
321*c66ec88fSEmmanuel Vadot	};
322*c66ec88fSEmmanuel Vadot};
323