blob: 551fc595075ac52cef0b82fbdc0271d1dc4ee06d [file] [log] [blame]
Michael Barkowski23308c52007-03-19 09:15:28 -05001/*
2 * MPC832x RDB Device Tree Source
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/ {
13 model = "MPC8323ERDB";
14 compatible = "MPC8323ERDB", "MPC832xRDB", "MPC83xxRDB";
15 #address-cells = <1>;
16 #size-cells = <1>;
17
Kumar Galaea082fa2007-12-12 01:46:12 -060018 aliases {
19 ethernet0 = &enet0;
20 ethernet1 = &enet1;
21 serial0 = &serial0;
22 serial1 = &serial1;
23 pci0 = &pci0;
24 };
25
Michael Barkowski23308c52007-03-19 09:15:28 -050026 cpus {
27 #address-cells = <1>;
28 #size-cells = <0>;
29
30 PowerPC,8323@0 {
31 device_type = "cpu";
32 reg = <0>;
33 d-cache-line-size = <20>; // 32 bytes
34 i-cache-line-size = <20>; // 32 bytes
35 d-cache-size = <4000>; // L1, 16K
36 i-cache-size = <4000>; // L1, 16K
37 timebase-frequency = <0>;
38 bus-frequency = <0>;
39 clock-frequency = <0>;
Michael Barkowski23308c52007-03-19 09:15:28 -050040 };
41 };
42
43 memory {
44 device_type = "memory";
45 reg = <00000000 04000000>;
46 };
47
48 soc8323@e0000000 {
49 #address-cells = <1>;
50 #size-cells = <1>;
Michael Barkowski23308c52007-03-19 09:15:28 -050051 device_type = "soc";
52 ranges = <0 e0000000 00100000>;
53 reg = <e0000000 00000200>;
54 bus-frequency = <0>;
55
56 wdt@200 {
57 device_type = "watchdog";
58 compatible = "mpc83xx_wdt";
59 reg = <200 100>;
60 };
61
62 i2c@3000 {
Kumar Galaec9686c2007-12-11 23:17:24 -060063 #address-cells = <1>;
64 #size-cells = <0>;
65 cell-index = <0>;
Michael Barkowski23308c52007-03-19 09:15:28 -050066 compatible = "fsl-i2c";
67 reg = <3000 100>;
68 interrupts = <e 8>;
69 interrupt-parent = <&pic>;
70 dfsrr;
71 };
72
Kumar Galaea082fa2007-12-12 01:46:12 -060073 serial0: serial@4500 {
74 cell-index = <0>;
Michael Barkowski23308c52007-03-19 09:15:28 -050075 device_type = "serial";
76 compatible = "ns16550";
77 reg = <4500 100>;
78 clock-frequency = <0>;
79 interrupts = <9 8>;
80 interrupt-parent = <&pic>;
81 };
82
Kumar Galaea082fa2007-12-12 01:46:12 -060083 serial1: serial@4600 {
84 cell-index = <1>;
Michael Barkowski23308c52007-03-19 09:15:28 -050085 device_type = "serial";
86 compatible = "ns16550";
87 reg = <4600 100>;
88 clock-frequency = <0>;
89 interrupts = <a 8>;
90 interrupt-parent = <&pic>;
91 };
92
93 crypto@30000 {
94 device_type = "crypto";
95 model = "SEC2";
96 compatible = "talitos";
97 reg = <30000 7000>;
98 interrupts = <b 8>;
99 interrupt-parent = <&pic>;
100 /* Rev. 2.2 */
101 num-channels = <1>;
102 channel-fifo-len = <18>;
103 exec-units-mask = <0000004c>;
104 descriptor-types-mask = <0122003f>;
105 };
106
Michael Barkowski23308c52007-03-19 09:15:28 -0500107 pic:pic@700 {
108 interrupt-controller;
109 #address-cells = <0>;
110 #interrupt-cells = <2>;
111 reg = <700 100>;
Michael Barkowski23308c52007-03-19 09:15:28 -0500112 device_type = "ipic";
113 };
114
115 par_io@1400 {
116 reg = <1400 100>;
117 device_type = "par_io";
118 num-ports = <7>;
119
120 ucc2pio:ucc_pin@02 {
121 pio-map = <
122 /* port pin dir open_drain assignment has_irq */
123 3 4 3 0 2 0 /* MDIO */
124 3 5 1 0 2 0 /* MDC */
125 3 15 2 0 1 0 /* RX_CLK (CLK16) */
126 3 17 2 0 1 0 /* TX_CLK (CLK3) */
127 0 12 1 0 1 0 /* TxD0 */
128 0 13 1 0 1 0 /* TxD1 */
129 0 14 1 0 1 0 /* TxD2 */
130 0 15 1 0 1 0 /* TxD3 */
131 0 16 2 0 1 0 /* RxD0 */
132 0 17 2 0 1 0 /* RxD1 */
133 0 18 2 0 1 0 /* RxD2 */
134 0 19 2 0 1 0 /* RxD3 */
135 0 1a 2 0 1 0 /* RX_ER */
136 0 1b 1 0 1 0 /* TX_ER */
137 0 1c 2 0 1 0 /* RX_DV */
138 0 1d 2 0 1 0 /* COL */
139 0 1e 1 0 1 0 /* TX_EN */
140 0 1f 2 0 1 0>; /* CRS */
141 };
142 ucc3pio:ucc_pin@03 {
143 pio-map = <
144 /* port pin dir open_drain assignment has_irq */
145 0 d 2 0 1 0 /* RX_CLK (CLK9) */
146 3 18 2 0 1 0 /* TX_CLK (CLK10) */
147 1 0 1 0 1 0 /* TxD0 */
148 1 1 1 0 1 0 /* TxD1 */
149 1 2 1 0 1 0 /* TxD2 */
150 1 3 1 0 1 0 /* TxD3 */
151 1 4 2 0 1 0 /* RxD0 */
152 1 5 2 0 1 0 /* RxD1 */
153 1 6 2 0 1 0 /* RxD2 */
154 1 7 2 0 1 0 /* RxD3 */
155 1 8 2 0 1 0 /* RX_ER */
156 1 9 1 0 1 0 /* TX_ER */
157 1 a 2 0 1 0 /* RX_DV */
158 1 b 2 0 1 0 /* COL */
159 1 c 1 0 1 0 /* TX_EN */
160 1 d 2 0 1 0>; /* CRS */
161 };
162 };
163 };
164
165 qe@e0100000 {
166 #address-cells = <1>;
167 #size-cells = <1>;
168 device_type = "qe";
Anton Vorontsova2dd70a2008-01-24 18:39:59 +0300169 compatible = "fsl,qe";
Michael Barkowski23308c52007-03-19 09:15:28 -0500170 ranges = <0 e0100000 00100000>;
171 reg = <e0100000 480>;
172 brg-frequency = <0>;
173 bus-frequency = <BCD3D80>;
174
175 muram@10000 {
Paul Gortmaker390167e2008-01-28 02:27:51 -0500176 #address-cells = <1>;
177 #size-cells = <1>;
Anton Vorontsova2dd70a2008-01-24 18:39:59 +0300178 compatible = "fsl,qe-muram", "fsl,cpm-muram";
Michael Barkowski23308c52007-03-19 09:15:28 -0500179 ranges = <0 00010000 00004000>;
180
181 data-only@0 {
Anton Vorontsova2dd70a2008-01-24 18:39:59 +0300182 compatible = "fsl,qe-muram-data",
183 "fsl,cpm-muram-data";
Michael Barkowski23308c52007-03-19 09:15:28 -0500184 reg = <0 4000>;
185 };
186 };
187
188 spi@4c0 {
Anton Vorontsovf3a2b292008-01-24 18:40:07 +0300189 cell-index = <0>;
190 compatible = "fsl,spi";
Michael Barkowski23308c52007-03-19 09:15:28 -0500191 reg = <4c0 40>;
192 interrupts = <2>;
193 interrupt-parent = <&qeic>;
Anton Vorontsov8237bf02007-08-23 15:36:00 +0400194 mode = "cpu-qe";
Michael Barkowski23308c52007-03-19 09:15:28 -0500195 };
196
197 spi@500 {
Anton Vorontsovf3a2b292008-01-24 18:40:07 +0300198 cell-index = <1>;
199 compatible = "fsl,spi";
Michael Barkowski23308c52007-03-19 09:15:28 -0500200 reg = <500 40>;
201 interrupts = <1>;
202 interrupt-parent = <&qeic>;
203 mode = "cpu";
204 };
205
Kumar Galae77b28e2007-12-12 00:28:35 -0600206 enet0: ucc@3000 {
Michael Barkowski23308c52007-03-19 09:15:28 -0500207 device_type = "network";
208 compatible = "ucc_geth";
209 model = "UCC";
Kumar Galae77b28e2007-12-12 00:28:35 -0600210 cell-index = <2>;
Michael Barkowski23308c52007-03-19 09:15:28 -0500211 device-id = <2>;
212 reg = <3000 200>;
213 interrupts = <21>;
214 interrupt-parent = <&qeic>;
Timur Tabieae98262007-06-22 14:33:15 -0500215 local-mac-address = [ 00 00 00 00 00 00 ];
Timur Tabi9fb1e352007-12-03 15:17:59 -0600216 rx-clock-name = "clk16";
217 tx-clock-name = "clk3";
Michael Barkowski23308c52007-03-19 09:15:28 -0500218 phy-handle = <&phy00>;
219 pio-handle = <&ucc2pio>;
220 };
221
Kumar Galae77b28e2007-12-12 00:28:35 -0600222 enet1: ucc@2200 {
Michael Barkowski23308c52007-03-19 09:15:28 -0500223 device_type = "network";
224 compatible = "ucc_geth";
225 model = "UCC";
Kumar Galae77b28e2007-12-12 00:28:35 -0600226 cell-index = <3>;
Michael Barkowski23308c52007-03-19 09:15:28 -0500227 device-id = <3>;
228 reg = <2200 200>;
229 interrupts = <22>;
230 interrupt-parent = <&qeic>;
Timur Tabieae98262007-06-22 14:33:15 -0500231 local-mac-address = [ 00 00 00 00 00 00 ];
Timur Tabi9fb1e352007-12-03 15:17:59 -0600232 rx-clock-name = "clk9";
233 tx-clock-name = "clk10";
Michael Barkowski23308c52007-03-19 09:15:28 -0500234 phy-handle = <&phy04>;
235 pio-handle = <&ucc3pio>;
236 };
237
238 mdio@3120 {
239 #address-cells = <1>;
240 #size-cells = <0>;
241 reg = <3120 18>;
Anton Vorontsovd0a2f822008-01-24 18:40:01 +0300242 compatible = "fsl,ucc-mdio";
Michael Barkowski23308c52007-03-19 09:15:28 -0500243
244 phy00:ethernet-phy@00 {
245 interrupt-parent = <&pic>;
246 interrupts = <0>;
247 reg = <0>;
248 device_type = "ethernet-phy";
Michael Barkowski23308c52007-03-19 09:15:28 -0500249 };
250 phy04:ethernet-phy@04 {
251 interrupt-parent = <&pic>;
252 interrupts = <0>;
253 reg = <4>;
254 device_type = "ethernet-phy";
Michael Barkowski23308c52007-03-19 09:15:28 -0500255 };
256 };
257
Anton Vorontsova2dd70a2008-01-24 18:39:59 +0300258 qeic:interrupt-controller@80 {
Michael Barkowski23308c52007-03-19 09:15:28 -0500259 interrupt-controller;
Anton Vorontsova2dd70a2008-01-24 18:39:59 +0300260 compatible = "fsl,qe-ic";
Michael Barkowski23308c52007-03-19 09:15:28 -0500261 #address-cells = <0>;
262 #interrupt-cells = <1>;
263 reg = <80 80>;
Michael Barkowski23308c52007-03-19 09:15:28 -0500264 big-endian;
265 interrupts = <20 8 21 8>; //high:32 low:33
266 interrupt-parent = <&pic>;
267 };
268 };
Kumar Gala1b3c5cda2007-09-12 18:23:46 -0500269
Kumar Galaea082fa2007-12-12 01:46:12 -0600270 pci0: pci@e0008500 {
271 cell-index = <1>;
Kumar Gala1b3c5cda2007-09-12 18:23:46 -0500272 interrupt-map-mask = <f800 0 0 7>;
273 interrupt-map = <
274 /* IDSEL 0x10 AD16 (USB) */
275 8000 0 0 1 &pic 11 8
276
277 /* IDSEL 0x11 AD17 (Mini1)*/
278 8800 0 0 1 &pic 12 8
279 8800 0 0 2 &pic 13 8
280 8800 0 0 3 &pic 14 8
281 8800 0 0 4 &pic 30 8
282
283 /* IDSEL 0x12 AD18 (PCI/Mini2) */
284 9000 0 0 1 &pic 13 8
285 9000 0 0 2 &pic 14 8
286 9000 0 0 3 &pic 30 8
287 9000 0 0 4 &pic 11 8>;
288
289 interrupt-parent = <&pic>;
290 interrupts = <42 8>;
291 bus-range = <0 0>;
292 ranges = <42000000 0 80000000 80000000 0 10000000
293 02000000 0 90000000 90000000 0 10000000
294 01000000 0 d0000000 d0000000 0 04000000>;
295 clock-frequency = <0>;
296 #interrupt-cells = <1>;
297 #size-cells = <2>;
298 #address-cells = <3>;
299 reg = <e0008500 100>;
300 compatible = "fsl,mpc8349-pci";
301 device_type = "pci";
302 };
Michael Barkowski23308c52007-03-19 09:15:28 -0500303};