Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mfashe...
[linux-2.6] / arch / powerpc / boot / dts / mpc866ads.dts
1 /*
2  * MPC866 ADS Device Tree Source
3  *
4  * Copyright 2006 MontaVista Software, Inc.
5  * Copyright 2008 Freescale Semiconductor, Inc.
6  *
7  * This program is free software; you can redistribute  it and/or modify it
8  * under  the terms of  the GNU General  Public License as published by the
9  * Free Software Foundation;  either version 2 of the  License, or (at your
10  * option) any later version.
11  */
12
13 /dts-v1/;
14
15 / {
16         model = "MPC866ADS";
17         compatible = "fsl,mpc866ads";
18         #address-cells = <1>;
19         #size-cells = <1>;
20
21         cpus {
22                 #address-cells = <1>;
23                 #size-cells = <0>;
24
25                 PowerPC,866@0 {
26                         device_type = "cpu";
27                         reg = <0x0>;
28                         d-cache-line-size = <16>;       // 16 bytes
29                         i-cache-line-size = <16>;       // 16 bytes
30                         d-cache-size = <0x2000>;                // L1, 8K
31                         i-cache-size = <0x4000>;                // L1, 16K
32                         timebase-frequency = <0>;
33                         bus-frequency = <0>;
34                         clock-frequency = <0>;
35                         interrupts = <15 2>;    // decrementer interrupt
36                         interrupt-parent = <&PIC>;
37                 };
38         };
39
40         memory {
41                 device_type = "memory";
42                 reg = <0x0 0x800000>;
43         };
44
45         localbus@ff000100 {
46                 compatible = "fsl,mpc866-localbus", "fsl,pq1-localbus";
47                 #address-cells = <2>;
48                 #size-cells = <1>;
49                 reg = <0xff000100 0x40>;
50
51                 ranges = <
52                         0x1 0x0 0xff080000 0x8000
53                         0x5 0x0 0xff0a0000 0x8000
54                 >;
55
56                 board-control@1,0 {
57                         reg = <0x1 0x0 0x20 0x5 0x300 0x4>;
58                         compatible = "fsl,mpc866ads-bcsr";
59                 };
60         };
61
62         soc@ff000000 {
63                 #address-cells = <1>;
64                 #size-cells = <1>;
65                 device_type = "soc";
66                 ranges = <0x0 0xff000000 0x100000>;
67                 reg = <0xff000000 0x200>;
68                 bus-frequency = <0>;
69
70                 mdio@e00 {
71                         compatible = "fsl,mpc866-fec-mdio", "fsl,pq1-fec-mdio";
72                         reg = <0xe00 0x188>;
73                         #address-cells = <1>;
74                         #size-cells = <0>;
75                         PHY: ethernet-phy@f {
76                                 reg = <0xf>;
77                                 device_type = "ethernet-phy";
78                         };
79                 };
80
81                 ethernet@e00 {
82                         device_type = "network";
83                         compatible = "fsl,mpc866-fec-enet",
84                                      "fsl,pq1-fec-enet";
85                         reg = <0xe00 0x188>;
86                         local-mac-address = [ 00 00 00 00 00 00 ];
87                         interrupts = <3 1>;
88                         interrupt-parent = <&PIC>;
89                         phy-handle = <&PHY>;
90                         linux,network-index = <0>;
91                 };
92
93                 PIC: pic@0 {
94                         interrupt-controller;
95                         #interrupt-cells = <2>;
96                         reg = <0x0 0x24>;
97                         compatible = "fsl,mpc866-pic", "fsl,pq1-pic";
98                 };
99
100                 cpm@9c0 {
101                         #address-cells = <1>;
102                         #size-cells = <1>;
103                         compatible = "fsl,mpc866-cpm", "fsl,cpm1";
104                         ranges;
105                         reg = <0x9c0 0x40>;
106                         brg-frequency = <0>;
107                         interrupts = <0 2>;     // cpm error interrupt
108                         interrupt-parent = <&CPM_PIC>;
109
110                         muram@2000 {
111                                 #address-cells = <1>;
112                                 #size-cells = <1>;
113                                 ranges = <0x0 0x2000 0x2000>;
114
115                                 data@0 {
116                                         compatible = "fsl,cpm-muram-data";
117                                         reg = <0x0 0x1c00>;
118                                 };
119                         };
120
121                         brg@9f0 {
122                                 compatible = "fsl,mpc866-brg",
123                                              "fsl,cpm1-brg",
124                                              "fsl,cpm-brg";
125                                 reg = <0x9f0 0x10>;
126                                 clock-frequency = <0>;
127                         };
128
129                         CPM_PIC: pic@930 {
130                                 interrupt-controller;
131                                 #address-cells = <0>;
132                                 #interrupt-cells = <1>;
133                                 interrupts = <5 2 0 2>;
134                                 interrupt-parent = <&PIC>;
135                                 reg = <0x930 0x20>;
136                                 compatible = "fsl,mpc866-cpm-pic",
137                                              "fsl,cpm1-pic";
138                         };
139
140
141                         serial@a80 {
142                                 device_type = "serial";
143                                 compatible = "fsl,mpc866-smc-uart",
144                                              "fsl,cpm1-smc-uart";
145                                 reg = <0xa80 0x10 0x3e80 0x40>;
146                                 interrupts = <4>;
147                                 interrupt-parent = <&CPM_PIC>;
148                                 fsl,cpm-brg = <1>;
149                                 fsl,cpm-command = <0x90>;
150                         };
151
152                         serial@a90 {
153                                 device_type = "serial";
154                                 compatible = "fsl,mpc866-smc-uart",
155                                              "fsl,cpm1-smc-uart";
156                                 reg = <0xa90 0x10 0x3f80 0x40>;
157                                 interrupts = <3>;
158                                 interrupt-parent = <&CPM_PIC>;
159                                 fsl,cpm-brg = <2>;
160                                 fsl,cpm-command = <0xd0>;
161                         };
162
163                         ethernet@a00 {
164                                 device_type = "network";
165                                 compatible = "fsl,mpc866-scc-enet",
166                                              "fsl,cpm1-scc-enet";
167                                 reg = <0xa00 0x18 0x3c00 0x100>;
168                                 local-mac-address = [ 00 00 00 00 00 00 ];
169                                 interrupts = <30>;
170                                 interrupt-parent = <&CPM_PIC>;
171                                 fsl,cpm-command = <0000>;
172                                 linux,network-index = <1>;
173                         };
174
175                         i2c@860 {
176                                 compatible = "fsl,mpc866-i2c",
177                                              "fsl,cpm1-i2c";
178                                 reg = <0x860 0x20 0x3c80 0x30>;
179                                 interrupts = <16>;
180                                 interrupt-parent = <&CPM_PIC>;
181                                 fsl,cpm-command = <0x10>;
182                                 #address-cells = <1>;
183                                 #size-cells = <0>;
184                         };
185                 };
186         };
187
188         chosen {
189                 linux,stdout-path = "/soc/cpm/serial@a80";
190         };
191 };