ramips: add PCI node for rt3883.dtsi
[openwrt/svn-archive/archive.git] / target / linux / ramips / dts / rt3883.dtsi
1 / {
2 #address-cells = <1>;
3 #size-cells = <1>;
4 compatible = "ralink,rt3883-soc";
5
6 cpus {
7 cpu@0 {
8 compatible = "mips,mips74Kc";
9 };
10 };
11
12 chosen {
13 bootargs = "console=ttyS0,57600";
14 };
15
16 aliases {
17 spi0 = &spi0;
18 };
19
20 cpuintc: cpuintc@0 {
21 #address-cells = <0>;
22 #interrupt-cells = <1>;
23 interrupt-controller;
24 compatible = "mti,cpu-interrupt-controller";
25 };
26
27 palmbus@10000000 {
28 compatible = "palmbus";
29 reg = <0x10000000 0x200000>;
30 ranges = <0x0 0x10000000 0x1FFFFF>;
31
32 #address-cells = <1>;
33 #size-cells = <1>;
34
35 sysc@0 {
36 compatible = "ralink,rt3883-sysc", "ralink,rt3050-sysc";
37 reg = <0x0 0x100>;
38 };
39
40 timer@100 {
41 compatible = "ralink,rt3883-timer", "ralink,rt2880-timer";
42 reg = <0x100 0x20>;
43
44 interrupt-parent = <&intc>;
45 interrupts = <1>;
46 };
47
48 watchdog@120 {
49 compatible = "ralink,rt3883-wdt", "ralink,rt2880-wdt";
50 reg = <0x120 0x10>;
51 };
52
53 intc: intc@200 {
54 compatible = "ralink,rt3883-intc", "ralink,rt2880-intc";
55 reg = <0x200 0x100>;
56
57 interrupt-controller;
58 #interrupt-cells = <1>;
59
60 interrupt-parent = <&cpuintc>;
61 interrupts = <2>;
62 };
63
64 memc@300 {
65 compatible = "ralink,rt3883-memc", "ralink,rt3050-memc";
66 reg = <0x300 0x100>;
67 };
68
69 gpio0: gpio@600 {
70 compatible = "ralink,rt3883-gpio", "ralink,rt2880-gpio";
71 reg = <0x600 0x34>;
72
73 gpio-controller;
74 #gpio-cells = <2>;
75
76 ralink,num-gpios = <24>;
77 ralink,register-map = [ 00 04 08 0c
78 20 24 28 2c
79 30 34 ];
80
81 status = "disabled";
82 };
83
84 gpio1: gpio@638 {
85 compatible = "ralink,rt3883-gpio", "ralink,rt2880-gpio";
86 reg = <0x638 0x24>;
87
88 gpio-controller;
89 #gpio-cells = <2>;
90
91 ralink,num-gpios = <16>;
92 ralink,register-map = [ 00 04 08 0c
93 10 14 18 1c
94 20 24 ];
95
96 status = "disabled";
97 };
98
99 gpio2: gpio@660 {
100 compatible = "ralink,rt3883-gpio", "ralink,rt2880-gpio";
101 reg = <0x660 0x24>;
102
103 gpio-controller;
104 #gpio-cells = <2>;
105
106 ralink,num-gpios = <32>;
107 ralink,register-map = [ 00 04 08 0c
108 10 14 18 1c
109 20 24 ];
110
111 status = "disabled";
112 };
113
114 gpio3: gpio@688 {
115 compatible = "ralink,rt3883-gpio", "ralink,rt2880-gpio";
116 reg = <0x688 0x24>;
117
118 gpio-controller;
119 #gpio-cells = <2>;
120
121 ralink,num-gpios = <24>;
122 ralink,register-map = [ 00 04 08 0c
123 10 14 18 1c
124 20 24 ];
125
126 status = "disabled";
127 };
128
129 spi0: spi@b00 {
130 compatible = "ralink,rt3883-spi", "ralink,rt2880-spi";
131 reg = <0xb00 0x100>;
132 #address-cells = <1>;
133 #size-cells = <0>;
134
135 status = "disabled";
136 };
137
138 uartlite@c00 {
139 compatible = "ralink,rt3883-uart", "ralink,rt2880-uart", "ns16550a";
140 reg = <0xc00 0x100>;
141
142 interrupt-parent = <&intc>;
143 interrupts = <12>;
144
145 reg-shift = <2>;
146 };
147 };
148
149 ethernet@10100000 {
150 compatible = "ralink,rt3883-eth";
151 reg = <0x10100000 10000>;
152
153 interrupt-parent = <&cpuintc>;
154 interrupts = <5>;
155
156 status = "disabled";
157 };
158
159 pci@10140000 {
160 compatible = "ralink,rt3883-pci";
161 reg = <0x10140000 0x20000>;
162 #address-cells = <1>;
163 #size-cells = <1>;
164 ranges; /* direct mapping */
165
166 status = "disabled";
167
168 pciintc: interrupt-controller {
169 interrupt-controller;
170 #address-cells = <0>;
171 #interrupt-cells = <1>;
172
173 interrupt-parent = <&cpuintc>;
174 interrupts = <4>;
175 };
176
177 host-bridge {
178 #address-cells = <3>;
179 #size-cells = <2>;
180 #interrupt-cells = <1>;
181
182 device_type = "pci";
183
184 bus-range = <0 255>;
185 ranges = <
186 0x02000000 0 0x00000000 0x20000000 0 0x10000000 /* pci memory */
187 0x01000000 0 0x00000000 0x10160000 0 0x00010000 /* io space */
188 >;
189
190 interrupt-map-mask = <0xf800 0 0 7>;
191 interrupt-map = <
192 /* IDSEL 17 */
193 0x8800 0 0 1 &pciintc 18
194 0x8800 0 0 2 &pciintc 18
195 0x8800 0 0 3 &pciintc 18
196 0x8800 0 0 4 &pciintc 18
197 /* IDSEL 18 */
198 0x9000 0 0 1 &pciintc 19
199 0x9000 0 0 2 &pciintc 19
200 0x9000 0 0 3 &pciintc 19
201 0x9000 0 0 4 &pciintc 19
202 >;
203
204 pci-bridge@1 {
205 reg = <0x0800 0 0 0 0>;
206 device_type = "pci";
207 #interrupt-cells = <1>;
208 #address-cells = <3>;
209 #size-cells = <2>;
210
211 status = "disabled";
212
213 ralink,pci-slot = <1>;
214
215 interrupt-map-mask = <0x0 0 0 0>;
216 interrupt-map = <0x0 0 0 0 &pciintc 20>;
217 };
218
219 pci-slot@17 {
220 reg = <0x8800 0 0 0 0>;
221 device_type = "pci";
222 #interrupt-cells = <1>;
223 #address-cells = <3>;
224 #size-cells = <2>;
225
226 ralink,pci-slot = <17>;
227
228 status = "disabled";
229 };
230
231 pci-slot@18 {
232 reg = <0x9000 0 0 0 0>;
233 device_type = "pci";
234 #interrupt-cells = <1>;
235 #address-cells = <3>;
236 #size-cells = <2>;
237
238 ralink,pci-slot = <18>;
239
240 status = "disabled";
241 };
242 };
243 };
244
245 wmac@10180000 {
246 compatible = "ralink,rt3883-wmac", "ralink,rt2880-wmac";
247 reg = <0x10180000 40000>;
248
249 interrupt-parent = <&cpuintc>;
250 interrupts = <6>;
251
252 ralink,eeprom = "soc_wmac.eeprom";
253
254 status = "disabled";
255 };
256
257 ehci@101c0000 {
258 compatible = "ralink,rt3883-ehci", "ehci-platform";
259 reg = <0x101c0000 0x1000>;
260
261 interrupt-parent = <&intc>;
262 interrupts = <18>;
263
264 status = "disabled";
265 };
266
267 ohci@101c1000 {
268 compatible = "ralink,rt3883-ohci", "ohci-platform";
269 reg = <0x101c1000 0x1000>;
270
271 interrupt-parent = <&intc>;
272 interrupts = <18>;
273
274 status = "disabled";
275 };
276 };