xref: /openbmc/linux/arch/powerpc/boot/dts/tqm8xx.dts (revision 7f904d7e1f3ec7c2de47c024a5a5c30988b54703)
1 // SPDX-License-Identifier: GPL-2.0-or-later
2 /*
3  * TQM8XX Device Tree Source
4  *
5  * Heiko Schocher <hs@denx.de>
6  * 2010 DENX Software Engineering GmbH
7  */
8 
9 /dts-v1/;
10 
11 / {
12 	model = "TQM8xx";
13 	compatible = "tqc,tqm8xx";
14 	#address-cells = <1>;
15 	#size-cells = <1>;
16 
17 	aliases {
18 		ethernet0 = &eth0;
19 		ethernet1 = &eth1;
20 		mdio1 = &phy1;
21 		serial0 = &smc1;
22 	};
23 
24 	cpus {
25 		#address-cells = <1>;
26 		#size-cells = <0>;
27 
28 		PowerPC,860@0 {
29 			device_type = "cpu";
30 			reg = <0x0>;
31 			d-cache-line-size = <16>;	// 16 bytes
32 			i-cache-line-size = <16>;	// 16 bytes
33 			d-cache-size = <0x1000>;		// L1, 4K
34 			i-cache-size = <0x1000>;		// L1, 4K
35 			timebase-frequency = <0>;
36 			bus-frequency = <0>;
37 			clock-frequency = <0>;
38 			interrupts = <15 2>;	// decrementer interrupt
39 			interrupt-parent = <&PIC>;
40 		};
41 	};
42 
43 	memory {
44 		device_type = "memory";
45 		reg = <0x0 0x2000000>;
46 	};
47 
48 	localbus@fff00100 {
49 		compatible = "fsl,mpc860-localbus", "fsl,pq1-localbus";
50 		#address-cells = <2>;
51 		#size-cells = <1>;
52 		reg = <0xfff00100 0x40>;
53 
54 		ranges = <
55 			0x0 0x0 0x40000000 0x800000
56 			0x3 0x0 0xc0000000 0x200
57 		>;
58 
59 		flash@0,0 {
60 			compatible = "cfi-flash";
61 			reg = <0 0 0x800000>;
62 			#address-cells = <1>;
63 			#size-cells = <1>;
64 			bank-width = <4>;
65 			device-width = <2>;
66 		};
67 
68 		/* Note: CAN support needs be enabled in U-Boot */
69 		can@3,0 {
70 			compatible = "intc,82527";
71 			reg = <3 0x0 0x80>;
72 			interrupts = <8 1>;
73 			interrupt-parent = <&PIC>;
74 			bosch,external-clock-frequency = <16000000>;
75 			bosch,disconnect-rx1-input;
76 			bosch,disconnect-tx1-output;
77 			bosch,iso-low-speed-mux;
78 			bosch,clock-out-frequency = <16000000>;
79 		};
80 
81 		can@3,100 {
82 			compatible = "intc,82527";
83 			reg = <3 0x100 0x80>;
84 			interrupts = <8 1>;
85 			interrupt-parent = <&PIC>;
86 			bosch,external-clock-frequency = <16000000>;
87 			bosch,disconnect-rx1-input;
88 			bosch,disconnect-tx1-output;
89 			bosch,iso-low-speed-mux;
90 		};
91 	};
92 
93 	soc@fff00000 {
94 		#address-cells = <1>;
95 		#size-cells = <1>;
96 		device_type = "soc";
97 		ranges = <0x0 0xfff00000 0x00004000>;
98 
99 		phy1: mdio@e00 {
100 			compatible = "fsl,mpc866-fec-mdio", "fsl,pq1-fec-mdio";
101 			reg = <0xe00 0x188>;
102 			#address-cells = <1>;
103 			#size-cells = <0>;
104 			PHY: ethernet-phy@f {
105 				reg = <0xf>;
106 			};
107 		};
108 
109 		eth1: ethernet@e00 {
110 			device_type = "network";
111 			compatible = "fsl,mpc866-fec-enet",
112 			             "fsl,pq1-fec-enet";
113 			reg = <0xe00 0x188>;
114 			interrupts = <3 1>;
115 			interrupt-parent = <&PIC>;
116 			phy-handle = <&PHY>;
117 			linux,network-index = <1>;
118 		};
119 
120 		PIC: pic@0 {
121 			interrupt-controller;
122 			#interrupt-cells = <2>;
123 			reg = <0x0 0x24>;
124 			compatible = "fsl,mpc860-pic", "fsl,pq1-pic";
125 		};
126 
127 		cpm@9c0 {
128 			#address-cells = <1>;
129 			#size-cells = <1>;
130 			compatible = "fsl,mpc860-cpm", "fsl,cpm1";
131 			ranges;
132 			reg = <0x9c0 0x40>;
133 			brg-frequency = <0>;
134 			interrupts = <0 2>;	// cpm error interrupt
135 			interrupt-parent = <&CPM_PIC>;
136 
137 			muram@2000 {
138 				#address-cells = <1>;
139 				#size-cells = <1>;
140 				ranges = <0x0 0x2000 0x2000>;
141 
142 				data@0 {
143 					compatible = "fsl,cpm-muram-data";
144 					reg = <0x0 0x2000>;
145 				};
146 			};
147 
148 			brg@9f0 {
149 				compatible = "fsl,mpc860-brg",
150 					     "fsl,cpm1-brg",
151 					     "fsl,cpm-brg";
152 				reg = <0x9f0 0x10>;
153 				clock-frequency = <0>;
154 			};
155 
156 			CPM_PIC: pic@930 {
157 				interrupt-controller;
158 				#address-cells = <0>;
159 				#interrupt-cells = <1>;
160 				interrupts = <5 2 0 2>;
161 				interrupt-parent = <&PIC>;
162 				reg = <0x930 0x20>;
163 				compatible = "fsl,mpc860-cpm-pic",
164 				             "fsl,cpm1-pic";
165 			};
166 
167 
168 			smc1: serial@a80 {
169 				device_type = "serial";
170 				compatible = "fsl,mpc860-smc-uart",
171 				             "fsl,cpm1-smc-uart";
172 				reg = <0xa80 0x10 0x3e80 0x40>;
173 				interrupts = <4>;
174 				interrupt-parent = <&CPM_PIC>;
175 				fsl,cpm-brg = <1>;
176 				fsl,cpm-command = <0x90>;
177 			};
178 
179 			eth0: ethernet@a00 {
180 				device_type = "network";
181 				compatible = "fsl,mpc860-scc-enet",
182 				             "fsl,cpm1-scc-enet";
183 				reg = <0xa00 0x18 0x3c00 0x100>;
184 				interrupts = <30>;
185 				interrupt-parent = <&CPM_PIC>;
186 				fsl,cpm-command = <0000>;
187 				linux,network-index = <0>;
188 				fixed-link = <0 0 10 0 0>;
189 			};
190 		};
191 	};
192 };
193