1/*
2 * MPC8349E-mITX Device Tree Source
3 *
4 * Copyright 2006 Freescale Semiconductor Inc.
5 *
6 * This program is free software; you can redistribute it and/or modify it
7 * under the terms of the GNU General Public License as published by the
8 * Free Software Foundation; either version 2 of the License, or (at your
9 * option) any later version.
10 */
11/ {
12	model = "MPC8349EMITX";
13	compatible = "MPC834xMITX";
14	#address-cells = <1>;
15	#size-cells = <1>;
16
17	cpus {
18		#cpus = <1>;
19		#address-cells = <1>;
20		#size-cells = <0>;
21
22		PowerPC,8349@0 {
23			device_type = "cpu";
24			reg = <0>;
25			d-cache-line-size = <20>;
26			i-cache-line-size = <20>;
27			d-cache-size = <8000>;
28			i-cache-size = <8000>;
29			timebase-frequency = <0>;	// from bootloader
30			bus-frequency = <0>;		// from bootloader
31			clock-frequency = <0>;		// from bootloader
32			32-bit;
33		};
34	};
35
36	memory {
37		device_type = "memory";
38		reg = <00000000 10000000>;
39	};
40
41	soc8349@e0000000 {
42		#address-cells = <1>;
43		#size-cells = <1>;
44		#interrupt-cells = <2>;
45		device_type = "soc";
46		ranges = <0 e0000000 00100000>;
47		reg = <e0000000 00000200>;
48		bus-frequency = <0>;                    // from bootloader
49
50		wdt@200 {
51			device_type = "watchdog";
52			compatible = "mpc83xx_wdt";
53			reg = <200 100>;
54		};
55
56		i2c@3000 {
57			device_type = "i2c";
58			compatible = "fsl-i2c";
59			reg = <3000 100>;
60			interrupts = <e 8>;
61			interrupt-parent = <700>;
62			dfsrr;
63		};
64
65		i2c@3100 {
66			device_type = "i2c";
67			compatible = "fsl-i2c";
68			reg = <3100 100>;
69			interrupts = <f 8>;
70			interrupt-parent = <700>;
71			dfsrr;
72		};
73
74		spi@7000 {
75			device_type = "spi";
76			compatible = "mpc83xx_spi";
77			reg = <7000 1000>;
78			interrupts = <10 8>;
79			interrupt-parent = <700>;
80			mode = <0>;
81		};
82
83		usb@22000 {
84			device_type = "usb";
85			compatible = "fsl-usb2-mph";
86			reg = <22000 1000>;
87			#address-cells = <1>;
88			#size-cells = <0>;
89			interrupt-parent = <700>;
90			interrupts = <27 2>;
91			phy_type = "ulpi";
92			port1;
93		};
94
95		usb@23000 {
96			device_type = "usb";
97			compatible = "fsl-usb2-dr";
98			reg = <23000 1000>;
99			#address-cells = <1>;
100			#size-cells = <0>;
101			interrupt-parent = <700>;
102			interrupts = <26 2>;
103			phy_type = "ulpi";
104		};
105
106		mdio@24520 {
107			device_type = "mdio";
108			compatible = "gianfar";
109			reg = <24520 20>;
110			#address-cells = <1>;
111			#size-cells = <0>;
112			linux,phandle = <24520>;
113
114			/* Vitesse 8201 */
115			ethernet-phy@1c {
116				linux,phandle = <245201c>;
117				interrupt-parent = <700>;
118				interrupts = <12 2>;
119				reg = <1c>;
120				device_type = "ethernet-phy";
121			};
122
123			/* Vitesse 7385 */
124			ethernet-phy@1f {
125				linux,phandle = <245201f>;
126				interrupt-parent = <700>;
127				interrupts = <12 2>;
128				reg = <1f>;
129				device_type = "ethernet-phy";
130			};
131		};
132
133		ethernet@24000 {
134			device_type = "network";
135			model = "TSEC";
136			compatible = "gianfar";
137			reg = <24000 1000>;
138			address = [ 00 00 00 00 00 00 ];
139			local-mac-address = [ 00 00 00 00 00 00 ];
140			interrupts = <20 8 21 8 22 8>;
141			interrupt-parent = <700>;
142			phy-handle = <245201c>;
143		};
144
145		ethernet@25000 {
146			#address-cells = <1>;
147			#size-cells = <0>;
148			device_type = "network";
149			model = "TSEC";
150			compatible = "gianfar";
151			reg = <25000 1000>;
152			address = [ 00 00 00 00 00 00 ];
153			local-mac-address = [ 00 00 00 00 00 00 ];
154			interrupts = <23 8 24 8 25 8>;
155			interrupt-parent = <700>;
156			phy-handle = <245201f>;
157		};
158
159		serial@4500 {
160			device_type = "serial";
161			compatible = "ns16550";
162			reg = <4500 100>;
163			clock-frequency = <0>;		// from bootloader
164			interrupts = <9 8>;
165			interrupt-parent = <700>;
166		};
167
168		serial@4600 {
169			device_type = "serial";
170			compatible = "ns16550";
171			reg = <4600 100>;
172			clock-frequency = <0>;		// from bootloader
173			interrupts = <a 8>;
174			interrupt-parent = <700>;
175		};
176
177		pci@8500 {
178			interrupt-map-mask = <f800 0 0 7>;
179			interrupt-map = <
180					/* IDSEL 0x10 - SATA */
181					8000 0 0 1 700 16 8 /* SATA_INTA */
182					>;
183			interrupt-parent = <700>;
184			interrupts = <42 8>;
185			bus-range = <0 0>;
186			ranges = <42000000 0 80000000 80000000 0 10000000
187				  02000000 0 90000000 90000000 0 10000000
188				  01000000 0 00000000 e2000000 0 01000000>;
189			clock-frequency = <3f940aa>;
190			#interrupt-cells = <1>;
191			#size-cells = <2>;
192			#address-cells = <3>;
193			reg = <8500 100>;
194			compatible = "83xx";
195			device_type = "pci";
196		};
197
198		pci@8600 {
199			interrupt-map-mask = <f800 0 0 7>;
200			interrupt-map = <
201					/* IDSEL 0x0E - MiniPCI Slot */
202					7000 0 0 1 700 15 8 /* PCI_INTA */
203
204					/* IDSEL 0x0F - PCI Slot */
205					7800 0 0 1 700 14 8 /* PCI_INTA */
206					7800 0 0 2 700 15 8 /* PCI_INTB */
207					 >;
208			interrupt-parent = <700>;
209			interrupts = <43 8>;
210			bus-range = <1 1>;
211			ranges = <42000000 0 a0000000 a0000000 0 10000000
212				  02000000 0 b0000000 b0000000 0 10000000
213				  01000000 0 00000000 e3000000 0 01000000>;
214			clock-frequency = <3f940aa>;
215			#interrupt-cells = <1>;
216			#size-cells = <2>;
217			#address-cells = <3>;
218			reg = <8600 100>;
219			compatible = "83xx";
220			device_type = "pci";
221		};
222
223		crypto@30000 {
224			device_type = "crypto";
225			model = "SEC2";
226			compatible = "talitos";
227			reg = <30000 10000>;
228			interrupts = <b 8>;
229			interrupt-parent = <700>;
230			num-channels = <4>;
231			channel-fifo-len = <18>;
232			exec-units-mask = <0000007e>;
233			descriptor-types-mask = <01010ebf>;
234		};
235
236		pic@700 {
237			linux,phandle = <700>;
238			interrupt-controller;
239			#address-cells = <0>;
240			#interrupt-cells = <2>;
241			reg = <700 100>;
242			built-in;
243			device_type = "ipic";
244		};
245	};
246};
247