xref: /openbmc/linux/arch/powerpc/boot/dts/ep8248e.dts (revision e3d786a3)
1/*
2 * Device Tree for the Embedded Planet EP8248E board running PlanetCore.
3 *
4 * Copyright 2007 Freescale Semiconductor Inc.
5 *
6 * This program is free software; you can redistribute  it and/or modify it
7 * under  the terms of  the GNU General  Public License as published by the
8 * Free Software Foundation;  either version 2 of the  License, or (at your
9 * option) any later version.
10 */
11
12/dts-v1/;
13/ {
14	model = "EP8248E";
15	compatible = "fsl,ep8248e";
16	#address-cells = <1>;
17	#size-cells = <1>;
18
19	aliases {
20		planetcore-SMC1 = &smc1;
21		planetcore-SCC1 = &scc1;
22		ethernet0 = &eth0;
23		ethernet1 = &eth1;
24		serial0 = &smc1;
25		serial1 = &scc1;
26	};
27
28	cpus {
29		#address-cells = <1>;
30		#size-cells = <0>;
31
32		PowerPC,8248@0 {
33			device_type = "cpu";
34			reg = <0>;
35			d-cache-line-size = <32>;
36			i-cache-line-size = <32>;
37			d-cache-size = <16384>;
38			i-cache-size = <16384>;
39			timebase-frequency = <0>;
40			clock-frequency = <0>;
41		};
42	};
43
44	localbus@f0010100 {
45		compatible = "fsl,mpc8248-localbus",
46		             "fsl,pq2-localbus",
47		             "simple-bus";
48		#address-cells = <2>;
49		#size-cells = <1>;
50		reg = <0xf0010100 0x40>;
51
52		ranges = <0 0 0xfc000000 0x04000000
53		          1 0 0xfa000000 0x00008000>;
54
55		flash@0,3800000 {
56			compatible = "cfi-flash";
57			reg = <0 0x3800000 0x800000>;
58			bank-width = <4>;
59			device-width = <2>;
60		};
61
62		bcsr@1,0 {
63			#address-cells = <2>;
64			#size-cells = <1>;
65			reg = <1 0 0x10>;
66			compatible = "fsl,ep8248e-bcsr";
67			ranges;
68
69			mdio {
70				compatible = "fsl,ep8248e-mdio-bitbang";
71				#address-cells = <1>;
72				#size-cells = <0>;
73				reg = <1 8 1>;
74
75				PHY0: ethernet-phy@0 {
76					interrupt-parent = <&PIC>;
77					reg = <0>;
78				};
79
80				PHY1: ethernet-phy@1 {
81					interrupt-parent = <&PIC>;
82					reg = <1>;
83				};
84			};
85		};
86	};
87
88	memory {
89		device_type = "memory";
90		reg = <0 0>;
91	};
92
93	soc@f0000000 {
94		#address-cells = <1>;
95		#size-cells = <1>;
96		compatible = "fsl,mpc8248-immr", "fsl,pq2-soc", "simple-bus";
97		ranges = <0x00000000 0xf0000000 0x00053000>;
98
99		// Temporary until code stops depending on it.
100		device_type = "soc";
101
102		// Temporary -- will go away once kernel uses ranges for get_immrbase().
103		reg = <0xf0000000 0x00053000>;
104
105		cpm@119c0 {
106			#address-cells = <1>;
107			#size-cells = <1>;
108			#interrupt-cells = <2>;
109			compatible = "fsl,mpc8248-cpm", "fsl,cpm2",
110			             "simple-bus";
111			reg = <0x119c0 0x30>;
112			ranges;
113
114			muram {
115				#address-cells = <1>;
116				#size-cells = <1>;
117				ranges = <0 0 0x10000>;
118
119				data@0 {
120					compatible = "fsl,cpm-muram-data";
121					reg = <0 0x2000 0x9800 0x800>;
122				};
123			};
124
125			brg@119f0 {
126				compatible = "fsl,mpc8248-brg",
127				             "fsl,cpm2-brg",
128				             "fsl,cpm-brg";
129				reg = <0x119f0 0x10 0x115f0 0x10>;
130			};
131
132			/* Monitor port/SMC1 */
133			smc1: serial@11a80 {
134				device_type = "serial";
135				compatible = "fsl,mpc8248-smc-uart",
136				             "fsl,cpm2-smc-uart";
137				reg = <0x11a80 0x20 0x87fc 2>;
138				interrupts = <4 8>;
139				interrupt-parent = <&PIC>;
140				fsl,cpm-brg = <7>;
141				fsl,cpm-command = <0x1d000000>;
142				linux,planetcore-label = "SMC1";
143			};
144
145			/* "Serial" port/SCC1 */
146			scc1: serial@11a00 {
147				device_type = "serial";
148				compatible = "fsl,mpc8248-scc-uart",
149				             "fsl,cpm2-scc-uart";
150				reg = <0x11a00 0x20 0x8000 0x100>;
151				interrupts = <40 8>;
152				interrupt-parent = <&PIC>;
153				fsl,cpm-brg = <1>;
154				fsl,cpm-command = <0x00800000>;
155				linux,planetcore-label = "SCC1";
156			};
157
158			eth0: ethernet@11300 {
159				device_type = "network";
160				compatible = "fsl,mpc8248-fcc-enet",
161				             "fsl,cpm2-fcc-enet";
162				reg = <0x11300 0x20 0x8400 0x100 0x11390 1>;
163				local-mac-address = [ 00 00 00 00 00 00 ];
164				interrupts = <32 8>;
165				interrupt-parent = <&PIC>;
166				phy-handle = <&PHY0>;
167				linux,network-index = <0>;
168				fsl,cpm-command = <0x12000300>;
169			};
170
171			eth1: ethernet@11320 {
172				device_type = "network";
173				compatible = "fsl,mpc8248-fcc-enet",
174				             "fsl,cpm2-fcc-enet";
175				reg = <0x11320 0x20 0x8500 0x100 0x113b0 1>;
176				local-mac-address = [ 00 00 00 00 00 00 ];
177				interrupts = <33 8>;
178				interrupt-parent = <&PIC>;
179				phy-handle = <&PHY1>;
180				linux,network-index = <1>;
181				fsl,cpm-command = <0x16200300>;
182			};
183
184			usb@11b60 {
185				#address-cells = <1>;
186				#size-cells = <0>;
187				compatible = "fsl,mpc8248-usb",
188				             "fsl,cpm2-usb";
189				reg = <0x11b60 0x18 0x8b00 0x100>;
190				interrupt-parent = <&PIC>;
191				interrupts = <11 8>;
192				fsl,cpm-command = <0x2e600000>;
193			};
194		};
195
196		PIC: interrupt-controller@10c00 {
197			#interrupt-cells = <2>;
198			interrupt-controller;
199			reg = <0x10c00 0x80>;
200			compatible = "fsl,mpc8248-pic", "fsl,pq2-pic";
201		};
202	};
203};
204