1/*
2 * MPC885 ADS Device Tree Source
3 *
4 * Copyright 2006 MontaVista Software, Inc.
5 * Copyright 2007 Freescale Semiconductor, Inc.
6 *
7 * This program is free software; you can redistribute  it and/or modify it
8 * under  the terms of  the GNU General  Public License as published by the
9 * Free Software Foundation;  either version 2 of the  License, or (at your
10 * option) any later version.
11 */
12
13
14/ {
15	model = "MPC885ADS";
16	compatible = "fsl,mpc885ads";
17	#address-cells = <1>;
18	#size-cells = <1>;
19
20	cpus {
21		#address-cells = <1>;
22		#size-cells = <0>;
23
24		PowerPC,885@0 {
25			device_type = "cpu";
26			reg = <0>;
27			d-cache-line-size = <d#16>;
28			i-cache-line-size = <d#16>;
29			d-cache-size = <d#8192>;
30			i-cache-size = <d#8192>;
31			timebase-frequency = <0>;
32			bus-frequency = <0>;
33			clock-frequency = <0>;
34			interrupts = <f 2>;	// decrementer interrupt
35			interrupt-parent = <&PIC>;
36		};
37	};
38
39	memory {
40		device_type = "memory";
41		reg = <0 0>;
42	};
43
44	localbus@ff000100 {
45		compatible = "fsl,mpc885-localbus", "fsl,pq1-localbus";
46		#address-cells = <2>;
47		#size-cells = <1>;
48		reg = <ff000100 40>;
49
50		ranges = <
51			0 0 fe000000 00800000
52			1 0 ff080000 00008000
53			5 0 ff0a0000 00008000
54		>;
55
56		flash@0,0 {
57			compatible = "jedec-flash";
58			reg = <0 0 800000>;
59			bank-width = <4>;
60			device-width = <1>;
61		};
62
63		board-control@1,0 {
64			reg = <1 0 20 5 300 4>;
65			compatible = "fsl,mpc885ads-bcsr";
66		};
67	};
68
69	soc@ff000000 {
70		compatible = "fsl,mpc885", "fsl,pq1-soc";
71		#address-cells = <1>;
72		#size-cells = <1>;
73		device_type = "soc";
74		ranges = <0 ff000000 00004000>;
75		bus-frequency = <0>;
76
77		// Temporary -- will go away once kernel uses ranges for get_immrbase().
78		reg = <ff000000 4000>;
79
80		mdio@e00 {
81			compatible = "fsl,mpc885-fec-mdio", "fsl,pq1-fec-mdio";
82			reg = <e00 188>;
83			#address-cells = <1>;
84			#size-cells = <0>;
85
86			PHY0: ethernet-phy@0 {
87				reg = <0>;
88				device_type = "ethernet-phy";
89			};
90
91			PHY1: ethernet-phy@1 {
92				reg = <1>;
93				device_type = "ethernet-phy";
94			};
95
96			PHY2: ethernet-phy@2 {
97				reg = <2>;
98				device_type = "ethernet-phy";
99			};
100		};
101
102		ethernet@e00 {
103			device_type = "network";
104			compatible = "fsl,mpc885-fec-enet",
105			             "fsl,pq1-fec-enet";
106			reg = <e00 188>;
107			local-mac-address = [ 00 00 00 00 00 00 ];
108			interrupts = <3 1>;
109			interrupt-parent = <&PIC>;
110			phy-handle = <&PHY0>;
111			linux,network-index = <0>;
112		};
113
114		ethernet@1e00 {
115			device_type = "network";
116			compatible = "fsl,mpc885-fec-enet",
117			             "fsl,pq1-fec-enet";
118			reg = <1e00 188>;
119			local-mac-address = [ 00 00 00 00 00 00 ];
120			interrupts = <7 1>;
121			interrupt-parent = <&PIC>;
122			phy-handle = <&PHY1>;
123			linux,network-index = <1>;
124		};
125
126		PIC: interrupt-controller@0 {
127			interrupt-controller;
128			#interrupt-cells = <2>;
129			reg = <0 24>;
130			compatible = "fsl,mpc885-pic", "fsl,pq1-pic";
131		};
132
133		pcmcia@80 {
134			#address-cells = <3>;
135			#interrupt-cells = <1>;
136			#size-cells = <2>;
137			compatible = "fsl,pq-pcmcia";
138			device_type = "pcmcia";
139			reg = <80 80>;
140			interrupt-parent = <&PIC>;
141			interrupts = <d 1>;
142		};
143
144		cpm@9c0 {
145			#address-cells = <1>;
146			#size-cells = <1>;
147			compatible = "fsl,mpc885-cpm", "fsl,cpm1";
148			command-proc = <9c0>;
149			interrupts = <0>;	// cpm error interrupt
150			interrupt-parent = <&CPM_PIC>;
151			reg = <9c0 40 2000 1c00>;
152			ranges;
153
154			brg@9f0 {
155				compatible = "fsl,mpc885-brg",
156				             "fsl,cpm1-brg",
157				             "fsl,cpm-brg";
158				reg = <9f0 10>;
159			};
160
161			CPM_PIC: interrupt-controller@930 {
162				interrupt-controller;
163				#interrupt-cells = <1>;
164				interrupts = <5 2 0 2>;
165				interrupt-parent = <&PIC>;
166				reg = <930 20>;
167				compatible = "fsl,mpc885-cpm-pic",
168				             "fsl,cpm1-pic";
169			};
170
171			serial@a80 {
172				device_type = "serial";
173				compatible = "fsl,mpc885-smc-uart",
174				             "fsl,cpm1-smc-uart";
175				reg = <a80 10 3e80 40>;
176				interrupts = <4>;
177				interrupt-parent = <&CPM_PIC>;
178				fsl,cpm-brg = <1>;
179				fsl,cpm-command = <0090>;
180			};
181
182			serial@a90 {
183				device_type = "serial";
184				compatible = "fsl,mpc885-smc-uart",
185				             "fsl,cpm1-smc-uart";
186				reg = <a90 10 3f80 40>;
187				interrupts = <3>;
188				interrupt-parent = <&CPM_PIC>;
189				fsl,cpm-brg = <2>;
190				fsl,cpm-command = <00d0>;
191			};
192
193			ethernet@a40 {
194				device_type = "network";
195				compatible = "fsl,mpc885-scc-enet",
196				             "fsl,cpm1-scc-enet";
197				reg = <a40 18 3e00 100>;
198				local-mac-address = [ 00 00 00 00 00 00 ];
199				interrupts = <1c>;
200				interrupt-parent = <&CPM_PIC>;
201				phy-handle = <&PHY2>;
202				fsl,cpm-command = <0080>;
203				linux,network-index = <2>;
204			};
205		};
206	};
207
208	chosen {
209		linux,stdout-path = "/soc/cpm/serial@a80";
210	};
211};
212