Merge ../linus
[linux-2.6] / arch / powerpc / boot / dts / mpc8272ads.dts
1 /*
2  * MPC8272 ADS Device Tree Source
3  *
4  * Copyright 2005 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 = "MPC8272ADS";
14        compatible = "MPC8260ADS";
15        #address-cells = <1>;
16        #size-cells = <1>;
17        linux,phandle = <100>;
18
19        cpus {
20                #cpus = <1>;
21                #address-cells = <1>;
22                #size-cells = <0>;
23                linux,phandle = <200>;
24
25                PowerPC,8272@0 {
26                        device_type = "cpu";
27                        reg = <0>;
28                        d-cache-line-size = <20>;       // 32 bytes
29                        i-cache-line-size = <20>;       // 32 bytes
30                        d-cache-size = <4000>;          // L1, 16K
31                        i-cache-size = <4000>;          // L1, 16K
32                        timebase-frequency = <0>;
33                        bus-frequency = <0>;
34                        clock-frequency = <0>;
35                        32-bit;
36                        linux,phandle = <201>;
37                        linux,boot-cpu;
38                };
39        };
40
41        interrupt-controller@f8200000 {
42                linux,phandle = <f8200000>;
43                #address-cells = <0>;
44                #interrupt-cells = <2>;
45                interrupt-controller;
46                reg = <f8200000 f8200004>;
47                built-in;
48                device_type = "pci-pic";
49        };
50        memory {
51                device_type = "memory";
52                linux,phandle = <300>;
53                reg = <00000000 4000000 f4500000 00000020>;
54        };
55
56        soc8272@f0000000 {
57                #address-cells = <1>;
58                #size-cells = <1>;
59                #interrupt-cells = <2>;
60                device_type = "soc";
61                ranges = < 0 0 2 00000000 f0000000 00053000>;
62                reg = <f0000000 0>;
63
64                mdio@0 {
65                        device_type = "mdio";
66                        compatible = "fs_enet";
67                        reg = <0 0>;
68                        linux,phandle = <24520>;
69                        #address-cells = <1>;
70                        #size-cells = <0>;
71                        ethernet-phy@0 {
72                                linux,phandle = <2452000>;
73                                interrupt-parent = <10c00>;
74                                interrupts = <19 1>;
75                                reg = <0>;
76                                bitbang = [ 12 12 13 02 02 01 ];
77                                device_type = "ethernet-phy";
78                        };
79                        ethernet-phy@1 {
80                                linux,phandle = <2452001>;
81                                interrupt-parent = <10c00>;
82                                interrupts = <19 1>;
83                                bitbang = [ 12 12 13 02 02 01 ];
84                                reg = <3>;
85                                device_type = "ethernet-phy";
86                        };
87                };
88
89                ethernet@24000 {
90                        #address-cells = <1>;
91                        #size-cells = <0>;
92                        device_type = "network";
93                        device-id = <2>;
94                        compatible = "fs_enet";
95                        model = "FCC";
96                        reg = <11300 20 8400 100 11380 30>;
97                        mac-address = [ 00 11 2F 99 43 54 ];
98                        interrupts = <20 2>;
99                        interrupt-parent = <10c00>;
100                        phy-handle = <2452000>;
101                        rx-clock = <13>;
102                        tx-clock = <12>;
103                };
104
105                ethernet@25000 {
106                        device_type = "network";
107                        device-id = <3>;
108                        compatible = "fs_enet";
109                        model = "FCC";
110                        reg = <11320 20 8500 100 113b0 30>;
111                        mac-address = [ 00 11 2F 99 44 54 ];
112                        interrupts = <21 2>;
113                        interrupt-parent = <10c00>;
114                        phy-handle = <2452001>;
115                        rx-clock = <17>;
116                        tx-clock = <18>;
117                };
118
119                cpm@f0000000 {
120                        linux,phandle = <f0000000>;
121                        #address-cells = <1>;
122                        #size-cells = <1>;
123                        #interrupt-cells = <2>;
124                        device_type = "cpm";
125                        model = "CPM2";
126                        ranges = <00000000 00000000 3ffff>;
127                        reg = <10d80 3280>;
128                        command-proc = <119c0>;
129                        brg-frequency = <17D7840>;
130                        cpm_clk = <BEBC200>;
131
132                        scc@11a00 {
133                                device_type = "serial";
134                                compatible = "cpm_uart";
135                                model = "SCC";
136                                device-id = <2>;
137                                reg = <11a00 20 8000 100>;
138                                current-speed = <1c200>;
139                                interrupts = <28 2>;
140                                interrupt-parent = <10c00>;
141                                clock-setup = <0 00ffffff>;
142                                rx-clock = <1>;
143                                tx-clock = <1>;
144                        };
145
146                        scc@11a60 {
147                                device_type = "serial";
148                                compatible = "cpm_uart";
149                                model = "SCC";
150                                device-id = <5>;
151                                reg = <11a60 20 8300 100>;
152                                current-speed = <1c200>;
153                                interrupts = <2b 2>;
154                                interrupt-parent = <10c00>;
155                                clock-setup = <1b ffffff00>;
156                                rx-clock = <4>;
157                                tx-clock = <4>;
158                        };
159
160                };
161                interrupt-controller@10c00 {
162                        linux,phandle = <10c00>;
163                        #address-cells = <0>;
164                        #interrupt-cells = <2>;
165                        interrupt-controller;
166                        reg = <10c00 80>;
167                        built-in;
168                        device_type = "cpm-pic";
169                        compatible = "CPM2";
170                };
171                pci@0500 {
172                        linux,phandle = <0500>;
173                        #interrupt-cells = <1>;
174                        #size-cells = <2>;
175                        #address-cells = <3>;
176                        compatible = "8272";
177                        device_type = "pci";
178                        reg = <10430 4dc>;
179                        clock-frequency = <3f940aa>;
180                        interrupt-map-mask = <f800 0 0 7>;
181                        interrupt-map = <
182
183                                        /* IDSEL 0x16 */
184                                         b000 0 0 1 f8200000 40 0
185                                         b000 0 0 2 f8200000 41 0
186                                         b000 0 0 3 f8200000 42 0
187                                         b000 0 0 4 f8200000 43 0
188
189                                        /* IDSEL 0x17 */
190                                         b800 0 0 1 f8200000 43 0
191                                         b800 0 0 2 f8200000 40 0
192                                         b800 0 0 3 f8200000 41 0
193                                         b800 0 0 4 f8200000 42 0
194
195                                        /* IDSEL 0x18 */
196                                         c000 0 0 1 f8200000 42 0
197                                         c000 0 0 2 f8200000 43 0
198                                         c000 0 0 3 f8200000 40 0
199                                         c000 0 0 4 f8200000 41 0>;
200                        interrupt-parent = <10c00>;
201                        interrupts = <14 3>;
202                        bus-range = <0 0>;
203                        ranges = <02000000 0 80000000 80000000 0 40000000
204                                  01000000 0 00000000 f6000000 0 02000000>;
205                };
206
207 /* May need to remove if on a part without crypto engine */
208                crypto@30000 {
209                        device_type = "crypto";
210                        model = "SEC2";
211                        compatible = "talitos";
212                        reg = <30000 10000>;
213                        interrupts = <b 0>;
214                        interrupt-parent = <10c00>;
215                        num-channels = <4>;
216                        channel-fifo-len = <18>;
217                        exec-units-mask = <0000007e>;
218 /* desc mask is for rev1.x, we need runtime fixup for >=2.x */
219                        descriptor-types-mask = <01010ebf>;
220                };
221
222        };
223 };