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