xref: /linux/scripts/dtc/include-prefixes/powerpc/mpc8308_p1m.dts (revision cd2bd44ea8a2e8be8fff583fa5759e8f3758e67a)
1*cd2bd44eSIlya Yanok/*
2*cd2bd44eSIlya Yanok * mpc8308_p1m Device Tree Source
3*cd2bd44eSIlya Yanok *
4*cd2bd44eSIlya Yanok * Copyright 2010 Ilya Yanok, Emcraft Systems, yanok@emcraft.com
5*cd2bd44eSIlya Yanok *
6*cd2bd44eSIlya Yanok * This program is free software; you can redistribute  it and/or modify it
7*cd2bd44eSIlya Yanok * under  the terms of  the GNU General  Public License as published by the
8*cd2bd44eSIlya Yanok * Free Software Foundation;  either version 2 of the  License, or (at your
9*cd2bd44eSIlya Yanok * option) any later version.
10*cd2bd44eSIlya Yanok */
11*cd2bd44eSIlya Yanok
12*cd2bd44eSIlya Yanok/dts-v1/;
13*cd2bd44eSIlya Yanok
14*cd2bd44eSIlya Yanok/ {
15*cd2bd44eSIlya Yanok	compatible = "denx,mpc8308_p1m";
16*cd2bd44eSIlya Yanok	#address-cells = <1>;
17*cd2bd44eSIlya Yanok	#size-cells = <1>;
18*cd2bd44eSIlya Yanok
19*cd2bd44eSIlya Yanok	aliases {
20*cd2bd44eSIlya Yanok		ethernet0 = &enet0;
21*cd2bd44eSIlya Yanok		ethernet1 = &enet1;
22*cd2bd44eSIlya Yanok		serial0 = &serial0;
23*cd2bd44eSIlya Yanok		serial1 = &serial1;
24*cd2bd44eSIlya Yanok		pci0 = &pci0;
25*cd2bd44eSIlya Yanok	};
26*cd2bd44eSIlya Yanok
27*cd2bd44eSIlya Yanok	cpus {
28*cd2bd44eSIlya Yanok		#address-cells = <1>;
29*cd2bd44eSIlya Yanok		#size-cells = <0>;
30*cd2bd44eSIlya Yanok
31*cd2bd44eSIlya Yanok		PowerPC,8308@0 {
32*cd2bd44eSIlya Yanok			device_type = "cpu";
33*cd2bd44eSIlya Yanok			reg = <0x0>;
34*cd2bd44eSIlya Yanok			d-cache-line-size = <32>;
35*cd2bd44eSIlya Yanok			i-cache-line-size = <32>;
36*cd2bd44eSIlya Yanok			d-cache-size = <16384>;
37*cd2bd44eSIlya Yanok			i-cache-size = <16384>;
38*cd2bd44eSIlya Yanok			timebase-frequency = <0>;	// from bootloader
39*cd2bd44eSIlya Yanok			bus-frequency = <0>;		// from bootloader
40*cd2bd44eSIlya Yanok			clock-frequency = <0>;		// from bootloader
41*cd2bd44eSIlya Yanok		};
42*cd2bd44eSIlya Yanok	};
43*cd2bd44eSIlya Yanok
44*cd2bd44eSIlya Yanok	memory {
45*cd2bd44eSIlya Yanok		device_type = "memory";
46*cd2bd44eSIlya Yanok		reg = <0x00000000 0x08000000>;	// 128MB at 0
47*cd2bd44eSIlya Yanok	};
48*cd2bd44eSIlya Yanok
49*cd2bd44eSIlya Yanok	localbus@e0005000 {
50*cd2bd44eSIlya Yanok		#address-cells = <2>;
51*cd2bd44eSIlya Yanok		#size-cells = <1>;
52*cd2bd44eSIlya Yanok		compatible = "fsl,mpc8315-elbc", "fsl,elbc", "simple-bus";
53*cd2bd44eSIlya Yanok		reg = <0xe0005000 0x1000>;
54*cd2bd44eSIlya Yanok		interrupts = <77 0x8>;
55*cd2bd44eSIlya Yanok		interrupt-parent = <&ipic>;
56*cd2bd44eSIlya Yanok
57*cd2bd44eSIlya Yanok		ranges = <0x0 0x0 0xfc000000 0x04000000
58*cd2bd44eSIlya Yanok		          0x1 0x0 0xfbff0000 0x00008000
59*cd2bd44eSIlya Yanok		          0x2 0x0 0xfbff8000 0x00008000>;
60*cd2bd44eSIlya Yanok
61*cd2bd44eSIlya Yanok		flash@0,0 {
62*cd2bd44eSIlya Yanok			#address-cells = <1>;
63*cd2bd44eSIlya Yanok			#size-cells = <1>;
64*cd2bd44eSIlya Yanok			compatible = "cfi-flash";
65*cd2bd44eSIlya Yanok			reg = <0x0 0x0 0x4000000>;
66*cd2bd44eSIlya Yanok			bank-width = <2>;
67*cd2bd44eSIlya Yanok			device-width = <1>;
68*cd2bd44eSIlya Yanok
69*cd2bd44eSIlya Yanok			u-boot@0 {
70*cd2bd44eSIlya Yanok				reg = <0x0 0x60000>;
71*cd2bd44eSIlya Yanok				read-only;
72*cd2bd44eSIlya Yanok			};
73*cd2bd44eSIlya Yanok			env@60000 {
74*cd2bd44eSIlya Yanok				reg = <0x60000 0x20000>;
75*cd2bd44eSIlya Yanok			};
76*cd2bd44eSIlya Yanok			env1@80000 {
77*cd2bd44eSIlya Yanok				reg = <0x80000 0x20000>;
78*cd2bd44eSIlya Yanok			};
79*cd2bd44eSIlya Yanok			kernel@a0000 {
80*cd2bd44eSIlya Yanok				reg = <0xa0000 0x200000>;
81*cd2bd44eSIlya Yanok			};
82*cd2bd44eSIlya Yanok			dtb@2a0000 {
83*cd2bd44eSIlya Yanok				reg = <0x2a0000 0x20000>;
84*cd2bd44eSIlya Yanok			};
85*cd2bd44eSIlya Yanok			ramdisk@2c0000 {
86*cd2bd44eSIlya Yanok				reg = <0x2c0000 0x640000>;
87*cd2bd44eSIlya Yanok			};
88*cd2bd44eSIlya Yanok			user@700000 {
89*cd2bd44eSIlya Yanok				reg = <0x700000 0x3900000>;
90*cd2bd44eSIlya Yanok			};
91*cd2bd44eSIlya Yanok		};
92*cd2bd44eSIlya Yanok
93*cd2bd44eSIlya Yanok		can@1,0 {
94*cd2bd44eSIlya Yanok			compatible = "nxp,sja1000";
95*cd2bd44eSIlya Yanok			reg = <0x1 0x0 0x80>;
96*cd2bd44eSIlya Yanok			interrupts = <18 0x8>;
97*cd2bd44eSIlya Yanok			interrups-parent = <&ipic>;
98*cd2bd44eSIlya Yanok		};
99*cd2bd44eSIlya Yanok
100*cd2bd44eSIlya Yanok		cpld@2,0 {
101*cd2bd44eSIlya Yanok			compatible = "denx,mpc8308_p1m-cpld";
102*cd2bd44eSIlya Yanok			reg = <0x2 0x0 0x8>;
103*cd2bd44eSIlya Yanok			interrupts = <48 0x8>;
104*cd2bd44eSIlya Yanok			interrups-parent = <&ipic>;
105*cd2bd44eSIlya Yanok		};
106*cd2bd44eSIlya Yanok	};
107*cd2bd44eSIlya Yanok
108*cd2bd44eSIlya Yanok	immr@e0000000 {
109*cd2bd44eSIlya Yanok		#address-cells = <1>;
110*cd2bd44eSIlya Yanok		#size-cells = <1>;
111*cd2bd44eSIlya Yanok		device_type = "soc";
112*cd2bd44eSIlya Yanok		compatible = "fsl,mpc8308-immr", "simple-bus";
113*cd2bd44eSIlya Yanok		ranges = <0 0xe0000000 0x00100000>;
114*cd2bd44eSIlya Yanok		reg = <0xe0000000 0x00000200>;
115*cd2bd44eSIlya Yanok		bus-frequency = <0>;
116*cd2bd44eSIlya Yanok
117*cd2bd44eSIlya Yanok		i2c@3000 {
118*cd2bd44eSIlya Yanok			#address-cells = <1>;
119*cd2bd44eSIlya Yanok			#size-cells = <0>;
120*cd2bd44eSIlya Yanok			compatible = "fsl-i2c";
121*cd2bd44eSIlya Yanok			reg = <0x3000 0x100>;
122*cd2bd44eSIlya Yanok			interrupts = <14 0x8>;
123*cd2bd44eSIlya Yanok			interrupt-parent = <&ipic>;
124*cd2bd44eSIlya Yanok			dfsrr;
125*cd2bd44eSIlya Yanok			fram@50 {
126*cd2bd44eSIlya Yanok				compatible = "ramtron,24c64";
127*cd2bd44eSIlya Yanok				reg = <0x50>;
128*cd2bd44eSIlya Yanok			};
129*cd2bd44eSIlya Yanok		};
130*cd2bd44eSIlya Yanok
131*cd2bd44eSIlya Yanok		i2c@3100 {
132*cd2bd44eSIlya Yanok			#address-cells = <1>;
133*cd2bd44eSIlya Yanok			#size-cells = <0>;
134*cd2bd44eSIlya Yanok			compatible = "fsl-i2c";
135*cd2bd44eSIlya Yanok			reg = <0x3100 0x100>;
136*cd2bd44eSIlya Yanok			interrupts = <15 0x8>;
137*cd2bd44eSIlya Yanok			interrupt-parent = <&ipic>;
138*cd2bd44eSIlya Yanok			dfsrr;
139*cd2bd44eSIlya Yanok			pwm@28 {
140*cd2bd44eSIlya Yanok				compatible = "maxim,ds1050";
141*cd2bd44eSIlya Yanok				reg = <0x28>;
142*cd2bd44eSIlya Yanok			};
143*cd2bd44eSIlya Yanok			sensor@48 {
144*cd2bd44eSIlya Yanok				compatible = "maxim,max6625";
145*cd2bd44eSIlya Yanok				reg = <0x48>;
146*cd2bd44eSIlya Yanok			};
147*cd2bd44eSIlya Yanok			sensor@49 {
148*cd2bd44eSIlya Yanok				compatible = "maxim,max6625";
149*cd2bd44eSIlya Yanok				reg = <0x49>;
150*cd2bd44eSIlya Yanok			};
151*cd2bd44eSIlya Yanok			sensor@4b {
152*cd2bd44eSIlya Yanok				compatible = "maxim,max6625";
153*cd2bd44eSIlya Yanok				reg = <0x4b>;
154*cd2bd44eSIlya Yanok			};
155*cd2bd44eSIlya Yanok		};
156*cd2bd44eSIlya Yanok
157*cd2bd44eSIlya Yanok		usb@23000 {
158*cd2bd44eSIlya Yanok			compatible = "fsl-usb2-dr";
159*cd2bd44eSIlya Yanok			reg = <0x23000 0x1000>;
160*cd2bd44eSIlya Yanok			#address-cells = <1>;
161*cd2bd44eSIlya Yanok			#size-cells = <0>;
162*cd2bd44eSIlya Yanok			interrupt-parent = <&ipic>;
163*cd2bd44eSIlya Yanok			interrupts = <38 0x8>;
164*cd2bd44eSIlya Yanok			dr_mode = "peripheral";
165*cd2bd44eSIlya Yanok			phy_type = "ulpi";
166*cd2bd44eSIlya Yanok		};
167*cd2bd44eSIlya Yanok
168*cd2bd44eSIlya Yanok		enet0: ethernet@24000 {
169*cd2bd44eSIlya Yanok			#address-cells = <1>;
170*cd2bd44eSIlya Yanok			#size-cells = <1>;
171*cd2bd44eSIlya Yanok			ranges = <0x0 0x24000 0x1000>;
172*cd2bd44eSIlya Yanok
173*cd2bd44eSIlya Yanok			cell-index = <0>;
174*cd2bd44eSIlya Yanok			device_type = "network";
175*cd2bd44eSIlya Yanok			model = "eTSEC";
176*cd2bd44eSIlya Yanok			compatible = "gianfar";
177*cd2bd44eSIlya Yanok			reg = <0x24000 0x1000>;
178*cd2bd44eSIlya Yanok			local-mac-address = [ 00 00 00 00 00 00 ];
179*cd2bd44eSIlya Yanok			interrupts = <32 0x8 33 0x8 34 0x8>;
180*cd2bd44eSIlya Yanok			interrupt-parent = <&ipic>;
181*cd2bd44eSIlya Yanok			phy-handle = < &phy1 >;
182*cd2bd44eSIlya Yanok
183*cd2bd44eSIlya Yanok			mdio@520 {
184*cd2bd44eSIlya Yanok				#address-cells = <1>;
185*cd2bd44eSIlya Yanok				#size-cells = <0>;
186*cd2bd44eSIlya Yanok				compatible = "fsl,gianfar-mdio";
187*cd2bd44eSIlya Yanok				reg = <0x520 0x20>;
188*cd2bd44eSIlya Yanok				phy1: ethernet-phy@1 {
189*cd2bd44eSIlya Yanok					interrupt-parent = <&ipic>;
190*cd2bd44eSIlya Yanok					interrupts = <17 0x8>;
191*cd2bd44eSIlya Yanok					reg = <0x1>;
192*cd2bd44eSIlya Yanok					device_type = "ethernet-phy";
193*cd2bd44eSIlya Yanok				};
194*cd2bd44eSIlya Yanok				phy2: ethernet-phy@2 {
195*cd2bd44eSIlya Yanok					interrupt-parent = <&ipic>;
196*cd2bd44eSIlya Yanok					interrupts = <19 0x8>;
197*cd2bd44eSIlya Yanok					reg = <0x2>;
198*cd2bd44eSIlya Yanok					device_type = "ethernet-phy";
199*cd2bd44eSIlya Yanok				};
200*cd2bd44eSIlya Yanok				tbi0: tbi-phy@11 {
201*cd2bd44eSIlya Yanok					reg = <0x11>;
202*cd2bd44eSIlya Yanok					device_type = "tbi-phy";
203*cd2bd44eSIlya Yanok				};
204*cd2bd44eSIlya Yanok			};
205*cd2bd44eSIlya Yanok		};
206*cd2bd44eSIlya Yanok
207*cd2bd44eSIlya Yanok		enet1: ethernet@25000 {
208*cd2bd44eSIlya Yanok			#address-cells = <1>;
209*cd2bd44eSIlya Yanok			#size-cells = <1>;
210*cd2bd44eSIlya Yanok			cell-index = <1>;
211*cd2bd44eSIlya Yanok			device_type = "network";
212*cd2bd44eSIlya Yanok			model = "eTSEC";
213*cd2bd44eSIlya Yanok			compatible = "gianfar";
214*cd2bd44eSIlya Yanok			reg = <0x25000 0x1000>;
215*cd2bd44eSIlya Yanok			ranges = <0x0 0x25000 0x1000>;
216*cd2bd44eSIlya Yanok			local-mac-address = [ 00 00 00 00 00 00 ];
217*cd2bd44eSIlya Yanok			interrupts = <35 0x8 36 0x8 37 0x8>;
218*cd2bd44eSIlya Yanok			interrupt-parent = <&ipic>;
219*cd2bd44eSIlya Yanok			phy-handle = < &phy2 >;
220*cd2bd44eSIlya Yanok
221*cd2bd44eSIlya Yanok			mdio@520 {
222*cd2bd44eSIlya Yanok				#address-cells = <1>;
223*cd2bd44eSIlya Yanok				#size-cells = <0>;
224*cd2bd44eSIlya Yanok				compatible = "fsl,gianfar-tbi";
225*cd2bd44eSIlya Yanok				reg = <0x520 0x20>;
226*cd2bd44eSIlya Yanok				tbi1: tbi-phy@11 {
227*cd2bd44eSIlya Yanok					reg = <0x11>;
228*cd2bd44eSIlya Yanok					device_type = "tbi-phy";
229*cd2bd44eSIlya Yanok				};
230*cd2bd44eSIlya Yanok			};
231*cd2bd44eSIlya Yanok		};
232*cd2bd44eSIlya Yanok
233*cd2bd44eSIlya Yanok		serial0: serial@4500 {
234*cd2bd44eSIlya Yanok			cell-index = <0>;
235*cd2bd44eSIlya Yanok			device_type = "serial";
236*cd2bd44eSIlya Yanok			compatible = "ns16550";
237*cd2bd44eSIlya Yanok			reg = <0x4500 0x100>;
238*cd2bd44eSIlya Yanok			clock-frequency = <133333333>;
239*cd2bd44eSIlya Yanok			interrupts = <9 0x8>;
240*cd2bd44eSIlya Yanok			interrupt-parent = <&ipic>;
241*cd2bd44eSIlya Yanok		};
242*cd2bd44eSIlya Yanok
243*cd2bd44eSIlya Yanok		serial1: serial@4600 {
244*cd2bd44eSIlya Yanok			cell-index = <1>;
245*cd2bd44eSIlya Yanok			device_type = "serial";
246*cd2bd44eSIlya Yanok			compatible = "ns16550";
247*cd2bd44eSIlya Yanok			reg = <0x4600 0x100>;
248*cd2bd44eSIlya Yanok			clock-frequency = <133333333>;
249*cd2bd44eSIlya Yanok			interrupts = <10 0x8>;
250*cd2bd44eSIlya Yanok			interrupt-parent = <&ipic>;
251*cd2bd44eSIlya Yanok		};
252*cd2bd44eSIlya Yanok
253*cd2bd44eSIlya Yanok		gpio@c00 {
254*cd2bd44eSIlya Yanok			#gpio-cells = <2>;
255*cd2bd44eSIlya Yanok			compatible = "fsl,mpc8308-gpio", "fsl,mpc8349-gpio";
256*cd2bd44eSIlya Yanok			reg = <0xc00 0x18>;
257*cd2bd44eSIlya Yanok			interrupts = <74 0x8>;
258*cd2bd44eSIlya Yanok			interrupt-parent = <&ipic>;
259*cd2bd44eSIlya Yanok			gpio-controller;
260*cd2bd44eSIlya Yanok		};
261*cd2bd44eSIlya Yanok
262*cd2bd44eSIlya Yanok		timer@500 {
263*cd2bd44eSIlya Yanok			compatible = "fsl,mpc8308-gtm", "fsl,gtm";
264*cd2bd44eSIlya Yanok			reg = <0x500 0x100>;
265*cd2bd44eSIlya Yanok			interrupts = <90 8 78 8 84 8 72 8>;
266*cd2bd44eSIlya Yanok			interrupt-parent = <&ipic>;
267*cd2bd44eSIlya Yanok			clock-frequency = <133333333>;
268*cd2bd44eSIlya Yanok		};
269*cd2bd44eSIlya Yanok
270*cd2bd44eSIlya Yanok		/* IPIC
271*cd2bd44eSIlya Yanok		 * interrupts cell = <intr #, sense>
272*cd2bd44eSIlya Yanok		 * sense values match linux IORESOURCE_IRQ_* defines:
273*cd2bd44eSIlya Yanok		 * sense == 8: Level, low assertion
274*cd2bd44eSIlya Yanok		 * sense == 2: Edge, high-to-low change
275*cd2bd44eSIlya Yanok		 */
276*cd2bd44eSIlya Yanok		ipic: interrupt-controller@700 {
277*cd2bd44eSIlya Yanok			compatible = "fsl,ipic";
278*cd2bd44eSIlya Yanok			interrupt-controller;
279*cd2bd44eSIlya Yanok			#address-cells = <0>;
280*cd2bd44eSIlya Yanok			#interrupt-cells = <2>;
281*cd2bd44eSIlya Yanok			reg = <0x700 0x100>;
282*cd2bd44eSIlya Yanok			device_type = "ipic";
283*cd2bd44eSIlya Yanok		};
284*cd2bd44eSIlya Yanok
285*cd2bd44eSIlya Yanok		ipic-msi@7c0 {
286*cd2bd44eSIlya Yanok			compatible = "fsl,ipic-msi";
287*cd2bd44eSIlya Yanok			reg = <0x7c0 0x40>;
288*cd2bd44eSIlya Yanok			msi-available-ranges = <0x0 0x100>;
289*cd2bd44eSIlya Yanok			interrupts = < 0x43 0x8
290*cd2bd44eSIlya Yanok					0x4  0x8
291*cd2bd44eSIlya Yanok					0x51 0x8
292*cd2bd44eSIlya Yanok					0x52 0x8
293*cd2bd44eSIlya Yanok					0x56 0x8
294*cd2bd44eSIlya Yanok					0x57 0x8
295*cd2bd44eSIlya Yanok					0x58 0x8
296*cd2bd44eSIlya Yanok					0x59 0x8 >;
297*cd2bd44eSIlya Yanok			interrupt-parent = < &ipic >;
298*cd2bd44eSIlya Yanok		};
299*cd2bd44eSIlya Yanok
300*cd2bd44eSIlya Yanok	};
301*cd2bd44eSIlya Yanok
302*cd2bd44eSIlya Yanok	pci0: pcie@e0009000 {
303*cd2bd44eSIlya Yanok		#address-cells = <3>;
304*cd2bd44eSIlya Yanok		#size-cells = <2>;
305*cd2bd44eSIlya Yanok		#interrupt-cells = <1>;
306*cd2bd44eSIlya Yanok		device_type = "pci";
307*cd2bd44eSIlya Yanok		compatible = "fsl,mpc8308-pcie", "fsl,mpc8314-pcie";
308*cd2bd44eSIlya Yanok		reg = <0xe0009000 0x00001000
309*cd2bd44eSIlya Yanok			0xb0000000 0x01000000>;
310*cd2bd44eSIlya Yanok		ranges = <0x02000000 0 0xa0000000 0xa0000000 0 0x10000000
311*cd2bd44eSIlya Yanok		          0x01000000 0 0x00000000 0xb1000000 0 0x00800000>;
312*cd2bd44eSIlya Yanok		bus-range = <0 0>;
313*cd2bd44eSIlya Yanok		interrupt-map-mask = <0 0 0 0>;
314*cd2bd44eSIlya Yanok		interrupt-map = <0 0 0 0 &ipic 1 8>;
315*cd2bd44eSIlya Yanok		interrupts = <0x1 0x8>;
316*cd2bd44eSIlya Yanok		interrupt-parent = <&ipic>;
317*cd2bd44eSIlya Yanok		clock-frequency = <0>;
318*cd2bd44eSIlya Yanok
319*cd2bd44eSIlya Yanok		pcie@0 {
320*cd2bd44eSIlya Yanok			#address-cells = <3>;
321*cd2bd44eSIlya Yanok			#size-cells = <2>;
322*cd2bd44eSIlya Yanok			device_type = "pci";
323*cd2bd44eSIlya Yanok			reg = <0 0 0 0 0>;
324*cd2bd44eSIlya Yanok			ranges = <0x02000000 0 0xa0000000
325*cd2bd44eSIlya Yanok				  0x02000000 0 0xa0000000
326*cd2bd44eSIlya Yanok				  0 0x10000000
327*cd2bd44eSIlya Yanok				  0x01000000 0 0x00000000
328*cd2bd44eSIlya Yanok				  0x01000000 0 0x00000000
329*cd2bd44eSIlya Yanok				  0 0x00800000>;
330*cd2bd44eSIlya Yanok		};
331*cd2bd44eSIlya Yanok	};
332*cd2bd44eSIlya Yanok};
333