xref: /freebsd-src/sys/contrib/device-tree/src/powerpc/mpc8272ads.dts (revision c66ec88fed842fbaad62c30d510644ceb7bd2d71)
1*c66ec88fSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-or-later
2*c66ec88fSEmmanuel Vadot/*
3*c66ec88fSEmmanuel Vadot * MPC8272 ADS Device Tree Source
4*c66ec88fSEmmanuel Vadot *
5*c66ec88fSEmmanuel Vadot * Copyright 2005,2008 Freescale Semiconductor Inc.
6*c66ec88fSEmmanuel Vadot */
7*c66ec88fSEmmanuel Vadot
8*c66ec88fSEmmanuel Vadot/dts-v1/;
9*c66ec88fSEmmanuel Vadot
10*c66ec88fSEmmanuel Vadot/ {
11*c66ec88fSEmmanuel Vadot	model = "MPC8272ADS";
12*c66ec88fSEmmanuel Vadot	compatible = "fsl,mpc8272ads";
13*c66ec88fSEmmanuel Vadot	#address-cells = <1>;
14*c66ec88fSEmmanuel Vadot	#size-cells = <1>;
15*c66ec88fSEmmanuel Vadot
16*c66ec88fSEmmanuel Vadot	aliases {
17*c66ec88fSEmmanuel Vadot		ethernet0 = &eth0;
18*c66ec88fSEmmanuel Vadot		ethernet1 = &eth1;
19*c66ec88fSEmmanuel Vadot		serial0 = &scc1;
20*c66ec88fSEmmanuel Vadot		serial1 = &scc4;
21*c66ec88fSEmmanuel Vadot	};
22*c66ec88fSEmmanuel Vadot
23*c66ec88fSEmmanuel Vadot	cpus {
24*c66ec88fSEmmanuel Vadot		#address-cells = <1>;
25*c66ec88fSEmmanuel Vadot		#size-cells = <0>;
26*c66ec88fSEmmanuel Vadot
27*c66ec88fSEmmanuel Vadot		PowerPC,8272@0 {
28*c66ec88fSEmmanuel Vadot			device_type = "cpu";
29*c66ec88fSEmmanuel Vadot			reg = <0x0>;
30*c66ec88fSEmmanuel Vadot			d-cache-line-size = <32>;
31*c66ec88fSEmmanuel Vadot			i-cache-line-size = <32>;
32*c66ec88fSEmmanuel Vadot			d-cache-size = <16384>;
33*c66ec88fSEmmanuel Vadot			i-cache-size = <16384>;
34*c66ec88fSEmmanuel Vadot			timebase-frequency = <0>;
35*c66ec88fSEmmanuel Vadot			bus-frequency = <0>;
36*c66ec88fSEmmanuel Vadot			clock-frequency = <0>;
37*c66ec88fSEmmanuel Vadot		};
38*c66ec88fSEmmanuel Vadot	};
39*c66ec88fSEmmanuel Vadot
40*c66ec88fSEmmanuel Vadot	memory {
41*c66ec88fSEmmanuel Vadot		device_type = "memory";
42*c66ec88fSEmmanuel Vadot		reg = <0x0 0x0>;
43*c66ec88fSEmmanuel Vadot	};
44*c66ec88fSEmmanuel Vadot
45*c66ec88fSEmmanuel Vadot	localbus@f0010100 {
46*c66ec88fSEmmanuel Vadot		compatible = "fsl,mpc8272-localbus",
47*c66ec88fSEmmanuel Vadot		             "fsl,pq2-localbus";
48*c66ec88fSEmmanuel Vadot		#address-cells = <2>;
49*c66ec88fSEmmanuel Vadot		#size-cells = <1>;
50*c66ec88fSEmmanuel Vadot		reg = <0xf0010100 0x40>;
51*c66ec88fSEmmanuel Vadot
52*c66ec88fSEmmanuel Vadot		ranges = <0x0 0x0 0xff800000 0x00800000
53*c66ec88fSEmmanuel Vadot		          0x1 0x0 0xf4500000 0x8000
54*c66ec88fSEmmanuel Vadot		          0x3 0x0 0xf8200000 0x8000>;
55*c66ec88fSEmmanuel Vadot
56*c66ec88fSEmmanuel Vadot		flash@0,0 {
57*c66ec88fSEmmanuel Vadot			compatible = "jedec-flash";
58*c66ec88fSEmmanuel Vadot			reg = <0x0 0x0 0x00800000>;
59*c66ec88fSEmmanuel Vadot			bank-width = <4>;
60*c66ec88fSEmmanuel Vadot			device-width = <1>;
61*c66ec88fSEmmanuel Vadot		};
62*c66ec88fSEmmanuel Vadot
63*c66ec88fSEmmanuel Vadot		board-control@1,0 {
64*c66ec88fSEmmanuel Vadot			reg = <0x1 0x0 0x20>;
65*c66ec88fSEmmanuel Vadot			compatible = "fsl,mpc8272ads-bcsr";
66*c66ec88fSEmmanuel Vadot		};
67*c66ec88fSEmmanuel Vadot
68*c66ec88fSEmmanuel Vadot		PCI_PIC: interrupt-controller@3,0 {
69*c66ec88fSEmmanuel Vadot			compatible = "fsl,mpc8272ads-pci-pic",
70*c66ec88fSEmmanuel Vadot			             "fsl,pq2ads-pci-pic";
71*c66ec88fSEmmanuel Vadot			#interrupt-cells = <1>;
72*c66ec88fSEmmanuel Vadot			interrupt-controller;
73*c66ec88fSEmmanuel Vadot			reg = <0x3 0x0 0x8>;
74*c66ec88fSEmmanuel Vadot			interrupt-parent = <&PIC>;
75*c66ec88fSEmmanuel Vadot			interrupts = <20 8>;
76*c66ec88fSEmmanuel Vadot		};
77*c66ec88fSEmmanuel Vadot	};
78*c66ec88fSEmmanuel Vadot
79*c66ec88fSEmmanuel Vadot
80*c66ec88fSEmmanuel Vadot	pci@f0010800 {
81*c66ec88fSEmmanuel Vadot		device_type = "pci";
82*c66ec88fSEmmanuel Vadot		reg = <0xf0010800 0x10c 0xf00101ac 0x8 0xf00101c4 0x8>;
83*c66ec88fSEmmanuel Vadot		compatible = "fsl,mpc8272-pci", "fsl,pq2-pci";
84*c66ec88fSEmmanuel Vadot		#interrupt-cells = <1>;
85*c66ec88fSEmmanuel Vadot		#size-cells = <2>;
86*c66ec88fSEmmanuel Vadot		#address-cells = <3>;
87*c66ec88fSEmmanuel Vadot		clock-frequency = <66666666>;
88*c66ec88fSEmmanuel Vadot		interrupt-map-mask = <0xf800 0x0 0x0 0x7>;
89*c66ec88fSEmmanuel Vadot		interrupt-map = <
90*c66ec88fSEmmanuel Vadot		                 /* IDSEL 0x16 */
91*c66ec88fSEmmanuel Vadot		                 0xb000 0x0 0x0 0x1 &PCI_PIC 0
92*c66ec88fSEmmanuel Vadot		                 0xb000 0x0 0x0 0x2 &PCI_PIC 1
93*c66ec88fSEmmanuel Vadot		                 0xb000 0x0 0x0 0x3 &PCI_PIC 2
94*c66ec88fSEmmanuel Vadot		                 0xb000 0x0 0x0 0x4 &PCI_PIC 3
95*c66ec88fSEmmanuel Vadot
96*c66ec88fSEmmanuel Vadot		                 /* IDSEL 0x17 */
97*c66ec88fSEmmanuel Vadot		                 0xb800 0x0 0x0 0x1 &PCI_PIC 4
98*c66ec88fSEmmanuel Vadot		                 0xb800 0x0 0x0 0x2 &PCI_PIC 5
99*c66ec88fSEmmanuel Vadot		                 0xb800 0x0 0x0 0x3 &PCI_PIC 6
100*c66ec88fSEmmanuel Vadot		                 0xb800 0x0 0x0 0x4 &PCI_PIC 7
101*c66ec88fSEmmanuel Vadot
102*c66ec88fSEmmanuel Vadot		                 /* IDSEL 0x18 */
103*c66ec88fSEmmanuel Vadot		                 0xc000 0x0 0x0 0x1 &PCI_PIC 8
104*c66ec88fSEmmanuel Vadot		                 0xc000 0x0 0x0 0x2 &PCI_PIC 9
105*c66ec88fSEmmanuel Vadot		                 0xc000 0x0 0x0 0x3 &PCI_PIC 10
106*c66ec88fSEmmanuel Vadot		                 0xc000 0x0 0x0 0x4 &PCI_PIC 11>;
107*c66ec88fSEmmanuel Vadot
108*c66ec88fSEmmanuel Vadot		interrupt-parent = <&PIC>;
109*c66ec88fSEmmanuel Vadot		interrupts = <18 8>;
110*c66ec88fSEmmanuel Vadot		ranges = <0x42000000 0x0 0x80000000 0x80000000 0x0 0x20000000
111*c66ec88fSEmmanuel Vadot		          0x2000000 0x0 0xa0000000 0xa0000000 0x0 0x20000000
112*c66ec88fSEmmanuel Vadot		          0x1000000 0x0 0x0 0xf6000000 0x0 0x2000000>;
113*c66ec88fSEmmanuel Vadot	};
114*c66ec88fSEmmanuel Vadot
115*c66ec88fSEmmanuel Vadot	soc@f0000000 {
116*c66ec88fSEmmanuel Vadot		#address-cells = <1>;
117*c66ec88fSEmmanuel Vadot		#size-cells = <1>;
118*c66ec88fSEmmanuel Vadot		device_type = "soc";
119*c66ec88fSEmmanuel Vadot		compatible = "fsl,mpc8272", "fsl,pq2-soc";
120*c66ec88fSEmmanuel Vadot		ranges = <0x0 0xf0000000 0x53000>;
121*c66ec88fSEmmanuel Vadot
122*c66ec88fSEmmanuel Vadot		// Temporary -- will go away once kernel uses ranges for get_immrbase().
123*c66ec88fSEmmanuel Vadot		reg = <0xf0000000 0x53000>;
124*c66ec88fSEmmanuel Vadot
125*c66ec88fSEmmanuel Vadot		cpm@119c0 {
126*c66ec88fSEmmanuel Vadot			#address-cells = <1>;
127*c66ec88fSEmmanuel Vadot			#size-cells = <1>;
128*c66ec88fSEmmanuel Vadot			compatible = "fsl,mpc8272-cpm", "fsl,cpm2";
129*c66ec88fSEmmanuel Vadot			reg = <0x119c0 0x30>;
130*c66ec88fSEmmanuel Vadot			ranges;
131*c66ec88fSEmmanuel Vadot
132*c66ec88fSEmmanuel Vadot			muram@0 {
133*c66ec88fSEmmanuel Vadot				#address-cells = <1>;
134*c66ec88fSEmmanuel Vadot				#size-cells = <1>;
135*c66ec88fSEmmanuel Vadot				ranges = <0x0 0x0 0x10000>;
136*c66ec88fSEmmanuel Vadot
137*c66ec88fSEmmanuel Vadot				data@0 {
138*c66ec88fSEmmanuel Vadot					compatible = "fsl,cpm-muram-data";
139*c66ec88fSEmmanuel Vadot					reg = <0x0 0x2000 0x9800 0x800>;
140*c66ec88fSEmmanuel Vadot				};
141*c66ec88fSEmmanuel Vadot			};
142*c66ec88fSEmmanuel Vadot
143*c66ec88fSEmmanuel Vadot			brg@119f0 {
144*c66ec88fSEmmanuel Vadot				compatible = "fsl,mpc8272-brg",
145*c66ec88fSEmmanuel Vadot				             "fsl,cpm2-brg",
146*c66ec88fSEmmanuel Vadot				             "fsl,cpm-brg";
147*c66ec88fSEmmanuel Vadot				reg = <0x119f0 0x10 0x115f0 0x10>;
148*c66ec88fSEmmanuel Vadot			};
149*c66ec88fSEmmanuel Vadot
150*c66ec88fSEmmanuel Vadot			scc1: serial@11a00 {
151*c66ec88fSEmmanuel Vadot				device_type = "serial";
152*c66ec88fSEmmanuel Vadot				compatible = "fsl,mpc8272-scc-uart",
153*c66ec88fSEmmanuel Vadot				             "fsl,cpm2-scc-uart";
154*c66ec88fSEmmanuel Vadot				reg = <0x11a00 0x20 0x8000 0x100>;
155*c66ec88fSEmmanuel Vadot				interrupts = <40 8>;
156*c66ec88fSEmmanuel Vadot				interrupt-parent = <&PIC>;
157*c66ec88fSEmmanuel Vadot				fsl,cpm-brg = <1>;
158*c66ec88fSEmmanuel Vadot				fsl,cpm-command = <0x800000>;
159*c66ec88fSEmmanuel Vadot			};
160*c66ec88fSEmmanuel Vadot
161*c66ec88fSEmmanuel Vadot			scc4: serial@11a60 {
162*c66ec88fSEmmanuel Vadot				device_type = "serial";
163*c66ec88fSEmmanuel Vadot				compatible = "fsl,mpc8272-scc-uart",
164*c66ec88fSEmmanuel Vadot				             "fsl,cpm2-scc-uart";
165*c66ec88fSEmmanuel Vadot				reg = <0x11a60 0x20 0x8300 0x100>;
166*c66ec88fSEmmanuel Vadot				interrupts = <43 8>;
167*c66ec88fSEmmanuel Vadot				interrupt-parent = <&PIC>;
168*c66ec88fSEmmanuel Vadot				fsl,cpm-brg = <4>;
169*c66ec88fSEmmanuel Vadot				fsl,cpm-command = <0xce00000>;
170*c66ec88fSEmmanuel Vadot			};
171*c66ec88fSEmmanuel Vadot
172*c66ec88fSEmmanuel Vadot			usb@11b60 {
173*c66ec88fSEmmanuel Vadot				compatible = "fsl,mpc8272-cpm-usb";
174*c66ec88fSEmmanuel Vadot				reg = <0x11b60 0x40 0x8b00 0x100>;
175*c66ec88fSEmmanuel Vadot				interrupts = <11 8>;
176*c66ec88fSEmmanuel Vadot				interrupt-parent = <&PIC>;
177*c66ec88fSEmmanuel Vadot				mode = "peripheral";
178*c66ec88fSEmmanuel Vadot			};
179*c66ec88fSEmmanuel Vadot
180*c66ec88fSEmmanuel Vadot			mdio@10d40 {
181*c66ec88fSEmmanuel Vadot				compatible = "fsl,mpc8272ads-mdio-bitbang",
182*c66ec88fSEmmanuel Vadot				             "fsl,mpc8272-mdio-bitbang",
183*c66ec88fSEmmanuel Vadot				             "fsl,cpm2-mdio-bitbang";
184*c66ec88fSEmmanuel Vadot				reg = <0x10d40 0x14>;
185*c66ec88fSEmmanuel Vadot				#address-cells = <1>;
186*c66ec88fSEmmanuel Vadot				#size-cells = <0>;
187*c66ec88fSEmmanuel Vadot				fsl,mdio-pin = <18>;
188*c66ec88fSEmmanuel Vadot				fsl,mdc-pin = <19>;
189*c66ec88fSEmmanuel Vadot
190*c66ec88fSEmmanuel Vadot				PHY0: ethernet-phy@0 {
191*c66ec88fSEmmanuel Vadot					interrupt-parent = <&PIC>;
192*c66ec88fSEmmanuel Vadot					interrupts = <23 8>;
193*c66ec88fSEmmanuel Vadot					reg = <0x0>;
194*c66ec88fSEmmanuel Vadot				};
195*c66ec88fSEmmanuel Vadot
196*c66ec88fSEmmanuel Vadot				PHY1: ethernet-phy@1 {
197*c66ec88fSEmmanuel Vadot					interrupt-parent = <&PIC>;
198*c66ec88fSEmmanuel Vadot					interrupts = <23 8>;
199*c66ec88fSEmmanuel Vadot					reg = <0x3>;
200*c66ec88fSEmmanuel Vadot				};
201*c66ec88fSEmmanuel Vadot			};
202*c66ec88fSEmmanuel Vadot
203*c66ec88fSEmmanuel Vadot			eth0: ethernet@11300 {
204*c66ec88fSEmmanuel Vadot				device_type = "network";
205*c66ec88fSEmmanuel Vadot				compatible = "fsl,mpc8272-fcc-enet",
206*c66ec88fSEmmanuel Vadot				             "fsl,cpm2-fcc-enet";
207*c66ec88fSEmmanuel Vadot				reg = <0x11300 0x20 0x8400 0x100 0x11390 0x1>;
208*c66ec88fSEmmanuel Vadot				local-mac-address = [ 00 00 00 00 00 00 ];
209*c66ec88fSEmmanuel Vadot				interrupts = <32 8>;
210*c66ec88fSEmmanuel Vadot				interrupt-parent = <&PIC>;
211*c66ec88fSEmmanuel Vadot				phy-handle = <&PHY0>;
212*c66ec88fSEmmanuel Vadot				linux,network-index = <0>;
213*c66ec88fSEmmanuel Vadot				fsl,cpm-command = <0x12000300>;
214*c66ec88fSEmmanuel Vadot			};
215*c66ec88fSEmmanuel Vadot
216*c66ec88fSEmmanuel Vadot			eth1: ethernet@11320 {
217*c66ec88fSEmmanuel Vadot				device_type = "network";
218*c66ec88fSEmmanuel Vadot				compatible = "fsl,mpc8272-fcc-enet",
219*c66ec88fSEmmanuel Vadot				             "fsl,cpm2-fcc-enet";
220*c66ec88fSEmmanuel Vadot				reg = <0x11320 0x20 0x8500 0x100 0x113b0 0x1>;
221*c66ec88fSEmmanuel Vadot				local-mac-address = [ 00 00 00 00 00 00 ];
222*c66ec88fSEmmanuel Vadot				interrupts = <33 8>;
223*c66ec88fSEmmanuel Vadot				interrupt-parent = <&PIC>;
224*c66ec88fSEmmanuel Vadot				phy-handle = <&PHY1>;
225*c66ec88fSEmmanuel Vadot				linux,network-index = <1>;
226*c66ec88fSEmmanuel Vadot				fsl,cpm-command = <0x16200300>;
227*c66ec88fSEmmanuel Vadot			};
228*c66ec88fSEmmanuel Vadot
229*c66ec88fSEmmanuel Vadot			i2c@11860 {
230*c66ec88fSEmmanuel Vadot				compatible = "fsl,mpc8272-i2c",
231*c66ec88fSEmmanuel Vadot					     "fsl,cpm2-i2c";
232*c66ec88fSEmmanuel Vadot				reg = <0x11860 0x20 0x8afc 0x2>;
233*c66ec88fSEmmanuel Vadot				interrupts = <1 8>;
234*c66ec88fSEmmanuel Vadot				interrupt-parent = <&PIC>;
235*c66ec88fSEmmanuel Vadot				fsl,cpm-command = <0x29600000>;
236*c66ec88fSEmmanuel Vadot				#address-cells = <1>;
237*c66ec88fSEmmanuel Vadot				#size-cells = <0>;
238*c66ec88fSEmmanuel Vadot			};
239*c66ec88fSEmmanuel Vadot		};
240*c66ec88fSEmmanuel Vadot
241*c66ec88fSEmmanuel Vadot		PIC: interrupt-controller@10c00 {
242*c66ec88fSEmmanuel Vadot			#interrupt-cells = <2>;
243*c66ec88fSEmmanuel Vadot			interrupt-controller;
244*c66ec88fSEmmanuel Vadot			reg = <0x10c00 0x80>;
245*c66ec88fSEmmanuel Vadot			compatible = "fsl,mpc8272-pic", "fsl,cpm2-pic";
246*c66ec88fSEmmanuel Vadot		};
247*c66ec88fSEmmanuel Vadot
248*c66ec88fSEmmanuel Vadot		crypto@30000 {
249*c66ec88fSEmmanuel Vadot			compatible = "fsl,sec1.0";
250*c66ec88fSEmmanuel Vadot			reg = <0x40000 0x13000>;
251*c66ec88fSEmmanuel Vadot			interrupts = <47 0x8>;
252*c66ec88fSEmmanuel Vadot			interrupt-parent = <&PIC>;
253*c66ec88fSEmmanuel Vadot			fsl,num-channels = <4>;
254*c66ec88fSEmmanuel Vadot			fsl,channel-fifo-len = <24>;
255*c66ec88fSEmmanuel Vadot			fsl,exec-units-mask = <0x7e>;
256*c66ec88fSEmmanuel Vadot			fsl,descriptor-types-mask = <0x1010415>;
257*c66ec88fSEmmanuel Vadot		};
258*c66ec88fSEmmanuel Vadot	};
259*c66ec88fSEmmanuel Vadot
260*c66ec88fSEmmanuel Vadot	chosen {
261*c66ec88fSEmmanuel Vadot		stdout-path = "/soc/cpm/serial@11a00";
262*c66ec88fSEmmanuel Vadot	};
263*c66ec88fSEmmanuel Vadot};
264