1b359049fSKim Phillips/*
2b359049fSKim Phillips * MPC8313E RDB Device Tree Source
3b359049fSKim Phillips *
4b359049fSKim Phillips * Copyright 2005, 2006, 2007 Freescale Semiconductor Inc.
5b359049fSKim Phillips *
6b359049fSKim Phillips * This program is free software; you can redistribute  it and/or modify it
7b359049fSKim Phillips * under  the terms of  the GNU General  Public License as published by the
8b359049fSKim Phillips * Free Software Foundation;  either version 2 of the  License, or (at your
9b359049fSKim Phillips * option) any later version.
10b359049fSKim Phillips */
11b359049fSKim Phillips
12b359049fSKim Phillips/ {
13b359049fSKim Phillips	model = "MPC8313ERDB";
14d71a1dc6SKumar Gala	compatible = "MPC8313ERDB", "MPC831xRDB", "MPC83xxRDB";
15b359049fSKim Phillips	#address-cells = <1>;
16b359049fSKim Phillips	#size-cells = <1>;
17b359049fSKim Phillips
18b359049fSKim Phillips	cpus {
19b359049fSKim Phillips		#address-cells = <1>;
20b359049fSKim Phillips		#size-cells = <0>;
21b359049fSKim Phillips
22b359049fSKim Phillips		PowerPC,8313@0 {
23b359049fSKim Phillips			device_type = "cpu";
24b359049fSKim Phillips			reg = <0>;
25b359049fSKim Phillips			d-cache-line-size = <20>;	// 32 bytes
26b359049fSKim Phillips			i-cache-line-size = <20>;	// 32 bytes
27b359049fSKim Phillips			d-cache-size = <4000>;		// L1, 16K
28b359049fSKim Phillips			i-cache-size = <4000>;		// L1, 16K
29b359049fSKim Phillips			timebase-frequency = <0>;	// from bootloader
30b359049fSKim Phillips			bus-frequency = <0>;		// from bootloader
31b359049fSKim Phillips			clock-frequency = <0>;		// from bootloader
32b359049fSKim Phillips		};
33b359049fSKim Phillips	};
34b359049fSKim Phillips
35b359049fSKim Phillips	memory {
36b359049fSKim Phillips		device_type = "memory";
37b359049fSKim Phillips		reg = <00000000 08000000>;	// 128MB at 0
38b359049fSKim Phillips	};
39b359049fSKim Phillips
40b359049fSKim Phillips	soc8313@e0000000 {
41b359049fSKim Phillips		#address-cells = <1>;
42b359049fSKim Phillips		#size-cells = <1>;
43b359049fSKim Phillips		device_type = "soc";
44b359049fSKim Phillips		ranges = <0 e0000000 00100000>;
45b359049fSKim Phillips		reg = <e0000000 00000200>;
46b359049fSKim Phillips		bus-frequency = <0>;
47b359049fSKim Phillips
48b359049fSKim Phillips		wdt@200 {
49b359049fSKim Phillips			device_type = "watchdog";
50b359049fSKim Phillips			compatible = "mpc83xx_wdt";
51b359049fSKim Phillips			reg = <200 100>;
52b359049fSKim Phillips		};
53b359049fSKim Phillips
54b359049fSKim Phillips		i2c@3000 {
55ec9686c4SKumar Gala			#address-cells = <1>;
56ec9686c4SKumar Gala			#size-cells = <0>;
57ec9686c4SKumar Gala			cell-index = <0>;
58b359049fSKim Phillips			compatible = "fsl-i2c";
59b359049fSKim Phillips			reg = <3000 100>;
60b359049fSKim Phillips			interrupts = <e 8>;
61d71a1dc6SKumar Gala			interrupt-parent = < &ipic >;
62b359049fSKim Phillips			dfsrr;
63b359049fSKim Phillips		};
64b359049fSKim Phillips
65b359049fSKim Phillips		i2c@3100 {
66ec9686c4SKumar Gala			#address-cells = <1>;
67ec9686c4SKumar Gala			#size-cells = <0>;
68ec9686c4SKumar Gala			cell-index = <1>;
69b359049fSKim Phillips			compatible = "fsl-i2c";
70b359049fSKim Phillips			reg = <3100 100>;
71b359049fSKim Phillips			interrupts = <f 8>;
72d71a1dc6SKumar Gala			interrupt-parent = < &ipic >;
73b359049fSKim Phillips			dfsrr;
74b359049fSKim Phillips		};
75b359049fSKim Phillips
76b359049fSKim Phillips		spi@7000 {
77b359049fSKim Phillips			device_type = "spi";
7833799e33SPeter Korsgaard			compatible = "fsl_spi";
79b359049fSKim Phillips			reg = <7000 1000>;
80b359049fSKim Phillips			interrupts = <10 8>;
81d71a1dc6SKumar Gala			interrupt-parent = < &ipic >;
8233799e33SPeter Korsgaard			mode = "cpu";
83b359049fSKim Phillips		};
84b359049fSKim Phillips
85b359049fSKim Phillips		/* phy type (ULPI, UTMI, UTMI_WIDE, SERIAL) */
86b359049fSKim Phillips		usb@23000 {
87b359049fSKim Phillips			device_type = "usb";
88b359049fSKim Phillips			compatible = "fsl-usb2-dr";
89b359049fSKim Phillips			reg = <23000 1000>;
90b359049fSKim Phillips			#address-cells = <1>;
91b359049fSKim Phillips			#size-cells = <0>;
92d71a1dc6SKumar Gala			interrupt-parent = < &ipic >;
93d71a1dc6SKumar Gala			interrupts = <26 8>;
94b359049fSKim Phillips			phy_type = "utmi_wide";
95b359049fSKim Phillips		};
96b359049fSKim Phillips
97b359049fSKim Phillips		mdio@24520 {
98b359049fSKim Phillips			#address-cells = <1>;
99b359049fSKim Phillips			#size-cells = <0>;
100e77b28ebSKumar Gala			compatible = "fsl,gianfar-mdio";
101e77b28ebSKumar Gala			reg = <24520 20>;
102d71a1dc6SKumar Gala			phy1: ethernet-phy@1 {
103d71a1dc6SKumar Gala				interrupt-parent = < &ipic >;
104d71a1dc6SKumar Gala				interrupts = <13 8>;
105b359049fSKim Phillips				reg = <1>;
106b359049fSKim Phillips				device_type = "ethernet-phy";
107b359049fSKim Phillips			};
108d71a1dc6SKumar Gala			phy4: ethernet-phy@4 {
109d71a1dc6SKumar Gala				interrupt-parent = < &ipic >;
110d71a1dc6SKumar Gala				interrupts = <14 8>;
111b359049fSKim Phillips				reg = <4>;
112b359049fSKim Phillips				device_type = "ethernet-phy";
113b359049fSKim Phillips			};
114b359049fSKim Phillips		};
115b359049fSKim Phillips
116e77b28ebSKumar Gala		enet0: ethernet@24000 {
117e77b28ebSKumar Gala			cell-index = <0>;
118b359049fSKim Phillips			device_type = "network";
119b359049fSKim Phillips			model = "eTSEC";
120b359049fSKim Phillips			compatible = "gianfar";
121b359049fSKim Phillips			reg = <24000 1000>;
122b359049fSKim Phillips			local-mac-address = [ 00 00 00 00 00 00 ];
123b359049fSKim Phillips			interrupts = <25 8 24 8 23 8>;
124d71a1dc6SKumar Gala			interrupt-parent = < &ipic >;
125d71a1dc6SKumar Gala			phy-handle = < &phy1 >;
126b359049fSKim Phillips		};
127b359049fSKim Phillips
128e77b28ebSKumar Gala		enet1: ethernet@25000 {
129e77b28ebSKumar Gala			cell-index = <1>;
130b359049fSKim Phillips			device_type = "network";
131b359049fSKim Phillips			model = "eTSEC";
132b359049fSKim Phillips			compatible = "gianfar";
133b359049fSKim Phillips			reg = <25000 1000>;
134b359049fSKim Phillips			local-mac-address = [ 00 00 00 00 00 00 ];
135b359049fSKim Phillips			interrupts = <22 8 21 8 20 8>;
136d71a1dc6SKumar Gala			interrupt-parent = < &ipic >;
137d71a1dc6SKumar Gala			phy-handle = < &phy4 >;
138b359049fSKim Phillips		};
139b359049fSKim Phillips
140b359049fSKim Phillips		serial@4500 {
141b359049fSKim Phillips			device_type = "serial";
142b359049fSKim Phillips			compatible = "ns16550";
143b359049fSKim Phillips			reg = <4500 100>;
144b359049fSKim Phillips			clock-frequency = <0>;
145b359049fSKim Phillips			interrupts = <9 8>;
146d71a1dc6SKumar Gala			interrupt-parent = < &ipic >;
147b359049fSKim Phillips		};
148b359049fSKim Phillips
149b359049fSKim Phillips		serial@4600 {
150b359049fSKim Phillips			device_type = "serial";
151b359049fSKim Phillips			compatible = "ns16550";
152b359049fSKim Phillips			reg = <4600 100>;
153b359049fSKim Phillips			clock-frequency = <0>;
154b359049fSKim Phillips			interrupts = <a 8>;
155d71a1dc6SKumar Gala			interrupt-parent = < &ipic >;
156b359049fSKim Phillips		};
157b359049fSKim Phillips
158b359049fSKim Phillips		crypto@30000 {
159b359049fSKim Phillips			device_type = "crypto";
160b359049fSKim Phillips			model = "SEC2";
161b359049fSKim Phillips			compatible = "talitos";
162b359049fSKim Phillips			reg = <30000 7000>;
163b359049fSKim Phillips			interrupts = <b 8>;
164d71a1dc6SKumar Gala			interrupt-parent = < &ipic >;
165b359049fSKim Phillips			/* Rev. 2.2 */
166b359049fSKim Phillips			num-channels = <1>;
167b359049fSKim Phillips			channel-fifo-len = <18>;
168b359049fSKim Phillips			exec-units-mask = <0000004c>;
169b359049fSKim Phillips			descriptor-types-mask = <0122003f>;
170b359049fSKim Phillips		};
171b359049fSKim Phillips
172b359049fSKim Phillips		/* IPIC
173b359049fSKim Phillips		 * interrupts cell = <intr #, sense>
174b359049fSKim Phillips		 * sense values match linux IORESOURCE_IRQ_* defines:
175b359049fSKim Phillips		 * sense == 8: Level, low assertion
176b359049fSKim Phillips		 * sense == 2: Edge, high-to-low change
177b359049fSKim Phillips		 */
178d71a1dc6SKumar Gala		ipic: pic@700 {
179b359049fSKim Phillips			interrupt-controller;
180b359049fSKim Phillips			#address-cells = <0>;
181b359049fSKim Phillips			#interrupt-cells = <2>;
182b359049fSKim Phillips			reg = <700 100>;
183b359049fSKim Phillips			device_type = "ipic";
184b359049fSKim Phillips		};
185b359049fSKim Phillips	};
1861b3c5cdaSKumar Gala
1871b3c5cdaSKumar Gala	pci@e0008500 {
1881b3c5cdaSKumar Gala		interrupt-map-mask = <f800 0 0 7>;
1891b3c5cdaSKumar Gala		interrupt-map = <
1901b3c5cdaSKumar Gala
1911b3c5cdaSKumar Gala				/* IDSEL 0x0E -mini PCI */
1921b3c5cdaSKumar Gala				 7000 0 0 1 &ipic 12 8
1931b3c5cdaSKumar Gala				 7000 0 0 2 &ipic 12 8
1941b3c5cdaSKumar Gala				 7000 0 0 3 &ipic 12 8
1951b3c5cdaSKumar Gala				 7000 0 0 4 &ipic 12 8
1961b3c5cdaSKumar Gala
1971b3c5cdaSKumar Gala				/* IDSEL 0x0F - PCI slot */
1981b3c5cdaSKumar Gala				 7800 0 0 1 &ipic 11 8
1991b3c5cdaSKumar Gala				 7800 0 0 2 &ipic 12 8
2001b3c5cdaSKumar Gala				 7800 0 0 3 &ipic 11 8
2011b3c5cdaSKumar Gala				 7800 0 0 4 &ipic 12 8>;
2021b3c5cdaSKumar Gala		interrupt-parent = < &ipic >;
2031b3c5cdaSKumar Gala		interrupts = <42 8>;
2041b3c5cdaSKumar Gala		bus-range = <0 0>;
2051b3c5cdaSKumar Gala		ranges = <02000000 0 90000000 90000000 0 10000000
2061b3c5cdaSKumar Gala			  42000000 0 80000000 80000000 0 10000000
2071b3c5cdaSKumar Gala			  01000000 0 00000000 e2000000 0 00100000>;
2081b3c5cdaSKumar Gala		clock-frequency = <3f940aa>;
2091b3c5cdaSKumar Gala		#interrupt-cells = <1>;
2101b3c5cdaSKumar Gala		#size-cells = <2>;
2111b3c5cdaSKumar Gala		#address-cells = <3>;
2121b3c5cdaSKumar Gala		reg = <e0008500 100>;
2131b3c5cdaSKumar Gala		compatible = "fsl,mpc8349-pci";
2141b3c5cdaSKumar Gala		device_type = "pci";
2151b3c5cdaSKumar Gala	};
216b359049fSKim Phillips};
217