1ad1d7d7cSThomas Gleixner// SPDX-License-Identifier: GPL-2.0-only
2317bf653SNate Case/*
3317bf653SNate Case * Copyright (C) 2008 Extreme Engineering Solutions, Inc.
4317bf653SNate Case * Based on MPC8572DS device tree from Freescale Semiconductor, Inc.
5317bf653SNate Case *
6317bf653SNate Case * XCalibur1501 6U CompactPCI single-board computer based on MPC8572E
7317bf653SNate Case */
8317bf653SNate Case
9317bf653SNate Case/dts-v1/;
10317bf653SNate Case/ {
11317bf653SNate Case	model = "xes,xcalibur1501";
12317bf653SNate Case	compatible = "xes,xcalibur1501", "xes,MPC8572";
13317bf653SNate Case	#address-cells = <2>;
14317bf653SNate Case	#size-cells = <2>;
15317bf653SNate Case
16317bf653SNate Case	aliases {
17317bf653SNate Case		ethernet0 = &enet0;
18317bf653SNate Case		ethernet1 = &enet1;
19317bf653SNate Case		ethernet2 = &enet2;
20317bf653SNate Case		ethernet3 = &enet3;
21317bf653SNate Case		serial0 = &serial0;
22317bf653SNate Case		serial1 = &serial1;
23317bf653SNate Case		pci2 = &pci2;
24317bf653SNate Case	};
25317bf653SNate Case
26317bf653SNate Case	cpus {
27317bf653SNate Case		#address-cells = <1>;
28317bf653SNate Case		#size-cells = <0>;
29317bf653SNate Case
30317bf653SNate Case		PowerPC,8572@0 {
31317bf653SNate Case			device_type = "cpu";
32317bf653SNate Case			reg = <0x0>;
33317bf653SNate Case			d-cache-line-size = <32>;	// 32 bytes
34317bf653SNate Case			i-cache-line-size = <32>;	// 32 bytes
35317bf653SNate Case			d-cache-size = <0x8000>;		// L1, 32K
36317bf653SNate Case			i-cache-size = <0x8000>;		// L1, 32K
37317bf653SNate Case			timebase-frequency = <0>;
38317bf653SNate Case			bus-frequency = <0>;
39317bf653SNate Case			clock-frequency = <0>;
40317bf653SNate Case			next-level-cache = <&L2>;
41317bf653SNate Case		};
42317bf653SNate Case
43317bf653SNate Case		PowerPC,8572@1 {
44317bf653SNate Case			device_type = "cpu";
45317bf653SNate Case			reg = <0x1>;
46317bf653SNate Case			d-cache-line-size = <32>;	// 32 bytes
47317bf653SNate Case			i-cache-line-size = <32>;	// 32 bytes
48317bf653SNate Case			d-cache-size = <0x8000>;		// L1, 32K
49317bf653SNate Case			i-cache-size = <0x8000>;		// L1, 32K
50317bf653SNate Case			timebase-frequency = <0>;
51317bf653SNate Case			bus-frequency = <0>;
52317bf653SNate Case			clock-frequency = <0>;
53317bf653SNate Case			next-level-cache = <&L2>;
54317bf653SNate Case		};
55317bf653SNate Case	};
56317bf653SNate Case
57317bf653SNate Case	memory {
58317bf653SNate Case		device_type = "memory";
59317bf653SNate Case		reg = <0x0 0x0 0x0 0x0>;	// Filled in by U-Boot
60317bf653SNate Case	};
61317bf653SNate Case
62317bf653SNate Case	localbus@ef005000 {
63317bf653SNate Case		#address-cells = <2>;
64317bf653SNate Case		#size-cells = <1>;
65317bf653SNate Case		compatible = "fsl,mpc8572-elbc", "fsl,elbc", "simple-bus";
66317bf653SNate Case		reg = <0 0xef005000 0 0x1000>;
67317bf653SNate Case		interrupts = <19 2>;
68317bf653SNate Case		interrupt-parent = <&mpic>;
69317bf653SNate Case		/* Local bus region mappings */
70317bf653SNate Case		ranges = <0 0 0 0xf8000000 0x8000000  /* CS0: Flash 1 */
71317bf653SNate Case			  1 0 0 0xf0000000 0x8000000  /* CS1: Flash 2 */
72317bf653SNate Case			  2 0 0 0xef800000 0x40000    /* CS2: NAND CE1 */
73317bf653SNate Case			  3 0 0 0xef840000 0x40000    /* CS3: NAND CE2 */
74317bf653SNate Case			  4 0 0 0xe9000000 0x100000>; /* CS4: USB */
75317bf653SNate Case
76317bf653SNate Case		nor-boot@0,0 {
77317bf653SNate Case			compatible = "amd,s29gl01gp", "cfi-flash";
78317bf653SNate Case			bank-width = <2>;
79317bf653SNate Case			reg = <0 0 0x8000000>; /* 128MB */
80317bf653SNate Case			#address-cells = <1>;
81317bf653SNate Case			#size-cells = <1>;
82317bf653SNate Case			partition@0 {
83317bf653SNate Case				label = "Primary user space";
84317bf653SNate Case				reg = <0x00000000 0x6f00000>; /* 111 MB */
85317bf653SNate Case			};
86317bf653SNate Case			partition@6f00000 {
87317bf653SNate Case				label = "Primary kernel";
88317bf653SNate Case				reg = <0x6f00000 0x1000000>; /* 16 MB */
89317bf653SNate Case			};
90317bf653SNate Case			partition@7f00000 {
91317bf653SNate Case				label = "Primary DTB";
92317bf653SNate Case				reg = <0x7f00000 0x40000>; /* 256 KB */
93317bf653SNate Case			};
94317bf653SNate Case			partition@7f40000 {
95317bf653SNate Case				label = "Primary U-Boot environment";
96317bf653SNate Case				reg = <0x7f40000 0x40000>; /* 256 KB */
97317bf653SNate Case			};
98317bf653SNate Case			partition@7f80000 {
99317bf653SNate Case				label = "Primary U-Boot";
100317bf653SNate Case				reg = <0x7f80000 0x80000>; /* 512 KB */
101317bf653SNate Case				read-only;
102317bf653SNate Case			};
103317bf653SNate Case		};
104317bf653SNate Case
105317bf653SNate Case		nor-alternate@1,0 {
106317bf653SNate Case			compatible = "amd,s29gl01gp", "cfi-flash";
107317bf653SNate Case			bank-width = <2>;
108317bf653SNate Case			//reg = <0xf0000000 0x08000000>; /* 128MB */
109317bf653SNate Case			reg = <1 0 0x8000000>; /* 128MB */
110317bf653SNate Case			#address-cells = <1>;
111317bf653SNate Case			#size-cells = <1>;
112317bf653SNate Case			partition@0 {
113317bf653SNate Case				label = "Secondary user space";
114317bf653SNate Case				reg = <0x00000000 0x6f00000>; /* 111 MB */
115317bf653SNate Case			};
116317bf653SNate Case			partition@6f00000 {
117317bf653SNate Case				label = "Secondary kernel";
118317bf653SNate Case				reg = <0x6f00000 0x1000000>; /* 16 MB */
119317bf653SNate Case			};
120317bf653SNate Case			partition@7f00000 {
121317bf653SNate Case				label = "Secondary DTB";
122317bf653SNate Case				reg = <0x7f00000 0x40000>; /* 256 KB */
123317bf653SNate Case			};
124317bf653SNate Case			partition@7f40000 {
125317bf653SNate Case				label = "Secondary U-Boot environment";
126317bf653SNate Case				reg = <0x7f40000 0x40000>; /* 256 KB */
127317bf653SNate Case			};
128317bf653SNate Case			partition@7f80000 {
129317bf653SNate Case				label = "Secondary U-Boot";
130317bf653SNate Case				reg = <0x7f80000 0x80000>; /* 512 KB */
131317bf653SNate Case				read-only;
132317bf653SNate Case			};
133317bf653SNate Case		};
134317bf653SNate Case
135317bf653SNate Case		nand@2,0 {
136317bf653SNate Case			#address-cells = <1>;
137317bf653SNate Case			#size-cells = <1>;
138317bf653SNate Case			/*
139317bf653SNate Case			 * Actual part could be ST Micro NAND08GW3B2A (1 GB),
140317bf653SNate Case			 * Micron MT29F8G08DAA (2x 512 MB), or Micron
141317bf653SNate Case			 * MT29F16G08FAA (2x 1 GB), depending on the build
142317bf653SNate Case			 * configuration
143317bf653SNate Case			 */
144317bf653SNate Case			compatible = "fsl,mpc8572-fcm-nand",
145317bf653SNate Case				     "fsl,elbc-fcm-nand";
146317bf653SNate Case			reg = <2 0 0x40000>;
147317bf653SNate Case			/* U-Boot should fix this up if chip size > 1 GB */
148317bf653SNate Case			partition@0 {
149317bf653SNate Case				label = "NAND Filesystem";
150317bf653SNate Case				reg = <0 0x40000000>;
151317bf653SNate Case			};
152317bf653SNate Case		};
153317bf653SNate Case
154317bf653SNate Case		usb@4,0 {
155317bf653SNate Case			compatible = "nxp,usb-isp1761";
156317bf653SNate Case			reg = <4 0 0x100000>;
157317bf653SNate Case			bus-width = <32>;
158317bf653SNate Case			interrupt-parent = <&mpic>;
159317bf653SNate Case			interrupts = <10 1>;
160317bf653SNate Case		};
161317bf653SNate Case	};
162317bf653SNate Case
163317bf653SNate Case	soc8572@ef000000 {
164317bf653SNate Case		#address-cells = <1>;
165317bf653SNate Case		#size-cells = <1>;
166317bf653SNate Case		device_type = "soc";
167317bf653SNate Case		compatible = "fsl,mpc8572-immr", "simple-bus";
168317bf653SNate Case		ranges = <0x0 0 0xef000000 0x100000>;
169317bf653SNate Case		bus-frequency = <0>;		// Filled out by uboot.
170317bf653SNate Case
171317bf653SNate Case		ecm-law@0 {
172317bf653SNate Case			compatible = "fsl,ecm-law";
173317bf653SNate Case			reg = <0x0 0x1000>;
174317bf653SNate Case			fsl,num-laws = <12>;
175317bf653SNate Case		};
176317bf653SNate Case
177317bf653SNate Case		ecm@1000 {
178317bf653SNate Case			compatible = "fsl,mpc8572-ecm", "fsl,ecm";
179317bf653SNate Case			reg = <0x1000 0x1000>;
180317bf653SNate Case			interrupts = <17 2>;
181317bf653SNate Case			interrupt-parent = <&mpic>;
182317bf653SNate Case		};
183317bf653SNate Case
184317bf653SNate Case		memory-controller@2000 {
185317bf653SNate Case			compatible = "fsl,mpc8572-memory-controller";
186317bf653SNate Case			reg = <0x2000 0x1000>;
187317bf653SNate Case			interrupt-parent = <&mpic>;
188317bf653SNate Case			interrupts = <18 2>;
189317bf653SNate Case		};
190317bf653SNate Case
191317bf653SNate Case		memory-controller@6000 {
192317bf653SNate Case			compatible = "fsl,mpc8572-memory-controller";
193317bf653SNate Case			reg = <0x6000 0x1000>;
194317bf653SNate Case			interrupt-parent = <&mpic>;
195317bf653SNate Case			interrupts = <18 2>;
196317bf653SNate Case		};
197317bf653SNate Case
198317bf653SNate Case		L2: l2-cache-controller@20000 {
199317bf653SNate Case			compatible = "fsl,mpc8572-l2-cache-controller";
200317bf653SNate Case			reg = <0x20000 0x1000>;
201317bf653SNate Case			cache-line-size = <32>;	// 32 bytes
202317bf653SNate Case			cache-size = <0x100000>; // L2, 1M
203317bf653SNate Case			interrupt-parent = <&mpic>;
204317bf653SNate Case			interrupts = <16 2>;
205317bf653SNate Case		};
206317bf653SNate Case
207317bf653SNate Case		i2c@3000 {
208317bf653SNate Case			#address-cells = <1>;
209317bf653SNate Case			#size-cells = <0>;
210317bf653SNate Case			cell-index = <0>;
211317bf653SNate Case			compatible = "fsl-i2c";
212317bf653SNate Case			reg = <0x3000 0x100>;
213317bf653SNate Case			interrupts = <43 2>;
214317bf653SNate Case			interrupt-parent = <&mpic>;
215317bf653SNate Case			dfsrr;
216317bf653SNate Case
217317bf653SNate Case			temp-sensor@48 {
218317bf653SNate Case				compatible = "dallas,ds1631", "dallas,ds1621";
219317bf653SNate Case				reg = <0x48>;
220317bf653SNate Case			};
221317bf653SNate Case
222317bf653SNate Case			temp-sensor@4c {
223317bf653SNate Case				compatible = "adi,adt7461";
224317bf653SNate Case				reg = <0x4c>;
225317bf653SNate Case			};
226317bf653SNate Case
227317bf653SNate Case			cpu-supervisor@51 {
228317bf653SNate Case				compatible = "dallas,ds4510";
229317bf653SNate Case				reg = <0x51>;
230317bf653SNate Case			};
231317bf653SNate Case
232317bf653SNate Case			eeprom@54 {
233317bf653SNate Case				compatible = "atmel,at24c128b";
234317bf653SNate Case				reg = <0x54>;
235317bf653SNate Case			};
236317bf653SNate Case
237317bf653SNate Case			rtc@68 {
2385edc2aaeSStefan Agner				compatible = "st,m41t00",
239317bf653SNate Case				             "dallas,ds1338";
240317bf653SNate Case				reg = <0x68>;
241317bf653SNate Case			};
242317bf653SNate Case
243317bf653SNate Case			pcie-switch@6a {
244317bf653SNate Case				compatible = "plx,pex8648";
245317bf653SNate Case				reg = <0x6a>;
246317bf653SNate Case			};
247317bf653SNate Case
248317bf653SNate Case			/* On-board signals for VID, flash, serial */
249317bf653SNate Case			gpio1: gpio@18 {
250317bf653SNate Case				compatible = "nxp,pca9557";
251317bf653SNate Case				reg = <0x18>;
252317bf653SNate Case				#gpio-cells = <2>;
253317bf653SNate Case				gpio-controller;
254317bf653SNate Case				polarity = <0x00>;
255317bf653SNate Case			};
256317bf653SNate Case
257317bf653SNate Case			/* PMC0/XMC0 signals */
258317bf653SNate Case			gpio2: gpio@1c {
259317bf653SNate Case				compatible = "nxp,pca9557";
260317bf653SNate Case				reg = <0x1c>;
261317bf653SNate Case				#gpio-cells = <2>;
262317bf653SNate Case				gpio-controller;
263317bf653SNate Case				polarity = <0x00>;
264317bf653SNate Case			};
265317bf653SNate Case
266317bf653SNate Case			/* PMC1/XMC1 signals */
267317bf653SNate Case			gpio3: gpio@1d {
268317bf653SNate Case				compatible = "nxp,pca9557";
269317bf653SNate Case				reg = <0x1d>;
270317bf653SNate Case				#gpio-cells = <2>;
271317bf653SNate Case				gpio-controller;
272317bf653SNate Case				polarity = <0x00>;
273317bf653SNate Case			};
274317bf653SNate Case
275317bf653SNate Case			/* CompactPCI signals (sysen, GA[4:0]) */
276317bf653SNate Case			gpio4: gpio@1e {
277317bf653SNate Case				compatible = "nxp,pca9557";
278317bf653SNate Case				reg = <0x1e>;
279317bf653SNate Case				#gpio-cells = <2>;
280317bf653SNate Case				gpio-controller;
281317bf653SNate Case				polarity = <0x00>;
282317bf653SNate Case			};
283317bf653SNate Case
284317bf653SNate Case			/* CompactPCI J5 GPIO and FAL/DEG/PRST */
285317bf653SNate Case			gpio5: gpio@1f {
286317bf653SNate Case				compatible = "nxp,pca9557";
287317bf653SNate Case				reg = <0x1f>;
288317bf653SNate Case				#gpio-cells = <2>;
289317bf653SNate Case				gpio-controller;
290317bf653SNate Case				polarity = <0x00>;
291317bf653SNate Case			};
292317bf653SNate Case		};
293317bf653SNate Case
294317bf653SNate Case		i2c@3100 {
295317bf653SNate Case			#address-cells = <1>;
296317bf653SNate Case			#size-cells = <0>;
297317bf653SNate Case			cell-index = <1>;
298317bf653SNate Case			compatible = "fsl-i2c";
299317bf653SNate Case			reg = <0x3100 0x100>;
300317bf653SNate Case			interrupts = <43 2>;
301317bf653SNate Case			interrupt-parent = <&mpic>;
302317bf653SNate Case			dfsrr;
303317bf653SNate Case		};
304317bf653SNate Case
305317bf653SNate Case		dma@c300 {
306317bf653SNate Case			#address-cells = <1>;
307317bf653SNate Case			#size-cells = <1>;
308317bf653SNate Case			compatible = "fsl,mpc8572-dma", "fsl,eloplus-dma";
309317bf653SNate Case			reg = <0xc300 0x4>;
310317bf653SNate Case			ranges = <0x0 0xc100 0x200>;
311317bf653SNate Case			cell-index = <1>;
312317bf653SNate Case			dma-channel@0 {
313317bf653SNate Case				compatible = "fsl,mpc8572-dma-channel",
314317bf653SNate Case						"fsl,eloplus-dma-channel";
315317bf653SNate Case				reg = <0x0 0x80>;
316317bf653SNate Case				cell-index = <0>;
317317bf653SNate Case				interrupt-parent = <&mpic>;
318317bf653SNate Case				interrupts = <76 2>;
319317bf653SNate Case			};
320317bf653SNate Case			dma-channel@80 {
321317bf653SNate Case				compatible = "fsl,mpc8572-dma-channel",
322317bf653SNate Case						"fsl,eloplus-dma-channel";
323317bf653SNate Case				reg = <0x80 0x80>;
324317bf653SNate Case				cell-index = <1>;
325317bf653SNate Case				interrupt-parent = <&mpic>;
326317bf653SNate Case				interrupts = <77 2>;
327317bf653SNate Case			};
328317bf653SNate Case			dma-channel@100 {
329317bf653SNate Case				compatible = "fsl,mpc8572-dma-channel",
330317bf653SNate Case						"fsl,eloplus-dma-channel";
331317bf653SNate Case				reg = <0x100 0x80>;
332317bf653SNate Case				cell-index = <2>;
333317bf653SNate Case				interrupt-parent = <&mpic>;
334317bf653SNate Case				interrupts = <78 2>;
335317bf653SNate Case			};
336317bf653SNate Case			dma-channel@180 {
337317bf653SNate Case				compatible = "fsl,mpc8572-dma-channel",
338317bf653SNate Case						"fsl,eloplus-dma-channel";
339317bf653SNate Case				reg = <0x180 0x80>;
340317bf653SNate Case				cell-index = <3>;
341317bf653SNate Case				interrupt-parent = <&mpic>;
342317bf653SNate Case				interrupts = <79 2>;
343317bf653SNate Case			};
344317bf653SNate Case		};
345317bf653SNate Case
346317bf653SNate Case		dma@21300 {
347317bf653SNate Case			#address-cells = <1>;
348317bf653SNate Case			#size-cells = <1>;
349317bf653SNate Case			compatible = "fsl,mpc8572-dma", "fsl,eloplus-dma";
350317bf653SNate Case			reg = <0x21300 0x4>;
351317bf653SNate Case			ranges = <0x0 0x21100 0x200>;
352317bf653SNate Case			cell-index = <0>;
353317bf653SNate Case			dma-channel@0 {
354317bf653SNate Case				compatible = "fsl,mpc8572-dma-channel",
355317bf653SNate Case						"fsl,eloplus-dma-channel";
356317bf653SNate Case				reg = <0x0 0x80>;
357317bf653SNate Case				cell-index = <0>;
358317bf653SNate Case				interrupt-parent = <&mpic>;
359317bf653SNate Case				interrupts = <20 2>;
360317bf653SNate Case			};
361317bf653SNate Case			dma-channel@80 {
362317bf653SNate Case				compatible = "fsl,mpc8572-dma-channel",
363317bf653SNate Case						"fsl,eloplus-dma-channel";
364317bf653SNate Case				reg = <0x80 0x80>;
365317bf653SNate Case				cell-index = <1>;
366317bf653SNate Case				interrupt-parent = <&mpic>;
367317bf653SNate Case				interrupts = <21 2>;
368317bf653SNate Case			};
369317bf653SNate Case			dma-channel@100 {
370317bf653SNate Case				compatible = "fsl,mpc8572-dma-channel",
371317bf653SNate Case						"fsl,eloplus-dma-channel";
372317bf653SNate Case				reg = <0x100 0x80>;
373317bf653SNate Case				cell-index = <2>;
374317bf653SNate Case				interrupt-parent = <&mpic>;
375317bf653SNate Case				interrupts = <22 2>;
376317bf653SNate Case			};
377317bf653SNate Case			dma-channel@180 {
378317bf653SNate Case				compatible = "fsl,mpc8572-dma-channel",
379317bf653SNate Case						"fsl,eloplus-dma-channel";
380317bf653SNate Case				reg = <0x180 0x80>;
381317bf653SNate Case				cell-index = <3>;
382317bf653SNate Case				interrupt-parent = <&mpic>;
383317bf653SNate Case				interrupts = <23 2>;
384317bf653SNate Case			};
385317bf653SNate Case		};
386317bf653SNate Case
387317bf653SNate Case		/* eTSEC 1 front panel 0 */
388317bf653SNate Case		enet0: ethernet@24000 {
389317bf653SNate Case			#address-cells = <1>;
390317bf653SNate Case			#size-cells = <1>;
391317bf653SNate Case			cell-index = <0>;
392317bf653SNate Case			device_type = "network";
393317bf653SNate Case			model = "eTSEC";
394317bf653SNate Case			compatible = "gianfar";
395317bf653SNate Case			reg = <0x24000 0x1000>;
396317bf653SNate Case			ranges = <0x0 0x24000 0x1000>;
397317bf653SNate Case			local-mac-address = [ 00 00 00 00 00 00 ];
398317bf653SNate Case			interrupts = <29 2 30 2 34 2>;
399317bf653SNate Case			interrupt-parent = <&mpic>;
400317bf653SNate Case			tbi-handle = <&tbi0>;
401317bf653SNate Case			phy-handle = <&phy0>;
402317bf653SNate Case			phy-connection-type = "sgmii";
403317bf653SNate Case
404317bf653SNate Case			mdio@520 {
405317bf653SNate Case				#address-cells = <1>;
406317bf653SNate Case				#size-cells = <0>;
407317bf653SNate Case				compatible = "fsl,gianfar-mdio";
408317bf653SNate Case				reg = <0x520 0x20>;
409317bf653SNate Case
410317bf653SNate Case				phy0: ethernet-phy@1 {
411317bf653SNate Case					interrupt-parent = <&mpic>;
412317bf653SNate Case					interrupts = <4 1>;
413317bf653SNate Case					reg = <0x1>;
414317bf653SNate Case				};
415317bf653SNate Case				phy1: ethernet-phy@2 {
416317bf653SNate Case					interrupt-parent = <&mpic>;
417317bf653SNate Case					interrupts = <4 1>;
418317bf653SNate Case					reg = <0x2>;
419317bf653SNate Case				};
420317bf653SNate Case				phy2: ethernet-phy@3 {
421317bf653SNate Case					interrupt-parent = <&mpic>;
422317bf653SNate Case					interrupts = <5 1>;
423317bf653SNate Case					reg = <0x3>;
424317bf653SNate Case				};
425317bf653SNate Case				phy3: ethernet-phy@4 {
426317bf653SNate Case					interrupt-parent = <&mpic>;
427317bf653SNate Case					interrupts = <5 1>;
428317bf653SNate Case					reg = <0x4>;
429317bf653SNate Case				};
430317bf653SNate Case				tbi0: tbi-phy@11 {
431317bf653SNate Case					reg = <0x11>;
432317bf653SNate Case					device_type = "tbi-phy";
433317bf653SNate Case				};
434317bf653SNate Case			};
435317bf653SNate Case		};
436317bf653SNate Case
437317bf653SNate Case		/* eTSEC 2 front panel 1 */
438317bf653SNate Case		enet1: ethernet@25000 {
439317bf653SNate Case			#address-cells = <1>;
440317bf653SNate Case			#size-cells = <1>;
441317bf653SNate Case			cell-index = <1>;
442317bf653SNate Case			device_type = "network";
443317bf653SNate Case			model = "eTSEC";
444317bf653SNate Case			compatible = "gianfar";
445317bf653SNate Case			reg = <0x25000 0x1000>;
446317bf653SNate Case			ranges = <0x0 0x25000 0x1000>;
447317bf653SNate Case			local-mac-address = [ 00 00 00 00 00 00 ];
448317bf653SNate Case			interrupts = <35 2 36 2 40 2>;
449317bf653SNate Case			interrupt-parent = <&mpic>;
450317bf653SNate Case			tbi-handle = <&tbi1>;
451317bf653SNate Case			phy-handle = <&phy1>;
452317bf653SNate Case			phy-connection-type = "sgmii";
453317bf653SNate Case
454317bf653SNate Case			mdio@520 {
455317bf653SNate Case				#address-cells = <1>;
456317bf653SNate Case				#size-cells = <0>;
457317bf653SNate Case				compatible = "fsl,gianfar-tbi";
458317bf653SNate Case				reg = <0x520 0x20>;
459317bf653SNate Case
460317bf653SNate Case				tbi1: tbi-phy@11 {
461317bf653SNate Case					reg = <0x11>;
462317bf653SNate Case					device_type = "tbi-phy";
463317bf653SNate Case				};
464317bf653SNate Case			};
465317bf653SNate Case		};
466317bf653SNate Case
467317bf653SNate Case		/* eTSEC 3 PICMG2.16 backplane port 0 */
468317bf653SNate Case		enet2: ethernet@26000 {
469317bf653SNate Case			#address-cells = <1>;
470317bf653SNate Case			#size-cells = <1>;
471317bf653SNate Case			cell-index = <2>;
472317bf653SNate Case			device_type = "network";
473317bf653SNate Case			model = "eTSEC";
474317bf653SNate Case			compatible = "gianfar";
475317bf653SNate Case			reg = <0x26000 0x1000>;
476317bf653SNate Case			ranges = <0x0 0x26000 0x1000>;
477317bf653SNate Case			local-mac-address = [ 00 00 00 00 00 00 ];
478317bf653SNate Case			interrupts = <31 2 32 2 33 2>;
479317bf653SNate Case			interrupt-parent = <&mpic>;
480317bf653SNate Case			tbi-handle = <&tbi2>;
481317bf653SNate Case			phy-handle = <&phy2>;
482317bf653SNate Case			phy-connection-type = "sgmii";
483317bf653SNate Case
484317bf653SNate Case			mdio@520 {
485317bf653SNate Case				#address-cells = <1>;
486317bf653SNate Case				#size-cells = <0>;
487317bf653SNate Case				compatible = "fsl,gianfar-tbi";
488317bf653SNate Case				reg = <0x520 0x20>;
489317bf653SNate Case
490317bf653SNate Case				tbi2: tbi-phy@11 {
491317bf653SNate Case					reg = <0x11>;
492317bf653SNate Case					device_type = "tbi-phy";
493317bf653SNate Case				};
494317bf653SNate Case			};
495317bf653SNate Case		};
496317bf653SNate Case
497317bf653SNate Case		/* eTSEC 4 PICMG2.16 backplane port 1 */
498317bf653SNate Case		enet3: ethernet@27000 {
499317bf653SNate Case			#address-cells = <1>;
500317bf653SNate Case			#size-cells = <1>;
501317bf653SNate Case			cell-index = <3>;
502317bf653SNate Case			device_type = "network";
503317bf653SNate Case			model = "eTSEC";
504317bf653SNate Case			compatible = "gianfar";
505317bf653SNate Case			reg = <0x27000 0x1000>;
506317bf653SNate Case			ranges = <0x0 0x27000 0x1000>;
507317bf653SNate Case			local-mac-address = [ 00 00 00 00 00 00 ];
508317bf653SNate Case			interrupts = <37 2 38 2 39 2>;
509317bf653SNate Case			interrupt-parent = <&mpic>;
510317bf653SNate Case			tbi-handle = <&tbi3>;
511317bf653SNate Case			phy-handle = <&phy3>;
512317bf653SNate Case			phy-connection-type = "sgmii";
513317bf653SNate Case
514317bf653SNate Case			mdio@520 {
515317bf653SNate Case				#address-cells = <1>;
516317bf653SNate Case				#size-cells = <0>;
517317bf653SNate Case				compatible = "fsl,gianfar-tbi";
518317bf653SNate Case				reg = <0x520 0x20>;
519317bf653SNate Case
520317bf653SNate Case				tbi3: tbi-phy@11 {
521317bf653SNate Case					reg = <0x11>;
522317bf653SNate Case					device_type = "tbi-phy";
523317bf653SNate Case				};
524317bf653SNate Case			};
525317bf653SNate Case		};
526317bf653SNate Case
527317bf653SNate Case		/* UART0 */
528317bf653SNate Case		serial0: serial@4500 {
529317bf653SNate Case			cell-index = <0>;
530317bf653SNate Case			device_type = "serial";
531f706bed1SKumar Gala			compatible = "fsl,ns16550", "ns16550";
532317bf653SNate Case			reg = <0x4500 0x100>;
533317bf653SNate Case			clock-frequency = <0>;
534317bf653SNate Case			interrupts = <42 2>;
535317bf653SNate Case			interrupt-parent = <&mpic>;
536317bf653SNate Case		};
537317bf653SNate Case
538317bf653SNate Case		/* UART1 */
539317bf653SNate Case		serial1: serial@4600 {
540317bf653SNate Case			cell-index = <1>;
541317bf653SNate Case			device_type = "serial";
542f706bed1SKumar Gala			compatible = "fsl,ns16550", "ns16550";
543317bf653SNate Case			reg = <0x4600 0x100>;
544317bf653SNate Case			clock-frequency = <0>;
545317bf653SNate Case			interrupts = <42 2>;
546317bf653SNate Case			interrupt-parent = <&mpic>;
547317bf653SNate Case		};
548317bf653SNate Case
549317bf653SNate Case		global-utilities@e0000 {	//global utilities block
550317bf653SNate Case			compatible = "fsl,mpc8572-guts";
551317bf653SNate Case			reg = <0xe0000 0x1000>;
552317bf653SNate Case			fsl,has-rstcr;
553317bf653SNate Case		};
554317bf653SNate Case
555317bf653SNate Case		msi@41600 {
556317bf653SNate Case			compatible = "fsl,mpc8572-msi", "fsl,mpic-msi";
557317bf653SNate Case			reg = <0x41600 0x80>;
558317bf653SNate Case			msi-available-ranges = <0 0x100>;
559317bf653SNate Case			interrupts = <
560317bf653SNate Case				0xe0 0
561317bf653SNate Case				0xe1 0
562317bf653SNate Case				0xe2 0
563317bf653SNate Case				0xe3 0
564317bf653SNate Case				0xe4 0
565317bf653SNate Case				0xe5 0
566317bf653SNate Case				0xe6 0
567317bf653SNate Case				0xe7 0>;
568317bf653SNate Case			interrupt-parent = <&mpic>;
569317bf653SNate Case		};
570317bf653SNate Case
571317bf653SNate Case		crypto@30000 {
572317bf653SNate Case			compatible = "fsl,sec3.0", "fsl,sec2.4", "fsl,sec2.2",
573317bf653SNate Case				     "fsl,sec2.1", "fsl,sec2.0";
574317bf653SNate Case			reg = <0x30000 0x10000>;
575317bf653SNate Case			interrupts = <45 2 58 2>;
576317bf653SNate Case			interrupt-parent = <&mpic>;
577317bf653SNate Case			fsl,num-channels = <4>;
578317bf653SNate Case			fsl,channel-fifo-len = <24>;
579317bf653SNate Case			fsl,exec-units-mask = <0x9fe>;
580317bf653SNate Case			fsl,descriptor-types-mask = <0x3ab0ebf>;
581317bf653SNate Case		};
582317bf653SNate Case
583317bf653SNate Case		mpic: pic@40000 {
584317bf653SNate Case			interrupt-controller;
585317bf653SNate Case			#address-cells = <0>;
586317bf653SNate Case			#interrupt-cells = <2>;
587317bf653SNate Case			reg = <0x40000 0x40000>;
588317bf653SNate Case			compatible = "chrp,open-pic";
589317bf653SNate Case			device_type = "open-pic";
590317bf653SNate Case		};
591317bf653SNate Case
592317bf653SNate Case		gpio0: gpio@f000 {
593317bf653SNate Case			compatible = "fsl,mpc8572-gpio";
594317bf653SNate Case			reg = <0xf000 0x1000>;
595317bf653SNate Case			interrupts = <47 2>;
596317bf653SNate Case			interrupt-parent = <&mpic>;
597317bf653SNate Case			#gpio-cells = <2>;
598317bf653SNate Case			gpio-controller;
599317bf653SNate Case		};
600317bf653SNate Case
601317bf653SNate Case		gpio-leds {
602317bf653SNate Case			compatible = "gpio-leds";
603317bf653SNate Case
604317bf653SNate Case			heartbeat {
605317bf653SNate Case				label = "Heartbeat";
606317bf653SNate Case				gpios = <&gpio0 4 1>;
607317bf653SNate Case				linux,default-trigger = "heartbeat";
608317bf653SNate Case			};
609317bf653SNate Case
610317bf653SNate Case			yellow {
611317bf653SNate Case				label = "Yellow";
612317bf653SNate Case				gpios = <&gpio0 5 1>;
613317bf653SNate Case			};
614317bf653SNate Case
615317bf653SNate Case			red {
616317bf653SNate Case				label = "Red";
617317bf653SNate Case				gpios = <&gpio0 6 1>;
618317bf653SNate Case			};
619317bf653SNate Case
620317bf653SNate Case			green {
621317bf653SNate Case				label = "Green";
622317bf653SNate Case				gpios = <&gpio0 7 1>;
623317bf653SNate Case			};
624317bf653SNate Case		};
625317bf653SNate Case
626317bf653SNate Case		/* PME (pattern-matcher) */
627317bf653SNate Case		pme@10000 {
628317bf653SNate Case			compatible = "fsl,mpc8572-pme", "pme8572";
629317bf653SNate Case			reg = <0x10000 0x5000>;
630317bf653SNate Case			interrupts = <57 2 64 2 65 2 66 2 67 2>;
631317bf653SNate Case			interrupt-parent = <&mpic>;
632317bf653SNate Case		};
633317bf653SNate Case
634317bf653SNate Case		tlu@2f000 {
635317bf653SNate Case			compatible = "fsl,mpc8572-tlu", "fsl_tlu";
636317bf653SNate Case			reg = <0x2f000 0x1000>;
63753567cf3SAdam Borowski			interrupts = <61 2>;
638317bf653SNate Case			interrupt-parent = <&mpic>;
639317bf653SNate Case		};
640317bf653SNate Case
641317bf653SNate Case		tlu@15000 {
642317bf653SNate Case			compatible = "fsl,mpc8572-tlu", "fsl_tlu";
643317bf653SNate Case			reg = <0x15000 0x1000>;
64453567cf3SAdam Borowski			interrupts = <75 2>;
645317bf653SNate Case			interrupt-parent = <&mpic>;
646317bf653SNate Case		};
647317bf653SNate Case	};
648317bf653SNate Case
649317bf653SNate Case	/*
650317bf653SNate Case	 * PCI Express controller 3 @ ef008000 is not used.
651317bf653SNate Case	 * This would have been pci0 on other mpc85xx platforms.
652317bf653SNate Case	 *
653317bf653SNate Case	 * PCI Express controller 2 @ ef009000 is not used.
654317bf653SNate Case	 * This would have been pci1 on other mpc85xx platforms.
655317bf653SNate Case	 */
656317bf653SNate Case
657317bf653SNate Case	/* PCI Express controller 1, wired to PEX8648 PCIe switch */
658317bf653SNate Case	pci2: pcie@ef00a000 {
659317bf653SNate Case		compatible = "fsl,mpc8548-pcie";
660317bf653SNate Case		device_type = "pci";
661317bf653SNate Case		#interrupt-cells = <1>;
662317bf653SNate Case		#size-cells = <2>;
663317bf653SNate Case		#address-cells = <3>;
664317bf653SNate Case		reg = <0 0xef00a000 0 0x1000>;
665317bf653SNate Case		bus-range = <0 255>;
666317bf653SNate Case		ranges = <0x2000000 0x0 0x80000000 0 0x80000000 0x0 0x40000000
667317bf653SNate Case			  0x1000000 0x0 0x00000000 0 0xe8000000 0x0 0x10000>;
668317bf653SNate Case		clock-frequency = <33333333>;
669317bf653SNate Case		interrupt-parent = <&mpic>;
670317bf653SNate Case		interrupts = <26 2>;
671317bf653SNate Case		interrupt-map-mask = <0xf800 0x0 0x0 0x7>;
672317bf653SNate Case		interrupt-map = <
673317bf653SNate Case			/* IDSEL 0x0 */
674317bf653SNate Case			0x0 0x0 0x0 0x1 &mpic 0x0 0x1
675317bf653SNate Case			0x0 0x0 0x0 0x2 &mpic 0x1 0x1
676317bf653SNate Case			0x0 0x0 0x0 0x3 &mpic 0x2 0x1
677317bf653SNate Case			0x0 0x0 0x0 0x4 &mpic 0x3 0x1
678317bf653SNate Case			>;
679317bf653SNate Case		pcie@0 {
680317bf653SNate Case			reg = <0x0 0x0 0x0 0x0 0x0>;
681317bf653SNate Case			#size-cells = <2>;
682317bf653SNate Case			#address-cells = <3>;
683317bf653SNate Case			device_type = "pci";
684317bf653SNate Case			ranges = <0x2000000 0x0 0x80000000
685317bf653SNate Case				  0x2000000 0x0 0x80000000
686317bf653SNate Case				  0x0 0x40000000
687317bf653SNate Case
688317bf653SNate Case				  0x1000000 0x0 0x0
689317bf653SNate Case				  0x1000000 0x0 0x0
690317bf653SNate Case				  0x0 0x100000>;
691317bf653SNate Case		};
692317bf653SNate Case	};
693317bf653SNate Case};
694