1c4b6a776SHeiko Schocher/*
2c4b6a776SHeiko Schocher * TQM8XX Device Tree Source
3c4b6a776SHeiko Schocher *
4c4b6a776SHeiko Schocher * Heiko Schocher <hs@denx.de>
5c4b6a776SHeiko Schocher * 2010 DENX Software Engineering GmbH
6c4b6a776SHeiko Schocher *
7c4b6a776SHeiko Schocher * This program is free software; you can redistribute  it and/or modify it
8c4b6a776SHeiko Schocher * under  the terms of  the GNU General  Public License as published by the
9c4b6a776SHeiko Schocher * Free Software Foundation;  either version 2 of the  License, or (at your
10c4b6a776SHeiko Schocher * option) any later version.
11c4b6a776SHeiko Schocher */
12c4b6a776SHeiko Schocher
13c4b6a776SHeiko Schocher/dts-v1/;
14c4b6a776SHeiko Schocher
15c4b6a776SHeiko Schocher/ {
16c4b6a776SHeiko Schocher	model = "TQM8xx";
17c4b6a776SHeiko Schocher	compatible = "tqc,tqm8xx";
18c4b6a776SHeiko Schocher	#address-cells = <1>;
19c4b6a776SHeiko Schocher	#size-cells = <1>;
20c4b6a776SHeiko Schocher
21c4b6a776SHeiko Schocher	aliases {
22c4b6a776SHeiko Schocher		ethernet0 = &eth0;
23c4b6a776SHeiko Schocher		ethernet1 = &eth1;
24c4b6a776SHeiko Schocher		mdio1 = &phy1;
25c4b6a776SHeiko Schocher		serial0 = &smc1;
26c4b6a776SHeiko Schocher	};
27c4b6a776SHeiko Schocher
28c4b6a776SHeiko Schocher	cpus {
29c4b6a776SHeiko Schocher		#address-cells = <1>;
30c4b6a776SHeiko Schocher		#size-cells = <0>;
31c4b6a776SHeiko Schocher
32c4b6a776SHeiko Schocher		PowerPC,860@0 {
33c4b6a776SHeiko Schocher			device_type = "cpu";
34c4b6a776SHeiko Schocher			reg = <0x0>;
35c4b6a776SHeiko Schocher			d-cache-line-size = <16>;	// 16 bytes
36c4b6a776SHeiko Schocher			i-cache-line-size = <16>;	// 16 bytes
37c4b6a776SHeiko Schocher			d-cache-size = <0x1000>;		// L1, 4K
38c4b6a776SHeiko Schocher			i-cache-size = <0x1000>;		// L1, 4K
39c4b6a776SHeiko Schocher			timebase-frequency = <0>;
40c4b6a776SHeiko Schocher			bus-frequency = <0>;
41c4b6a776SHeiko Schocher			clock-frequency = <0>;
42c4b6a776SHeiko Schocher			interrupts = <15 2>;	// decrementer interrupt
43c4b6a776SHeiko Schocher			interrupt-parent = <&PIC>;
44c4b6a776SHeiko Schocher		};
45c4b6a776SHeiko Schocher	};
46c4b6a776SHeiko Schocher
47c4b6a776SHeiko Schocher	memory {
48c4b6a776SHeiko Schocher		device_type = "memory";
49c4b6a776SHeiko Schocher		reg = <0x0 0x2000000>;
50c4b6a776SHeiko Schocher	};
51c4b6a776SHeiko Schocher
52c4b6a776SHeiko Schocher	localbus@fff00100 {
53c4b6a776SHeiko Schocher		compatible = "fsl,mpc860-localbus", "fsl,pq1-localbus";
54c4b6a776SHeiko Schocher		#address-cells = <2>;
55c4b6a776SHeiko Schocher		#size-cells = <1>;
56c4b6a776SHeiko Schocher		reg = <0xfff00100 0x40>;
57c4b6a776SHeiko Schocher
58c4b6a776SHeiko Schocher		ranges = <
59c4b6a776SHeiko Schocher			0x0 0x0 0x40000000 0x800000
60c4b6a776SHeiko Schocher		>;
61c4b6a776SHeiko Schocher
62c4b6a776SHeiko Schocher		flash@0,0 {
63c4b6a776SHeiko Schocher			compatible = "cfi-flash";
64c4b6a776SHeiko Schocher			reg = <0 0 0x800000>;
65c4b6a776SHeiko Schocher			#address-cells = <1>;
66c4b6a776SHeiko Schocher			#size-cells = <1>;
67c4b6a776SHeiko Schocher			bank-width = <4>;
68c4b6a776SHeiko Schocher			device-width = <2>;
69c4b6a776SHeiko Schocher		};
70c4b6a776SHeiko Schocher	};
71c4b6a776SHeiko Schocher
72c4b6a776SHeiko Schocher	soc@fff00000 {
73c4b6a776SHeiko Schocher		#address-cells = <1>;
74c4b6a776SHeiko Schocher		#size-cells = <1>;
75c4b6a776SHeiko Schocher		device_type = "soc";
76c4b6a776SHeiko Schocher		ranges = <0x0 0xfff00000 0x00004000>;
77c4b6a776SHeiko Schocher
78c4b6a776SHeiko Schocher		phy1: mdio@e00 {
79c4b6a776SHeiko Schocher			compatible = "fsl,mpc866-fec-mdio", "fsl,pq1-fec-mdio";
80c4b6a776SHeiko Schocher			reg = <0xe00 0x188>;
81c4b6a776SHeiko Schocher			#address-cells = <1>;
82c4b6a776SHeiko Schocher			#size-cells = <0>;
83c4b6a776SHeiko Schocher			PHY: ethernet-phy@f {
84c4b6a776SHeiko Schocher				reg = <0xf>;
85c4b6a776SHeiko Schocher				device_type = "ethernet-phy";
86c4b6a776SHeiko Schocher			};
87c4b6a776SHeiko Schocher		};
88c4b6a776SHeiko Schocher
89c4b6a776SHeiko Schocher		eth1: ethernet@e00 {
90c4b6a776SHeiko Schocher			device_type = "network";
91c4b6a776SHeiko Schocher			compatible = "fsl,mpc866-fec-enet",
92c4b6a776SHeiko Schocher			             "fsl,pq1-fec-enet";
93c4b6a776SHeiko Schocher			reg = <0xe00 0x188>;
94c4b6a776SHeiko Schocher			interrupts = <3 1>;
95c4b6a776SHeiko Schocher			interrupt-parent = <&PIC>;
96c4b6a776SHeiko Schocher			phy-handle = <&PHY>;
97c4b6a776SHeiko Schocher			linux,network-index = <1>;
98c4b6a776SHeiko Schocher		};
99c4b6a776SHeiko Schocher
100c4b6a776SHeiko Schocher		PIC: pic@0 {
101c4b6a776SHeiko Schocher			interrupt-controller;
102c4b6a776SHeiko Schocher			#interrupt-cells = <2>;
103c4b6a776SHeiko Schocher			reg = <0x0 0x24>;
104c4b6a776SHeiko Schocher			compatible = "fsl,mpc860-pic", "fsl,pq1-pic";
105c4b6a776SHeiko Schocher		};
106c4b6a776SHeiko Schocher
107c4b6a776SHeiko Schocher		cpm@9c0 {
108c4b6a776SHeiko Schocher			#address-cells = <1>;
109c4b6a776SHeiko Schocher			#size-cells = <1>;
110c4b6a776SHeiko Schocher			compatible = "fsl,mpc860-cpm", "fsl,cpm1";
111c4b6a776SHeiko Schocher			ranges;
112c4b6a776SHeiko Schocher			reg = <0x9c0 0x40>;
113c4b6a776SHeiko Schocher			brg-frequency = <0>;
114c4b6a776SHeiko Schocher			interrupts = <0 2>;	// cpm error interrupt
115c4b6a776SHeiko Schocher			interrupt-parent = <&CPM_PIC>;
116c4b6a776SHeiko Schocher
117c4b6a776SHeiko Schocher			muram@2000 {
118c4b6a776SHeiko Schocher				#address-cells = <1>;
119c4b6a776SHeiko Schocher				#size-cells = <1>;
120c4b6a776SHeiko Schocher				ranges = <0x0 0x2000 0x2000>;
121c4b6a776SHeiko Schocher
122c4b6a776SHeiko Schocher				data@0 {
123c4b6a776SHeiko Schocher					compatible = "fsl,cpm-muram-data";
124c4b6a776SHeiko Schocher					reg = <0x0 0x2000>;
125c4b6a776SHeiko Schocher				};
126c4b6a776SHeiko Schocher			};
127c4b6a776SHeiko Schocher
128c4b6a776SHeiko Schocher			brg@9f0 {
129c4b6a776SHeiko Schocher				compatible = "fsl,mpc860-brg",
130c4b6a776SHeiko Schocher					     "fsl,cpm1-brg",
131c4b6a776SHeiko Schocher					     "fsl,cpm-brg";
132c4b6a776SHeiko Schocher				reg = <0x9f0 0x10>;
133c4b6a776SHeiko Schocher				clock-frequency = <0>;
134c4b6a776SHeiko Schocher			};
135c4b6a776SHeiko Schocher
136c4b6a776SHeiko Schocher			CPM_PIC: pic@930 {
137c4b6a776SHeiko Schocher				interrupt-controller;
138c4b6a776SHeiko Schocher				#address-cells = <0>;
139c4b6a776SHeiko Schocher				#interrupt-cells = <1>;
140c4b6a776SHeiko Schocher				interrupts = <5 2 0 2>;
141c4b6a776SHeiko Schocher				interrupt-parent = <&PIC>;
142c4b6a776SHeiko Schocher				reg = <0x930 0x20>;
143c4b6a776SHeiko Schocher				compatible = "fsl,mpc860-cpm-pic",
144c4b6a776SHeiko Schocher				             "fsl,cpm1-pic";
145c4b6a776SHeiko Schocher			};
146c4b6a776SHeiko Schocher
147c4b6a776SHeiko Schocher
148c4b6a776SHeiko Schocher			smc1: serial@a80 {
149c4b6a776SHeiko Schocher				device_type = "serial";
150c4b6a776SHeiko Schocher				compatible = "fsl,mpc860-smc-uart",
151c4b6a776SHeiko Schocher				             "fsl,cpm1-smc-uart";
152c4b6a776SHeiko Schocher				reg = <0xa80 0x10 0x3e80 0x40>;
153c4b6a776SHeiko Schocher				interrupts = <4>;
154c4b6a776SHeiko Schocher				interrupt-parent = <&CPM_PIC>;
155c4b6a776SHeiko Schocher				fsl,cpm-brg = <1>;
156c4b6a776SHeiko Schocher				fsl,cpm-command = <0x90>;
157c4b6a776SHeiko Schocher			};
158c4b6a776SHeiko Schocher
159c4b6a776SHeiko Schocher			eth0: ethernet@a00 {
160c4b6a776SHeiko Schocher				device_type = "network";
161c4b6a776SHeiko Schocher				compatible = "fsl,mpc860-scc-enet",
162c4b6a776SHeiko Schocher				             "fsl,cpm1-scc-enet";
163c4b6a776SHeiko Schocher				reg = <0xa00 0x18 0x3c00 0x100>;
164c4b6a776SHeiko Schocher				interrupts = <30>;
165c4b6a776SHeiko Schocher				interrupt-parent = <&CPM_PIC>;
166c4b6a776SHeiko Schocher				fsl,cpm-command = <0000>;
167c4b6a776SHeiko Schocher				linux,network-index = <0>;
168c4b6a776SHeiko Schocher				fixed-link = <0 0 10 0 0>;
169c4b6a776SHeiko Schocher			};
170c4b6a776SHeiko Schocher		};
171c4b6a776SHeiko Schocher	};
172c4b6a776SHeiko Schocher};
173