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