1df34403dSVitaly Bordug/*
2df34403dSVitaly Bordug * MPC885 ADS Device Tree Source
3df34403dSVitaly Bordug *
4df34403dSVitaly Bordug * Copyright 2006 MontaVista Software, Inc.
5998c6103SKumar Gala * Copyright 2007,2008 Freescale Semiconductor, Inc.
6df34403dSVitaly Bordug *
7df34403dSVitaly Bordug * This program is free software; you can redistribute  it and/or modify it
8df34403dSVitaly Bordug * under  the terms of  the GNU General  Public License as published by the
9df34403dSVitaly Bordug * Free Software Foundation;  either version 2 of the  License, or (at your
10df34403dSVitaly Bordug * option) any later version.
11df34403dSVitaly Bordug */
12df34403dSVitaly Bordug
13998c6103SKumar Gala/dts-v1/;
14df34403dSVitaly Bordug
15df34403dSVitaly Bordug/ {
16df34403dSVitaly Bordug	model = "MPC885ADS";
1720906eceSScott Wood	compatible = "fsl,mpc885ads";
18df34403dSVitaly Bordug	#address-cells = <1>;
19df34403dSVitaly Bordug	#size-cells = <1>;
20df34403dSVitaly Bordug
21df34403dSVitaly Bordug	cpus {
22df34403dSVitaly Bordug		#address-cells = <1>;
23df34403dSVitaly Bordug		#size-cells = <0>;
24df34403dSVitaly Bordug
25df34403dSVitaly Bordug		PowerPC,885@0 {
26df34403dSVitaly Bordug			device_type = "cpu";
27998c6103SKumar Gala			reg = <0x0>;
28998c6103SKumar Gala			d-cache-line-size = <16>;
29998c6103SKumar Gala			i-cache-line-size = <16>;
30998c6103SKumar Gala			d-cache-size = <8192>;
31998c6103SKumar Gala			i-cache-size = <8192>;
32df34403dSVitaly Bordug			timebase-frequency = <0>;
33df34403dSVitaly Bordug			bus-frequency = <0>;
34df34403dSVitaly Bordug			clock-frequency = <0>;
35998c6103SKumar Gala			interrupts = <15 2>;	// decrementer interrupt
3620906eceSScott Wood			interrupt-parent = <&PIC>;
37df34403dSVitaly Bordug		};
38df34403dSVitaly Bordug	};
39df34403dSVitaly Bordug
40df34403dSVitaly Bordug	memory {
41df34403dSVitaly Bordug		device_type = "memory";
42998c6103SKumar Gala		reg = <0x0 0x0>;
43df34403dSVitaly Bordug	};
44df34403dSVitaly Bordug
4520906eceSScott Wood	localbus@ff000100 {
4620906eceSScott Wood		compatible = "fsl,mpc885-localbus", "fsl,pq1-localbus";
4720906eceSScott Wood		#address-cells = <2>;
4820906eceSScott Wood		#size-cells = <1>;
49998c6103SKumar Gala		reg = <0xff000100 0x40>;
5020906eceSScott Wood
5120906eceSScott Wood		ranges = <
52998c6103SKumar Gala			0x0 0x0 0xfe000000 0x800000
53998c6103SKumar Gala			0x1 0x0 0xff080000 0x8000
54998c6103SKumar Gala			0x5 0x0 0xff0a0000 0x8000
5520906eceSScott Wood		>;
5620906eceSScott Wood
5720906eceSScott Wood		flash@0,0 {
5820906eceSScott Wood			compatible = "jedec-flash";
59998c6103SKumar Gala			reg = <0x0 0x0 0x800000>;
6020906eceSScott Wood			bank-width = <4>;
6120906eceSScott Wood			device-width = <1>;
6220906eceSScott Wood		};
6320906eceSScott Wood
6420906eceSScott Wood		board-control@1,0 {
65998c6103SKumar Gala			reg = <0x1 0x0 0x20 0x5 0x300 0x4>;
6620906eceSScott Wood			compatible = "fsl,mpc885ads-bcsr";
6720906eceSScott Wood		};
6820906eceSScott Wood	};
6920906eceSScott Wood
7020906eceSScott Wood	soc@ff000000 {
7120906eceSScott Wood		compatible = "fsl,mpc885", "fsl,pq1-soc";
72df34403dSVitaly Bordug		#address-cells = <1>;
73df34403dSVitaly Bordug		#size-cells = <1>;
74df34403dSVitaly Bordug		device_type = "soc";
75998c6103SKumar Gala		ranges = <0x0 0xff000000 0x4000>;
76df34403dSVitaly Bordug		bus-frequency = <0>;
7720906eceSScott Wood
7820906eceSScott Wood		// Temporary -- will go away once kernel uses ranges for get_immrbase().
79998c6103SKumar Gala		reg = <0xff000000 0x4000>;
8020906eceSScott Wood
8120906eceSScott Wood		mdio@e00 {
8220906eceSScott Wood			compatible = "fsl,mpc885-fec-mdio", "fsl,pq1-fec-mdio";
83998c6103SKumar Gala			reg = <0xe00 0x188>;
84df34403dSVitaly Bordug			#address-cells = <1>;
85df34403dSVitaly Bordug			#size-cells = <0>;
8620906eceSScott Wood
8720906eceSScott Wood			PHY0: ethernet-phy@0 {
88998c6103SKumar Gala				reg = <0x0>;
89df34403dSVitaly Bordug				device_type = "ethernet-phy";
90df34403dSVitaly Bordug			};
9120906eceSScott Wood
9220906eceSScott Wood			PHY1: ethernet-phy@1 {
93998c6103SKumar Gala				reg = <0x1>;
94df34403dSVitaly Bordug				device_type = "ethernet-phy";
95df34403dSVitaly Bordug			};
9620906eceSScott Wood
9720906eceSScott Wood			PHY2: ethernet-phy@2 {
98998c6103SKumar Gala				reg = <0x2>;
99df34403dSVitaly Bordug				device_type = "ethernet-phy";
100df34403dSVitaly Bordug			};
101df34403dSVitaly Bordug		};
102df34403dSVitaly Bordug
10320906eceSScott Wood		ethernet@e00 {
104df34403dSVitaly Bordug			device_type = "network";
10520906eceSScott Wood			compatible = "fsl,mpc885-fec-enet",
10620906eceSScott Wood			             "fsl,pq1-fec-enet";
107998c6103SKumar Gala			reg = <0xe00 0x188>;
10820906eceSScott Wood			local-mac-address = [ 00 00 00 00 00 00 ];
109df34403dSVitaly Bordug			interrupts = <3 1>;
11020906eceSScott Wood			interrupt-parent = <&PIC>;
11120906eceSScott Wood			phy-handle = <&PHY0>;
11220906eceSScott Wood			linux,network-index = <0>;
113df34403dSVitaly Bordug		};
114df34403dSVitaly Bordug
11520906eceSScott Wood		ethernet@1e00 {
116df34403dSVitaly Bordug			device_type = "network";
11720906eceSScott Wood			compatible = "fsl,mpc885-fec-enet",
11820906eceSScott Wood			             "fsl,pq1-fec-enet";
119998c6103SKumar Gala			reg = <0x1e00 0x188>;
12020906eceSScott Wood			local-mac-address = [ 00 00 00 00 00 00 ];
121df34403dSVitaly Bordug			interrupts = <7 1>;
12220906eceSScott Wood			interrupt-parent = <&PIC>;
12320906eceSScott Wood			phy-handle = <&PHY1>;
12420906eceSScott Wood			linux,network-index = <1>;
125df34403dSVitaly Bordug		};
126df34403dSVitaly Bordug
12720906eceSScott Wood		PIC: interrupt-controller@0 {
128df34403dSVitaly Bordug			interrupt-controller;
129df34403dSVitaly Bordug			#interrupt-cells = <2>;
130998c6103SKumar Gala			reg = <0x0 0x24>;
13120906eceSScott Wood			compatible = "fsl,mpc885-pic", "fsl,pq1-pic";
132df34403dSVitaly Bordug		};
133df34403dSVitaly Bordug
13420906eceSScott Wood		pcmcia@80 {
13580128ff7SVitaly Bordug			#address-cells = <3>;
13680128ff7SVitaly Bordug			#interrupt-cells = <1>;
13780128ff7SVitaly Bordug			#size-cells = <2>;
13880128ff7SVitaly Bordug			compatible = "fsl,pq-pcmcia";
13980128ff7SVitaly Bordug			device_type = "pcmcia";
140998c6103SKumar Gala			reg = <0x80 0x80>;
14120906eceSScott Wood			interrupt-parent = <&PIC>;
142998c6103SKumar Gala			interrupts = <13 1>;
14380128ff7SVitaly Bordug		};
14480128ff7SVitaly Bordug
14520906eceSScott Wood		cpm@9c0 {
146df34403dSVitaly Bordug			#address-cells = <1>;
147df34403dSVitaly Bordug			#size-cells = <1>;
14820906eceSScott Wood			compatible = "fsl,mpc885-cpm", "fsl,cpm1";
149998c6103SKumar Gala			command-proc = <0x9c0>;
15020906eceSScott Wood			interrupts = <0>;	// cpm error interrupt
15120906eceSScott Wood			interrupt-parent = <&CPM_PIC>;
152998c6103SKumar Gala			reg = <0x9c0 0x40>;
15320906eceSScott Wood			ranges;
154df34403dSVitaly Bordug
15515f8c604SScott Wood			muram@2000 {
15615f8c604SScott Wood				#address-cells = <1>;
15715f8c604SScott Wood				#size-cells = <1>;
158998c6103SKumar Gala				ranges = <0x0 0x2000 0x2000>;
15915f8c604SScott Wood
16015f8c604SScott Wood				data@0 {
16115f8c604SScott Wood					compatible = "fsl,cpm-muram-data";
162998c6103SKumar Gala					reg = <0x0 0x1c00>;
16315f8c604SScott Wood				};
16415f8c604SScott Wood			};
16515f8c604SScott Wood
16620906eceSScott Wood			brg@9f0 {
16720906eceSScott Wood				compatible = "fsl,mpc885-brg",
16820906eceSScott Wood				             "fsl,cpm1-brg",
16920906eceSScott Wood				             "fsl,cpm-brg";
17003bbfe8bSBryan O'Donoghue				clock-frequency = <0>;
171998c6103SKumar Gala				reg = <0x9f0 0x10>;
17220906eceSScott Wood			};
17320906eceSScott Wood
17420906eceSScott Wood			CPM_PIC: interrupt-controller@930 {
175df34403dSVitaly Bordug				interrupt-controller;
17620906eceSScott Wood				#interrupt-cells = <1>;
177df34403dSVitaly Bordug				interrupts = <5 2 0 2>;
17820906eceSScott Wood				interrupt-parent = <&PIC>;
179998c6103SKumar Gala				reg = <0x930 0x20>;
18020906eceSScott Wood				compatible = "fsl,mpc885-cpm-pic",
18120906eceSScott Wood				             "fsl,cpm1-pic";
182df34403dSVitaly Bordug			};
183df34403dSVitaly Bordug
18420906eceSScott Wood			serial@a80 {
185df34403dSVitaly Bordug				device_type = "serial";
18620906eceSScott Wood				compatible = "fsl,mpc885-smc-uart",
18720906eceSScott Wood				             "fsl,cpm1-smc-uart";
188998c6103SKumar Gala				reg = <0xa80 0x10 0x3e80 0x40>;
18920906eceSScott Wood				interrupts = <4>;
19020906eceSScott Wood				interrupt-parent = <&CPM_PIC>;
19120906eceSScott Wood				fsl,cpm-brg = <1>;
192998c6103SKumar Gala				fsl,cpm-command = <0x90>;
193df34403dSVitaly Bordug			};
194df34403dSVitaly Bordug
19520906eceSScott Wood			serial@a90 {
196df34403dSVitaly Bordug				device_type = "serial";
19720906eceSScott Wood				compatible = "fsl,mpc885-smc-uart",
19820906eceSScott Wood				             "fsl,cpm1-smc-uart";
199998c6103SKumar Gala				reg = <0xa90 0x10 0x3f80 0x40>;
20020906eceSScott Wood				interrupts = <3>;
20120906eceSScott Wood				interrupt-parent = <&CPM_PIC>;
20220906eceSScott Wood				fsl,cpm-brg = <2>;
203998c6103SKumar Gala				fsl,cpm-command = <0xd0>;
204df34403dSVitaly Bordug			};
205df34403dSVitaly Bordug
20620906eceSScott Wood			ethernet@a40 {
207df34403dSVitaly Bordug				device_type = "network";
20820906eceSScott Wood				compatible = "fsl,mpc885-scc-enet",
20920906eceSScott Wood				             "fsl,cpm1-scc-enet";
210998c6103SKumar Gala				reg = <0xa40 0x18 0x3e00 0x100>;
21120906eceSScott Wood				local-mac-address = [ 00 00 00 00 00 00 ];
212998c6103SKumar Gala				interrupts = <28>;
21320906eceSScott Wood				interrupt-parent = <&CPM_PIC>;
21420906eceSScott Wood				phy-handle = <&PHY2>;
215998c6103SKumar Gala				fsl,cpm-command = <0x80>;
21620906eceSScott Wood				linux,network-index = <2>;
217df34403dSVitaly Bordug			};
218a5d28c8eSJochen Friedrich
219a5d28c8eSJochen Friedrich			i2c@860 {
220a5d28c8eSJochen Friedrich				compatible = "fsl,mpc885-i2c",
221a5d28c8eSJochen Friedrich					     "fsl,cpm1-i2c";
222a5d28c8eSJochen Friedrich				reg = <0x860 0x20 0x3c80 0x30>;
223a5d28c8eSJochen Friedrich				interrupts = <16>;
224a5d28c8eSJochen Friedrich				interrupt-parent = <&CPM_PIC>;
225a5d28c8eSJochen Friedrich				fsl,cpm-command = <0x10>;
226a5d28c8eSJochen Friedrich				#address-cells = <1>;
227a5d28c8eSJochen Friedrich				#size-cells = <0>;
228a5d28c8eSJochen Friedrich			};
229df34403dSVitaly Bordug		};
230df34403dSVitaly Bordug	};
23120906eceSScott Wood
23220906eceSScott Wood	chosen {
23320906eceSScott Wood		linux,stdout-path = "/soc/cpm/serial@a80";
23420906eceSScott Wood	};
235df34403dSVitaly Bordug};
236