1/*
2 * MPC866 ADS Device Tree Source
3 *
4 * Copyright 2006 MontaVista Software, Inc.
5 * Copyright 2008 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/dts-v1/;
14
15/ {
16	model = "MPC866ADS";
17	compatible = "fsl,mpc866ads";
18	#address-cells = <1>;
19	#size-cells = <1>;
20
21	cpus {
22		#address-cells = <1>;
23		#size-cells = <0>;
24
25		PowerPC,866@0 {
26			device_type = "cpu";
27			reg = <0x0>;
28			d-cache-line-size = <16>;	// 16 bytes
29			i-cache-line-size = <16>;	// 16 bytes
30			d-cache-size = <0x2000>;		// L1, 8K
31			i-cache-size = <0x4000>;		// L1, 16K
32			timebase-frequency = <0>;
33			bus-frequency = <0>;
34			clock-frequency = <0>;
35			interrupts = <15 2>;	// decrementer interrupt
36			interrupt-parent = <&PIC>;
37		};
38	};
39
40	memory {
41		device_type = "memory";
42		reg = <0x0 0x800000>;
43	};
44
45	localbus@ff000100 {
46		compatible = "fsl,mpc866-localbus", "fsl,pq1-localbus";
47		#address-cells = <2>;
48		#size-cells = <1>;
49		reg = <0xff000100 0x40>;
50
51		ranges = <
52			0x1 0x0 0xff080000 0x8000
53			0x5 0x0 0xff0a0000 0x8000
54		>;
55
56		board-control@1,0 {
57			reg = <0x1 0x0 0x20 0x5 0x300 0x4>;
58			compatible = "fsl,mpc866ads-bcsr";
59		};
60	};
61
62	soc@ff000000 {
63		#address-cells = <1>;
64		#size-cells = <1>;
65		device_type = "soc";
66		ranges = <0x0 0xff000000 0x100000>;
67		reg = <0xff000000 0x200>;
68		bus-frequency = <0>;
69
70		mdio@e00 {
71			compatible = "fsl,mpc866-fec-mdio", "fsl,pq1-fec-mdio";
72			reg = <0xe00 0x188>;
73			#address-cells = <1>;
74			#size-cells = <0>;
75			PHY: ethernet-phy@f {
76				reg = <0xf>;
77			};
78		};
79
80		ethernet@e00 {
81			device_type = "network";
82			compatible = "fsl,mpc866-fec-enet",
83			             "fsl,pq1-fec-enet";
84			reg = <0xe00 0x188>;
85			local-mac-address = [ 00 00 00 00 00 00 ];
86			interrupts = <3 1>;
87			interrupt-parent = <&PIC>;
88			phy-handle = <&PHY>;
89			linux,network-index = <0>;
90		};
91
92		PIC: pic@0 {
93			interrupt-controller;
94			#interrupt-cells = <2>;
95			reg = <0x0 0x24>;
96			compatible = "fsl,mpc866-pic", "fsl,pq1-pic";
97		};
98
99		cpm@9c0 {
100			#address-cells = <1>;
101			#size-cells = <1>;
102			compatible = "fsl,mpc866-cpm", "fsl,cpm1";
103			ranges;
104			reg = <0x9c0 0x40>;
105			brg-frequency = <0>;
106			interrupts = <0 2>;	// cpm error interrupt
107			interrupt-parent = <&CPM_PIC>;
108
109			muram@2000 {
110				#address-cells = <1>;
111				#size-cells = <1>;
112				ranges = <0x0 0x2000 0x2000>;
113
114				data@0 {
115					compatible = "fsl,cpm-muram-data";
116					reg = <0x0 0x1c00>;
117				};
118			};
119
120			brg@9f0 {
121				compatible = "fsl,mpc866-brg",
122					     "fsl,cpm1-brg",
123					     "fsl,cpm-brg";
124				reg = <0x9f0 0x10>;
125				clock-frequency = <0>;
126			};
127
128			CPM_PIC: pic@930 {
129				interrupt-controller;
130				#address-cells = <0>;
131				#interrupt-cells = <1>;
132				interrupts = <5 2 0 2>;
133				interrupt-parent = <&PIC>;
134				reg = <0x930 0x20>;
135				compatible = "fsl,mpc866-cpm-pic",
136				             "fsl,cpm1-pic";
137			};
138
139
140			serial@a80 {
141				device_type = "serial";
142				compatible = "fsl,mpc866-smc-uart",
143				             "fsl,cpm1-smc-uart";
144				reg = <0xa80 0x10 0x3e80 0x40>;
145				interrupts = <4>;
146				interrupt-parent = <&CPM_PIC>;
147				fsl,cpm-brg = <1>;
148				fsl,cpm-command = <0x90>;
149			};
150
151			serial@a90 {
152				device_type = "serial";
153				compatible = "fsl,mpc866-smc-uart",
154				             "fsl,cpm1-smc-uart";
155				reg = <0xa90 0x10 0x3f80 0x40>;
156				interrupts = <3>;
157				interrupt-parent = <&CPM_PIC>;
158				fsl,cpm-brg = <2>;
159				fsl,cpm-command = <0xd0>;
160			};
161
162			ethernet@a00 {
163				device_type = "network";
164				compatible = "fsl,mpc866-scc-enet",
165				             "fsl,cpm1-scc-enet";
166				reg = <0xa00 0x18 0x3c00 0x100>;
167				local-mac-address = [ 00 00 00 00 00 00 ];
168				interrupts = <30>;
169				interrupt-parent = <&CPM_PIC>;
170				fsl,cpm-command = <0000>;
171				linux,network-index = <1>;
172			};
173
174			i2c@860 {
175				compatible = "fsl,mpc866-i2c",
176					     "fsl,cpm1-i2c";
177				reg = <0x860 0x20 0x3c80 0x30>;
178				interrupts = <16>;
179				interrupt-parent = <&CPM_PIC>;
180				fsl,cpm-command = <0x10>;
181				#address-cells = <1>;
182				#size-cells = <0>;
183			};
184		};
185	};
186
187	chosen {
188		stdout-path = "/soc/cpm/serial@a80";
189	};
190};
191