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 = "MPC8349EMITX", "MPC834xMITX", "MPC83xxMITX";
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 = < &ipic >;
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 = < &ipic >;
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 = < &ipic >;
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 = < &ipic >;
90			interrupts = <27 8>;
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 = < &ipic >;
102			interrupts = <26 8>;
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
113			/* Vitesse 8201 */
114			phy1c: ethernet-phy@1c {
115				interrupt-parent = < &ipic >;
116				interrupts = <12 8>;
117				reg = <1c>;
118				device_type = "ethernet-phy";
119			};
120
121			/* Vitesse 7385 */
122			phy1f: ethernet-phy@1f {
123				interrupt-parent = < &ipic >;
124				interrupts = <12 8>;
125				reg = <1f>;
126				device_type = "ethernet-phy";
127			};
128		};
129
130		ethernet@24000 {
131			device_type = "network";
132			model = "TSEC";
133			compatible = "gianfar";
134			reg = <24000 1000>;
135			address = [ 00 00 00 00 00 00 ];
136			local-mac-address = [ 00 00 00 00 00 00 ];
137			interrupts = <20 8 21 8 22 8>;
138			interrupt-parent = < &ipic >;
139			phy-handle = < &phy1c >;
140		};
141
142		ethernet@25000 {
143			#address-cells = <1>;
144			#size-cells = <0>;
145			device_type = "network";
146			model = "TSEC";
147			compatible = "gianfar";
148			reg = <25000 1000>;
149			address = [ 00 00 00 00 00 00 ];
150			local-mac-address = [ 00 00 00 00 00 00 ];
151			interrupts = <23 8 24 8 25 8>;
152			interrupt-parent = < &ipic >;
153			phy-handle = < &phy1f >;
154		};
155
156		serial@4500 {
157			device_type = "serial";
158			compatible = "ns16550";
159			reg = <4500 100>;
160			clock-frequency = <0>;		// from bootloader
161			interrupts = <9 8>;
162			interrupt-parent = < &ipic >;
163		};
164
165		serial@4600 {
166			device_type = "serial";
167			compatible = "ns16550";
168			reg = <4600 100>;
169			clock-frequency = <0>;		// from bootloader
170			interrupts = <a 8>;
171			interrupt-parent = < &ipic >;
172		};
173
174		pci@8500 {
175			interrupt-map-mask = <f800 0 0 7>;
176			interrupt-map = <
177					/* IDSEL 0x10 - SATA */
178					8000 0 0 1 &ipic 16 8 /* SATA_INTA */
179					>;
180			interrupt-parent = < &ipic >;
181			interrupts = <42 8>;
182			bus-range = <0 0>;
183			ranges = <42000000 0 80000000 80000000 0 10000000
184				  02000000 0 90000000 90000000 0 10000000
185				  01000000 0 00000000 e2000000 0 01000000>;
186			clock-frequency = <3f940aa>;
187			#interrupt-cells = <1>;
188			#size-cells = <2>;
189			#address-cells = <3>;
190			reg = <8500 100>;
191			compatible = "83xx";
192			device_type = "pci";
193		};
194
195		pci@8600 {
196			interrupt-map-mask = <f800 0 0 7>;
197			interrupt-map = <
198					/* IDSEL 0x0E - MiniPCI Slot */
199					7000 0 0 1 &ipic 15 8 /* PCI_INTA */
200
201					/* IDSEL 0x0F - PCI Slot */
202					7800 0 0 1 &ipic 14 8 /* PCI_INTA */
203					7800 0 0 2 &ipic 15 8 /* PCI_INTB */
204					 >;
205			interrupt-parent = < &ipic >;
206			interrupts = <43 8>;
207			bus-range = <1 1>;
208			ranges = <42000000 0 a0000000 a0000000 0 10000000
209				  02000000 0 b0000000 b0000000 0 10000000
210				  01000000 0 00000000 e3000000 0 01000000>;
211			clock-frequency = <3f940aa>;
212			#interrupt-cells = <1>;
213			#size-cells = <2>;
214			#address-cells = <3>;
215			reg = <8600 100>;
216			compatible = "83xx";
217			device_type = "pci";
218		};
219
220		crypto@30000 {
221			device_type = "crypto";
222			model = "SEC2";
223			compatible = "talitos";
224			reg = <30000 10000>;
225			interrupts = <b 8>;
226			interrupt-parent = < &ipic >;
227			num-channels = <4>;
228			channel-fifo-len = <18>;
229			exec-units-mask = <0000007e>;
230			descriptor-types-mask = <01010ebf>;
231		};
232
233		ipic: pic@700 {
234			interrupt-controller;
235			#address-cells = <0>;
236			#interrupt-cells = <2>;
237			reg = <700 100>;
238			built-in;
239			device_type = "ipic";
240		};
241	};
242};
243