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