xref: /freebsd-src/sys/contrib/device-tree/src/powerpc/fsl/ge_imp3a.dts (revision c66ec88fed842fbaad62c30d510644ceb7bd2d71)
1*c66ec88fSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-or-later
2*c66ec88fSEmmanuel Vadot/*
3*c66ec88fSEmmanuel Vadot * GE IMP3A Device Tree Source
4*c66ec88fSEmmanuel Vadot *
5*c66ec88fSEmmanuel Vadot * Copyright 2010-2011 GE Intelligent Platforms Embedded Systems, Inc.
6*c66ec88fSEmmanuel Vadot *
7*c66ec88fSEmmanuel Vadot * Based on: P2020 DS Device Tree Source
8*c66ec88fSEmmanuel Vadot * Copyright 2009 Freescale Semiconductor Inc.
9*c66ec88fSEmmanuel Vadot */
10*c66ec88fSEmmanuel Vadot
11*c66ec88fSEmmanuel Vadot/include/ "p2020si-pre.dtsi"
12*c66ec88fSEmmanuel Vadot
13*c66ec88fSEmmanuel Vadot/ {
14*c66ec88fSEmmanuel Vadot	model = "GE_IMP3A";
15*c66ec88fSEmmanuel Vadot	compatible = "ge,imp3a";
16*c66ec88fSEmmanuel Vadot
17*c66ec88fSEmmanuel Vadot	memory {
18*c66ec88fSEmmanuel Vadot		device_type = "memory";
19*c66ec88fSEmmanuel Vadot	};
20*c66ec88fSEmmanuel Vadot
21*c66ec88fSEmmanuel Vadot	lbc: localbus@fef05000 {
22*c66ec88fSEmmanuel Vadot		reg = <0 0xfef05000 0 0x1000>;
23*c66ec88fSEmmanuel Vadot
24*c66ec88fSEmmanuel Vadot		ranges = <0x0 0x0 0x0 0xff000000 0x01000000
25*c66ec88fSEmmanuel Vadot			  0x1 0x0 0x0 0xe0000000 0x08000000
26*c66ec88fSEmmanuel Vadot			  0x2 0x0 0x0 0xe8000000 0x08000000
27*c66ec88fSEmmanuel Vadot			  0x3 0x0 0x0 0xfc100000 0x00020000
28*c66ec88fSEmmanuel Vadot			  0x4 0x0 0x0 0xfc000000 0x00008000
29*c66ec88fSEmmanuel Vadot			  0x5 0x0 0x0 0xfc008000 0x00008000
30*c66ec88fSEmmanuel Vadot			  0x6 0x0 0x0 0xfee00000 0x00040000
31*c66ec88fSEmmanuel Vadot			  0x7 0x0 0x0 0xfee80000 0x00040000>;
32*c66ec88fSEmmanuel Vadot
33*c66ec88fSEmmanuel Vadot		/* nor@0,0 is a mirror of part of the memory in nor@1,0
34*c66ec88fSEmmanuel Vadot		nor@0,0 {
35*c66ec88fSEmmanuel Vadot			#address-cells = <1>;
36*c66ec88fSEmmanuel Vadot			#size-cells = <1>;
37*c66ec88fSEmmanuel Vadot			compatible = "ge,imp3a-firmware-mirror", "cfi-flash";
38*c66ec88fSEmmanuel Vadot			reg = <0x0 0x0 0x1000000>;
39*c66ec88fSEmmanuel Vadot			bank-width = <2>;
40*c66ec88fSEmmanuel Vadot			device-width = <1>;
41*c66ec88fSEmmanuel Vadot
42*c66ec88fSEmmanuel Vadot			partition@0 {
43*c66ec88fSEmmanuel Vadot				label = "firmware";
44*c66ec88fSEmmanuel Vadot				reg = <0x0 0x1000000>;
45*c66ec88fSEmmanuel Vadot				read-only;
46*c66ec88fSEmmanuel Vadot			};
47*c66ec88fSEmmanuel Vadot		};
48*c66ec88fSEmmanuel Vadot		*/
49*c66ec88fSEmmanuel Vadot
50*c66ec88fSEmmanuel Vadot		nor@1,0 {
51*c66ec88fSEmmanuel Vadot			#address-cells = <1>;
52*c66ec88fSEmmanuel Vadot			#size-cells = <1>;
53*c66ec88fSEmmanuel Vadot			compatible = "ge,imp3a-paged-flash", "cfi-flash";
54*c66ec88fSEmmanuel Vadot			reg = <0x1 0x0 0x8000000>;
55*c66ec88fSEmmanuel Vadot			bank-width = <2>;
56*c66ec88fSEmmanuel Vadot			device-width = <1>;
57*c66ec88fSEmmanuel Vadot
58*c66ec88fSEmmanuel Vadot			partition@0 {
59*c66ec88fSEmmanuel Vadot				label = "user";
60*c66ec88fSEmmanuel Vadot				reg = <0x0 0x7800000>;
61*c66ec88fSEmmanuel Vadot			};
62*c66ec88fSEmmanuel Vadot
63*c66ec88fSEmmanuel Vadot			partition@7800000 {
64*c66ec88fSEmmanuel Vadot				label = "firmware";
65*c66ec88fSEmmanuel Vadot				reg = <0x7800000 0x800000>;
66*c66ec88fSEmmanuel Vadot				read-only;
67*c66ec88fSEmmanuel Vadot			};
68*c66ec88fSEmmanuel Vadot		};
69*c66ec88fSEmmanuel Vadot
70*c66ec88fSEmmanuel Vadot		nvram@3,0 {
71*c66ec88fSEmmanuel Vadot			device_type = "nvram";
72*c66ec88fSEmmanuel Vadot			compatible = "simtek,stk14ca8";
73*c66ec88fSEmmanuel Vadot			reg = <0x3 0x0 0x20000>;
74*c66ec88fSEmmanuel Vadot		};
75*c66ec88fSEmmanuel Vadot
76*c66ec88fSEmmanuel Vadot		fpga@4,0 {
77*c66ec88fSEmmanuel Vadot			compatible = "ge,imp3a-fpga-regs";
78*c66ec88fSEmmanuel Vadot			reg = <0x4 0x0 0x20>;
79*c66ec88fSEmmanuel Vadot		};
80*c66ec88fSEmmanuel Vadot
81*c66ec88fSEmmanuel Vadot		gef_pic: pic@4,20 {
82*c66ec88fSEmmanuel Vadot			#interrupt-cells = <1>;
83*c66ec88fSEmmanuel Vadot			interrupt-controller;
84*c66ec88fSEmmanuel Vadot			device_type = "interrupt-controller";
85*c66ec88fSEmmanuel Vadot			compatible = "ge,imp3a-fpga-pic", "gef,fpga-pic-1.00";
86*c66ec88fSEmmanuel Vadot			reg = <0x4 0x20 0x20>;
87*c66ec88fSEmmanuel Vadot			interrupts = <6 7 0 0>;
88*c66ec88fSEmmanuel Vadot		};
89*c66ec88fSEmmanuel Vadot
90*c66ec88fSEmmanuel Vadot		gef_gpio: gpio@4,400 {
91*c66ec88fSEmmanuel Vadot			#gpio-cells = <2>;
92*c66ec88fSEmmanuel Vadot			compatible = "ge,imp3a-gpio";
93*c66ec88fSEmmanuel Vadot			reg = <0x4 0x400 0x24>;
94*c66ec88fSEmmanuel Vadot			gpio-controller;
95*c66ec88fSEmmanuel Vadot		};
96*c66ec88fSEmmanuel Vadot
97*c66ec88fSEmmanuel Vadot		wdt@4,800 {
98*c66ec88fSEmmanuel Vadot			compatible = "ge,imp3a-fpga-wdt", "gef,fpga-wdt-1.00",
99*c66ec88fSEmmanuel Vadot				"gef,fpga-wdt";
100*c66ec88fSEmmanuel Vadot			reg = <0x4 0x800 0x8>;
101*c66ec88fSEmmanuel Vadot			interrupts = <10 4>;
102*c66ec88fSEmmanuel Vadot			interrupt-parent = <&gef_pic>;
103*c66ec88fSEmmanuel Vadot		};
104*c66ec88fSEmmanuel Vadot
105*c66ec88fSEmmanuel Vadot		/* Second watchdog available, driver currently supports one.
106*c66ec88fSEmmanuel Vadot		wdt@4,808 {
107*c66ec88fSEmmanuel Vadot			compatible = "gef,imp3a-fpga-wdt", "gef,fpga-wdt-1.00",
108*c66ec88fSEmmanuel Vadot				"gef,fpga-wdt";
109*c66ec88fSEmmanuel Vadot			reg = <0x4 0x808 0x8>;
110*c66ec88fSEmmanuel Vadot			interrupts = <9 4>;
111*c66ec88fSEmmanuel Vadot			interrupt-parent = <&gef_pic>;
112*c66ec88fSEmmanuel Vadot		};
113*c66ec88fSEmmanuel Vadot		*/
114*c66ec88fSEmmanuel Vadot
115*c66ec88fSEmmanuel Vadot		nand@6,0 {
116*c66ec88fSEmmanuel Vadot			compatible = "fsl,elbc-fcm-nand";
117*c66ec88fSEmmanuel Vadot			reg = <0x6 0x0 0x40000>;
118*c66ec88fSEmmanuel Vadot		};
119*c66ec88fSEmmanuel Vadot
120*c66ec88fSEmmanuel Vadot		nand@7,0 {
121*c66ec88fSEmmanuel Vadot			compatible = "fsl,elbc-fcm-nand";
122*c66ec88fSEmmanuel Vadot			reg = <0x7 0x0 0x40000>;
123*c66ec88fSEmmanuel Vadot		};
124*c66ec88fSEmmanuel Vadot	};
125*c66ec88fSEmmanuel Vadot
126*c66ec88fSEmmanuel Vadot	soc: soc@fef00000 {
127*c66ec88fSEmmanuel Vadot		ranges = <0x0 0 0xfef00000 0x100000>;
128*c66ec88fSEmmanuel Vadot
129*c66ec88fSEmmanuel Vadot		i2c@3000 {
130*c66ec88fSEmmanuel Vadot			hwmon@48 {
131*c66ec88fSEmmanuel Vadot				compatible = "national,lm92";
132*c66ec88fSEmmanuel Vadot				reg = <0x48>;
133*c66ec88fSEmmanuel Vadot			};
134*c66ec88fSEmmanuel Vadot
135*c66ec88fSEmmanuel Vadot			hwmon@4c {
136*c66ec88fSEmmanuel Vadot				compatible = "adi,adt7461";
137*c66ec88fSEmmanuel Vadot				reg = <0x4c>;
138*c66ec88fSEmmanuel Vadot			};
139*c66ec88fSEmmanuel Vadot
140*c66ec88fSEmmanuel Vadot			rtc@51 {
141*c66ec88fSEmmanuel Vadot				compatible = "epson,rx8581";
142*c66ec88fSEmmanuel Vadot				reg = <0x51>;
143*c66ec88fSEmmanuel Vadot			};
144*c66ec88fSEmmanuel Vadot
145*c66ec88fSEmmanuel Vadot			eti@6b {
146*c66ec88fSEmmanuel Vadot				compatible = "dallas,ds1682";
147*c66ec88fSEmmanuel Vadot				reg = <0x6b>;
148*c66ec88fSEmmanuel Vadot			};
149*c66ec88fSEmmanuel Vadot		};
150*c66ec88fSEmmanuel Vadot
151*c66ec88fSEmmanuel Vadot		usb@22000 {
152*c66ec88fSEmmanuel Vadot			phy_type = "ulpi";
153*c66ec88fSEmmanuel Vadot			dr_mode = "host";
154*c66ec88fSEmmanuel Vadot		};
155*c66ec88fSEmmanuel Vadot
156*c66ec88fSEmmanuel Vadot		mdio@24520 {
157*c66ec88fSEmmanuel Vadot			phy0: ethernet-phy@0 {
158*c66ec88fSEmmanuel Vadot				interrupt-parent = <&gef_pic>;
159*c66ec88fSEmmanuel Vadot				interrupts = <0xc 0x4>;
160*c66ec88fSEmmanuel Vadot				reg = <0x1>;
161*c66ec88fSEmmanuel Vadot			};
162*c66ec88fSEmmanuel Vadot			phy1: ethernet-phy@1 {
163*c66ec88fSEmmanuel Vadot				interrupt-parent = <&gef_pic>;
164*c66ec88fSEmmanuel Vadot				interrupts = <0xb 0x4>;
165*c66ec88fSEmmanuel Vadot				reg = <0x2>;
166*c66ec88fSEmmanuel Vadot			};
167*c66ec88fSEmmanuel Vadot			tbi0: tbi-phy@11 {
168*c66ec88fSEmmanuel Vadot				reg = <0x11>;
169*c66ec88fSEmmanuel Vadot				device_type = "tbi-phy";
170*c66ec88fSEmmanuel Vadot			};
171*c66ec88fSEmmanuel Vadot		};
172*c66ec88fSEmmanuel Vadot
173*c66ec88fSEmmanuel Vadot		mdio@25520 {
174*c66ec88fSEmmanuel Vadot			tbi1: tbi-phy@11 {
175*c66ec88fSEmmanuel Vadot				reg = <0x11>;
176*c66ec88fSEmmanuel Vadot				device_type = "tbi-phy";
177*c66ec88fSEmmanuel Vadot			};
178*c66ec88fSEmmanuel Vadot		};
179*c66ec88fSEmmanuel Vadot
180*c66ec88fSEmmanuel Vadot		mdio@26520 {
181*c66ec88fSEmmanuel Vadot			status = "disabled";
182*c66ec88fSEmmanuel Vadot		};
183*c66ec88fSEmmanuel Vadot
184*c66ec88fSEmmanuel Vadot		enet0: ethernet@24000 {
185*c66ec88fSEmmanuel Vadot			tbi-handle = <&tbi0>;
186*c66ec88fSEmmanuel Vadot			phy-handle = <&phy0>;
187*c66ec88fSEmmanuel Vadot			phy-connection-type = "gmii";
188*c66ec88fSEmmanuel Vadot		};
189*c66ec88fSEmmanuel Vadot
190*c66ec88fSEmmanuel Vadot		enet1: ethernet@25000 {
191*c66ec88fSEmmanuel Vadot			tbi-handle = <&tbi1>;
192*c66ec88fSEmmanuel Vadot			phy-handle = <&phy1>;
193*c66ec88fSEmmanuel Vadot			phy-connection-type = "gmii";
194*c66ec88fSEmmanuel Vadot		};
195*c66ec88fSEmmanuel Vadot
196*c66ec88fSEmmanuel Vadot		enet2: ethernet@26000 {
197*c66ec88fSEmmanuel Vadot			status = "disabled";
198*c66ec88fSEmmanuel Vadot		};
199*c66ec88fSEmmanuel Vadot	};
200*c66ec88fSEmmanuel Vadot
201*c66ec88fSEmmanuel Vadot	pci0: pcie@fef08000 {
202*c66ec88fSEmmanuel Vadot		ranges = <0x2000000 0x0 0xc0000000 0 0xc0000000 0x0 0x20000000
203*c66ec88fSEmmanuel Vadot			  0x1000000 0x0 0x00000000 0 0xfe020000 0x0 0x10000>;
204*c66ec88fSEmmanuel Vadot		reg = <0 0xfef08000 0 0x1000>;
205*c66ec88fSEmmanuel Vadot
206*c66ec88fSEmmanuel Vadot		pcie@0 {
207*c66ec88fSEmmanuel Vadot			ranges = <0x2000000 0x0 0xc0000000
208*c66ec88fSEmmanuel Vadot				  0x2000000 0x0 0xc0000000
209*c66ec88fSEmmanuel Vadot				  0x0 0x20000000
210*c66ec88fSEmmanuel Vadot
211*c66ec88fSEmmanuel Vadot				  0x1000000 0x0 0x0
212*c66ec88fSEmmanuel Vadot				  0x1000000 0x0 0x0
213*c66ec88fSEmmanuel Vadot				  0x0 0x10000>;
214*c66ec88fSEmmanuel Vadot		};
215*c66ec88fSEmmanuel Vadot	};
216*c66ec88fSEmmanuel Vadot
217*c66ec88fSEmmanuel Vadot	pci1: pcie@fef09000 {
218*c66ec88fSEmmanuel Vadot		reg = <0 0xfef09000 0 0x1000>;
219*c66ec88fSEmmanuel Vadot		ranges = <0x2000000 0x0 0xa0000000 0 0xa0000000 0x0 0x20000000
220*c66ec88fSEmmanuel Vadot			  0x1000000 0x0 0x00000000 0 0xfe010000 0x0 0x10000>;
221*c66ec88fSEmmanuel Vadot
222*c66ec88fSEmmanuel Vadot		pcie@0 {
223*c66ec88fSEmmanuel Vadot			ranges = <0x2000000 0x0 0xa0000000
224*c66ec88fSEmmanuel Vadot				  0x2000000 0x0 0xa0000000
225*c66ec88fSEmmanuel Vadot				  0x0 0x20000000
226*c66ec88fSEmmanuel Vadot
227*c66ec88fSEmmanuel Vadot				  0x1000000 0x0 0x0
228*c66ec88fSEmmanuel Vadot				  0x1000000 0x0 0x0
229*c66ec88fSEmmanuel Vadot				  0x0 0x10000>;
230*c66ec88fSEmmanuel Vadot		};
231*c66ec88fSEmmanuel Vadot
232*c66ec88fSEmmanuel Vadot	};
233*c66ec88fSEmmanuel Vadot
234*c66ec88fSEmmanuel Vadot	pci2: pcie@fef0a000 {
235*c66ec88fSEmmanuel Vadot		reg = <0 0xfef0a000 0 0x1000>;
236*c66ec88fSEmmanuel Vadot		ranges = <0x2000000 0x0 0x80000000 0 0x80000000 0x0 0x20000000
237*c66ec88fSEmmanuel Vadot			  0x1000000 0x0 0x00000000 0 0xfe000000 0x0 0x10000>;
238*c66ec88fSEmmanuel Vadot
239*c66ec88fSEmmanuel Vadot		pcie@0 {
240*c66ec88fSEmmanuel Vadot			ranges = <0x2000000 0x0 0x80000000
241*c66ec88fSEmmanuel Vadot				  0x2000000 0x0 0x80000000
242*c66ec88fSEmmanuel Vadot				  0x0 0x20000000
243*c66ec88fSEmmanuel Vadot
244*c66ec88fSEmmanuel Vadot				  0x1000000 0x0 0x0
245*c66ec88fSEmmanuel Vadot				  0x1000000 0x0 0x0
246*c66ec88fSEmmanuel Vadot				  0x0 0x10000>;
247*c66ec88fSEmmanuel Vadot		};
248*c66ec88fSEmmanuel Vadot	};
249*c66ec88fSEmmanuel Vadot};
250*c66ec88fSEmmanuel Vadot
251*c66ec88fSEmmanuel Vadot/include/ "p2020si-post.dtsi"
252