Linux 3.17-rc2
[linux/fpc-iii.git] / arch / powerpc / boot / dts / mpc866ads.dts
blob34c1f48b1a09835b5d73abda38ea5ffad15ce603
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  */
13 /dts-v1/;
15 / {
16         model = "MPC866ADS";
17         compatible = "fsl,mpc866ads";
18         #address-cells = <1>;
19         #size-cells = <1>;
21         cpus {
22                 #address-cells = <1>;
23                 #size-cells = <0>;
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         };
40         memory {
41                 device_type = "memory";
42                 reg = <0x0 0x800000>;
43         };
45         localbus@ff000100 {
46                 compatible = "fsl,mpc866-localbus", "fsl,pq1-localbus";
47                 #address-cells = <2>;
48                 #size-cells = <1>;
49                 reg = <0xff000100 0x40>;
51                 ranges = <
52                         0x1 0x0 0xff080000 0x8000
53                         0x5 0x0 0xff0a0000 0x8000
54                 >;
56                 board-control@1,0 {
57                         reg = <0x1 0x0 0x20 0x5 0x300 0x4>;
58                         compatible = "fsl,mpc866ads-bcsr";
59                 };
60         };
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>;
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                         };
78                 };
80                 ethernet@e00 {
81                         device_type = "network";
82                         compatible = "fsl,mpc866-fec-enet",
83                                      "fsl,pq1-fec-enet";
84                         reg = <0xe00 0x188>;
85                         local-mac-address = [ 00 00 00 00 00 00 ];
86                         interrupts = <3 1>;
87                         interrupt-parent = <&PIC>;
88                         phy-handle = <&PHY>;
89                         linux,network-index = <0>;
90                 };
92                 PIC: pic@0 {
93                         interrupt-controller;
94                         #interrupt-cells = <2>;
95                         reg = <0x0 0x24>;
96                         compatible = "fsl,mpc866-pic", "fsl,pq1-pic";
97                 };
99                 cpm@9c0 {
100                         #address-cells = <1>;
101                         #size-cells = <1>;
102                         compatible = "fsl,mpc866-cpm", "fsl,cpm1";
103                         ranges;
104                         reg = <0x9c0 0x40>;
105                         brg-frequency = <0>;
106                         interrupts = <0 2>;     // cpm error interrupt
107                         interrupt-parent = <&CPM_PIC>;
109                         muram@2000 {
110                                 #address-cells = <1>;
111                                 #size-cells = <1>;
112                                 ranges = <0x0 0x2000 0x2000>;
114                                 data@0 {
115                                         compatible = "fsl,cpm-muram-data";
116                                         reg = <0x0 0x1c00>;
117                                 };
118                         };
120                         brg@9f0 {
121                                 compatible = "fsl,mpc866-brg",
122                                              "fsl,cpm1-brg",
123                                              "fsl,cpm-brg";
124                                 reg = <0x9f0 0x10>;
125                                 clock-frequency = <0>;
126                         };
128                         CPM_PIC: pic@930 {
129                                 interrupt-controller;
130                                 #address-cells = <0>;
131                                 #interrupt-cells = <1>;
132                                 interrupts = <5 2 0 2>;
133                                 interrupt-parent = <&PIC>;
134                                 reg = <0x930 0x20>;
135                                 compatible = "fsl,mpc866-cpm-pic",
136                                              "fsl,cpm1-pic";
137                         };
140                         serial@a80 {
141                                 device_type = "serial";
142                                 compatible = "fsl,mpc866-smc-uart",
143                                              "fsl,cpm1-smc-uart";
144                                 reg = <0xa80 0x10 0x3e80 0x40>;
145                                 interrupts = <4>;
146                                 interrupt-parent = <&CPM_PIC>;
147                                 fsl,cpm-brg = <1>;
148                                 fsl,cpm-command = <0x90>;
149                         };
151                         serial@a90 {
152                                 device_type = "serial";
153                                 compatible = "fsl,mpc866-smc-uart",
154                                              "fsl,cpm1-smc-uart";
155                                 reg = <0xa90 0x10 0x3f80 0x40>;
156                                 interrupts = <3>;
157                                 interrupt-parent = <&CPM_PIC>;
158                                 fsl,cpm-brg = <2>;
159                                 fsl,cpm-command = <0xd0>;
160                         };
162                         ethernet@a00 {
163                                 device_type = "network";
164                                 compatible = "fsl,mpc866-scc-enet",
165                                              "fsl,cpm1-scc-enet";
166                                 reg = <0xa00 0x18 0x3c00 0x100>;
167                                 local-mac-address = [ 00 00 00 00 00 00 ];
168                                 interrupts = <30>;
169                                 interrupt-parent = <&CPM_PIC>;
170                                 fsl,cpm-command = <0000>;
171                                 linux,network-index = <1>;
172                         };
174                         i2c@860 {
175                                 compatible = "fsl,mpc866-i2c",
176                                              "fsl,cpm1-i2c";
177                                 reg = <0x860 0x20 0x3c80 0x30>;
178                                 interrupts = <16>;
179                                 interrupt-parent = <&CPM_PIC>;
180                                 fsl,cpm-command = <0x10>;
181                                 #address-cells = <1>;
182                                 #size-cells = <0>;
183                         };
184                 };
185         };
187         chosen {
188                 linux,stdout-path = "/soc/cpm/serial@a80";
189         };