blob: f086fac5921995a9c3f178516adc0a5e1b48eba5 [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 {
Anton Vorontsova2dd70a2008-01-24 18:39:59 +0300176 compatible = "fsl,qe-muram", "fsl,cpm-muram";
Michael Barkowski23308c52007-03-19 09:15:28 -0500177 ranges = <0 00010000 00004000>;
178
179 data-only@0 {
Anton Vorontsova2dd70a2008-01-24 18:39:59 +0300180 compatible = "fsl,qe-muram-data",
181 "fsl,cpm-muram-data";
Michael Barkowski23308c52007-03-19 09:15:28 -0500182 reg = <0 4000>;
183 };
184 };
185
186 spi@4c0 {
Anton Vorontsovf3a2b292008-01-24 18:40:07 +0300187 cell-index = <0>;
188 compatible = "fsl,spi";
Michael Barkowski23308c52007-03-19 09:15:28 -0500189 reg = <4c0 40>;
190 interrupts = <2>;
191 interrupt-parent = <&qeic>;
Anton Vorontsov8237bf02007-08-23 15:36:00 +0400192 mode = "cpu-qe";
Michael Barkowski23308c52007-03-19 09:15:28 -0500193 };
194
195 spi@500 {
Anton Vorontsovf3a2b292008-01-24 18:40:07 +0300196 cell-index = <1>;
197 compatible = "fsl,spi";
Michael Barkowski23308c52007-03-19 09:15:28 -0500198 reg = <500 40>;
199 interrupts = <1>;
200 interrupt-parent = <&qeic>;
201 mode = "cpu";
202 };
203
Kumar Galae77b28e2007-12-12 00:28:35 -0600204 enet0: ucc@3000 {
Michael Barkowski23308c52007-03-19 09:15:28 -0500205 device_type = "network";
206 compatible = "ucc_geth";
207 model = "UCC";
Kumar Galae77b28e2007-12-12 00:28:35 -0600208 cell-index = <2>;
Michael Barkowski23308c52007-03-19 09:15:28 -0500209 device-id = <2>;
210 reg = <3000 200>;
211 interrupts = <21>;
212 interrupt-parent = <&qeic>;
Timur Tabieae98262007-06-22 14:33:15 -0500213 local-mac-address = [ 00 00 00 00 00 00 ];
Timur Tabi9fb1e352007-12-03 15:17:59 -0600214 rx-clock-name = "clk16";
215 tx-clock-name = "clk3";
Michael Barkowski23308c52007-03-19 09:15:28 -0500216 phy-handle = <&phy00>;
217 pio-handle = <&ucc2pio>;
218 };
219
Kumar Galae77b28e2007-12-12 00:28:35 -0600220 enet1: ucc@2200 {
Michael Barkowski23308c52007-03-19 09:15:28 -0500221 device_type = "network";
222 compatible = "ucc_geth";
223 model = "UCC";
Kumar Galae77b28e2007-12-12 00:28:35 -0600224 cell-index = <3>;
Michael Barkowski23308c52007-03-19 09:15:28 -0500225 device-id = <3>;
226 reg = <2200 200>;
227 interrupts = <22>;
228 interrupt-parent = <&qeic>;
Timur Tabieae98262007-06-22 14:33:15 -0500229 local-mac-address = [ 00 00 00 00 00 00 ];
Timur Tabi9fb1e352007-12-03 15:17:59 -0600230 rx-clock-name = "clk9";
231 tx-clock-name = "clk10";
Michael Barkowski23308c52007-03-19 09:15:28 -0500232 phy-handle = <&phy04>;
233 pio-handle = <&ucc3pio>;
234 };
235
236 mdio@3120 {
237 #address-cells = <1>;
238 #size-cells = <0>;
239 reg = <3120 18>;
Anton Vorontsovd0a2f822008-01-24 18:40:01 +0300240 compatible = "fsl,ucc-mdio";
Michael Barkowski23308c52007-03-19 09:15:28 -0500241
242 phy00:ethernet-phy@00 {
243 interrupt-parent = <&pic>;
244 interrupts = <0>;
245 reg = <0>;
246 device_type = "ethernet-phy";
Michael Barkowski23308c52007-03-19 09:15:28 -0500247 };
248 phy04:ethernet-phy@04 {
249 interrupt-parent = <&pic>;
250 interrupts = <0>;
251 reg = <4>;
252 device_type = "ethernet-phy";
Michael Barkowski23308c52007-03-19 09:15:28 -0500253 };
254 };
255
Anton Vorontsova2dd70a2008-01-24 18:39:59 +0300256 qeic:interrupt-controller@80 {
Michael Barkowski23308c52007-03-19 09:15:28 -0500257 interrupt-controller;
Anton Vorontsova2dd70a2008-01-24 18:39:59 +0300258 compatible = "fsl,qe-ic";
Michael Barkowski23308c52007-03-19 09:15:28 -0500259 #address-cells = <0>;
260 #interrupt-cells = <1>;
261 reg = <80 80>;
Michael Barkowski23308c52007-03-19 09:15:28 -0500262 big-endian;
263 interrupts = <20 8 21 8>; //high:32 low:33
264 interrupt-parent = <&pic>;
265 };
266 };
Kumar Gala1b3c5cda2007-09-12 18:23:46 -0500267
Kumar Galaea082fa2007-12-12 01:46:12 -0600268 pci0: pci@e0008500 {
269 cell-index = <1>;
Kumar Gala1b3c5cda2007-09-12 18:23:46 -0500270 interrupt-map-mask = <f800 0 0 7>;
271 interrupt-map = <
272 /* IDSEL 0x10 AD16 (USB) */
273 8000 0 0 1 &pic 11 8
274
275 /* IDSEL 0x11 AD17 (Mini1)*/
276 8800 0 0 1 &pic 12 8
277 8800 0 0 2 &pic 13 8
278 8800 0 0 3 &pic 14 8
279 8800 0 0 4 &pic 30 8
280
281 /* IDSEL 0x12 AD18 (PCI/Mini2) */
282 9000 0 0 1 &pic 13 8
283 9000 0 0 2 &pic 14 8
284 9000 0 0 3 &pic 30 8
285 9000 0 0 4 &pic 11 8>;
286
287 interrupt-parent = <&pic>;
288 interrupts = <42 8>;
289 bus-range = <0 0>;
290 ranges = <42000000 0 80000000 80000000 0 10000000
291 02000000 0 90000000 90000000 0 10000000
292 01000000 0 d0000000 d0000000 0 04000000>;
293 clock-frequency = <0>;
294 #interrupt-cells = <1>;
295 #size-cells = <2>;
296 #address-cells = <3>;
297 reg = <e0008500 100>;
298 compatible = "fsl,mpc8349-pci";
299 device_type = "pci";
300 };
Michael Barkowski23308c52007-03-19 09:15:28 -0500301};