pinctrl: make a copy of pinmux map
[linux/fpc-iii.git] / arch / powerpc / boot / dts / ep8248e.dts
blob756758fb5b7b45369fc7f3138eea3ae5f9d93bd5
1 /*
2  * Device Tree for the Embedded Planet EP8248E board running PlanetCore.
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  */
12 /dts-v1/;
13 / {
14         model = "EP8248E";
15         compatible = "fsl,ep8248e";
16         #address-cells = <1>;
17         #size-cells = <1>;
19         aliases {
20                 planetcore-SMC1 = &smc1;
21                 planetcore-SCC1 = &scc1;
22                 ethernet0 = &eth0;
23                 ethernet1 = &eth1;
24                 serial0 = &smc1;
25                 serial1 = &scc1;
26         };
28         cpus {
29                 #address-cells = <1>;
30                 #size-cells = <0>;
32                 PowerPC,8248@0 {
33                         device_type = "cpu";
34                         reg = <0>;
35                         d-cache-line-size = <32>;
36                         i-cache-line-size = <32>;
37                         d-cache-size = <16384>;
38                         i-cache-size = <16384>;
39                         timebase-frequency = <0>;
40                         clock-frequency = <0>;
41                 };
42         };
44         localbus@f0010100 {
45                 compatible = "fsl,mpc8248-localbus",
46                              "fsl,pq2-localbus",
47                              "simple-bus";
48                 #address-cells = <2>;
49                 #size-cells = <1>;
50                 reg = <0xf0010100 0x40>;
52                 ranges = <0 0 0xfc000000 0x04000000
53                           1 0 0xfa000000 0x00008000>;
55                 flash@0,3800000 {
56                         compatible = "cfi-flash";
57                         reg = <0 0x3800000 0x800000>;
58                         bank-width = <4>;
59                         device-width = <2>;
60                 };
62                 bcsr@1,0 {
63                         #address-cells = <2>;
64                         #size-cells = <1>;
65                         reg = <1 0 0x10>;
66                         compatible = "fsl,ep8248e-bcsr";
67                         ranges;
69                         mdio {
70                                 device_type = "mdio";
71                                 compatible = "fsl,ep8248e-mdio-bitbang";
72                                 #address-cells = <1>;
73                                 #size-cells = <0>;
74                                 reg = <1 8 1>;
76                                 PHY0: ethernet-phy@0 {
77                                         interrupt-parent = <&PIC>;
78                                         reg = <0>;
79                                         device_type = "ethernet-phy";
80                                 };
82                                 PHY1: ethernet-phy@1 {
83                                         interrupt-parent = <&PIC>;
84                                         reg = <1>;
85                                         device_type = "ethernet-phy";
86                                 };
87                         };
88                 };
89         };
91         memory {
92                 device_type = "memory";
93                 reg = <0 0>;
94         };
96         soc@f0000000 {
97                 #address-cells = <1>;
98                 #size-cells = <1>;
99                 compatible = "fsl,mpc8248-immr", "fsl,pq2-soc", "simple-bus";
100                 ranges = <0x00000000 0xf0000000 0x00053000>;
102                 // Temporary until code stops depending on it.
103                 device_type = "soc";
105                 // Temporary -- will go away once kernel uses ranges for get_immrbase().
106                 reg = <0xf0000000 0x00053000>;
108                 cpm@119c0 {
109                         #address-cells = <1>;
110                         #size-cells = <1>;
111                         #interrupt-cells = <2>;
112                         compatible = "fsl,mpc8248-cpm", "fsl,cpm2",
113                                      "simple-bus";
114                         reg = <0x119c0 0x30>;
115                         ranges;
117                         muram {
118                                 #address-cells = <1>;
119                                 #size-cells = <1>;
120                                 ranges = <0 0 0x10000>;
122                                 data@0 {
123                                         compatible = "fsl,cpm-muram-data";
124                                         reg = <0 0x2000 0x9800 0x800>;
125                                 };
126                         };
128                         brg@119f0 {
129                                 compatible = "fsl,mpc8248-brg",
130                                              "fsl,cpm2-brg",
131                                              "fsl,cpm-brg";
132                                 reg = <0x119f0 0x10 0x115f0 0x10>;
133                         };
135                         /* Monitor port/SMC1 */
136                         smc1: serial@11a80 {
137                                 device_type = "serial";
138                                 compatible = "fsl,mpc8248-smc-uart",
139                                              "fsl,cpm2-smc-uart";
140                                 reg = <0x11a80 0x20 0x87fc 2>;
141                                 interrupts = <4 8>;
142                                 interrupt-parent = <&PIC>;
143                                 fsl,cpm-brg = <7>;
144                                 fsl,cpm-command = <0x1d000000>;
145                                 linux,planetcore-label = "SMC1";
146                         };
148                         /* "Serial" port/SCC1 */
149                         scc1: serial@11a00 {
150                                 device_type = "serial";
151                                 compatible = "fsl,mpc8248-scc-uart",
152                                              "fsl,cpm2-scc-uart";
153                                 reg = <0x11a00 0x20 0x8000 0x100>;
154                                 interrupts = <40 8>;
155                                 interrupt-parent = <&PIC>;
156                                 fsl,cpm-brg = <1>;
157                                 fsl,cpm-command = <0x00800000>;
158                                 linux,planetcore-label = "SCC1";
159                         };
161                         eth0: ethernet@11300 {
162                                 device_type = "network";
163                                 compatible = "fsl,mpc8248-fcc-enet",
164                                              "fsl,cpm2-fcc-enet";
165                                 reg = <0x11300 0x20 0x8400 0x100 0x11390 1>;
166                                 local-mac-address = [ 00 00 00 00 00 00 ];
167                                 interrupts = <32 8>;
168                                 interrupt-parent = <&PIC>;
169                                 phy-handle = <&PHY0>;
170                                 linux,network-index = <0>;
171                                 fsl,cpm-command = <0x12000300>;
172                         };
174                         eth1: ethernet@11320 {
175                                 device_type = "network";
176                                 compatible = "fsl,mpc8248-fcc-enet",
177                                              "fsl,cpm2-fcc-enet";
178                                 reg = <0x11320 0x20 0x8500 0x100 0x113b0 1>;
179                                 local-mac-address = [ 00 00 00 00 00 00 ];
180                                 interrupts = <33 8>;
181                                 interrupt-parent = <&PIC>;
182                                 phy-handle = <&PHY1>;
183                                 linux,network-index = <1>;
184                                 fsl,cpm-command = <0x16200300>;
185                         };
187                         usb@11b60 {
188                                 #address-cells = <1>;
189                                 #size-cells = <0>;
190                                 compatible = "fsl,mpc8248-usb",
191                                              "fsl,cpm2-usb";
192                                 reg = <0x11b60 0x18 0x8b00 0x100>;
193                                 interrupt-parent = <&PIC>;
194                                 interrupts = <11 8>;
195                                 fsl,cpm-command = <0x2e600000>;
196                         };
197                 };
199                 PIC: interrupt-controller@10c00 {
200                         #interrupt-cells = <2>;
201                         interrupt-controller;
202                         reg = <0x10c00 0x80>;
203                         compatible = "fsl,mpc8248-pic", "fsl,pq2-pic";
204                 };
205         };