1 // SPDX-License-Identifier: GPL-2.0
2
3 / {
4 pch: bus@10000000 {
5 compatible = "simple-bus";
6 #address-cells = <2>;
7 #size-cells = <2>;
8 ranges = <0 0x10000000 0 0x10000000 0 0x10000000 /* PIO & CONF & APB */
9 0 0x20000000 0 0x20000000 0 0x10000000
10 0 0x40000000 0 0x40000000 0 0x40000000 /* PCI MEM */
11 0xe00 0x00000000 0xe00 0x00000000 0x100 0x0000000>;
12
13 pic: interrupt-controller@10000000 {
14 compatible = "loongson,pch-pic-1.0";
15 reg = <0 0x10000000 0 0x400>;
16 interrupt-controller;
17 interrupt-parent = <&htvec>;
18 loongson,pic-base-vec = <0>;
19 #interrupt-cells = <2>;
20 };
21
22 ls7a_uart0: serial@10080000 {
23 compatible = "ns16550a";
24 reg = <0 0x10080000 0 0x100>;
25 clock-frequency = <50000000>;
26 interrupt-parent = <&pic>;
27 interrupts = <8 IRQ_TYPE_LEVEL_HIGH>;
28 no-loopback-test;
29 };
30
31 ls7a_uart1: serial@10080100 {
32 status = "disabled";
33 compatible = "ns16550a";
34 reg = <0 0x10080100 0 0x100>;
35 clock-frequency = <50000000>;
36 interrupt-parent = <&pic>;
37 interrupts = <8 IRQ_TYPE_LEVEL_HIGH>;
38 no-loopback-test;
39 };
40
41 ls7a_uart2: serial@10080200 {
42 status = "disabled";
43 compatible = "ns16550a";
44 reg = <0 0x10080200 0 0x100>;
45 clock-frequency = <50000000>;
46 interrupt-parent = <&pic>;
47 interrupts = <8 IRQ_TYPE_LEVEL_HIGH>;
48 no-loopback-test;
49 };
50
51 ls7a_uart3: serial@10080300 {
52 status = "disabled";
53 compatible = "ns16550a";
54 reg = <0 0x10080300 0 0x100>;
55 clock-frequency = <50000000>;
56 interrupt-parent = <&pic>;
57 interrupts = <8 IRQ_TYPE_LEVEL_HIGH>;
58 no-loopback-test;
59 };
60
61 pci@1a000000 {
62 compatible = "loongson,ls7a-pci";
63 device_type = "pci";
64 #address-cells = <3>;
65 #size-cells = <2>;
66 #interrupt-cells = <2>;
67 msi-parent = <&msi>;
68
69 reg = <0 0x1a000000 0 0x02000000>,
70 <0xefe 0x00000000 0 0x20000000>;
71
72 ranges = <0x01000000 0x0 0x00020000 0x0 0x18020000 0x0 0x00020000>,
73 <0x02000000 0x0 0x40000000 0x0 0x40000000 0x0 0x40000000>;
74
75 ohci@4,0 {
76 compatible = "pci0014,7a24.0",
77 "pci0014,7a24",
78 "pciclass0c0310",
79 "pciclass0c03";
80
81 reg = <0x2000 0x0 0x0 0x0 0x0>;
82 interrupts = <49 IRQ_TYPE_LEVEL_HIGH>;
83 interrupt-parent = <&pic>;
84 };
85
86 ehci@4,1 {
87 compatible = "pci0014,7a14.0",
88 "pci0014,7a14",
89 "pciclass0c0320",
90 "pciclass0c03";
91
92 reg = <0x2100 0x0 0x0 0x0 0x0>;
93 interrupts = <48 IRQ_TYPE_LEVEL_HIGH>;
94 interrupt-parent = <&pic>;
95 };
96
97 ohci@5,0 {
98 compatible = "pci0014,7a24.0",
99 "pci0014,7a24",
100 "pciclass0c0310",
101 "pciclass0c03";
102
103 reg = <0x2800 0x0 0x0 0x0 0x0>;
104 interrupts = <51 IRQ_TYPE_LEVEL_HIGH>;
105 interrupt-parent = <&pic>;
106 };
107
108 ehci@5,1 {
109 compatible = "pci0014,7a14.0",
110 "pci0014,7a14",
111 "pciclass0c0320",
112 "pciclass0c03";
113
114 reg = <0x2900 0x0 0x0 0x0 0x0>;
115 interrupts = <50 IRQ_TYPE_LEVEL_HIGH>;
116 interrupt-parent = <&pic>;
117 };
118
119 sata@8,0 {
120 compatible = "pci0014,7a08.0",
121 "pci0014,7a08",
122 "pciclass010601",
123 "pciclass0106";
124
125 reg = <0x4000 0x0 0x0 0x0 0x0>;
126 interrupts = <16 IRQ_TYPE_LEVEL_HIGH>;
127 interrupt-parent = <&pic>;
128 };
129
130 sata@8,1 {
131 compatible = "pci0014,7a08.0",
132 "pci0014,7a08",
133 "pciclass010601",
134 "pciclass0106";
135
136 reg = <0x4100 0x0 0x0 0x0 0x0>;
137 interrupts = <17 IRQ_TYPE_LEVEL_HIGH>;
138 interrupt-parent = <&pic>;
139 };
140
141 sata@8,2 {
142 compatible = "pci0014,7a08.0",
143 "pci0014,7a08",
144 "pciclass010601",
145 "pciclass0106";
146
147 reg = <0x4200 0x0 0x0 0x0 0x0>;
148 interrupts = <18 IRQ_TYPE_LEVEL_HIGH>;
149 interrupt-parent = <&pic>;
150 };
151
152 gpu@6,0 {
153 compatible = "pci0014,7a15.0",
154 "pci0014,7a15",
155 "pciclass030200",
156 "pciclass0302";
157
158 reg = <0x3000 0x0 0x0 0x0 0x0>;
159 interrupts = <29 IRQ_TYPE_LEVEL_HIGH>;
160 interrupt-parent = <&pic>;
161 };
162
163 dc@6,1 {
164 compatible = "pci0014,7a06.0",
165 "pci0014,7a06",
166 "pciclass030000",
167 "pciclass0300";
168
169 reg = <0x3100 0x0 0x0 0x0 0x0>;
170 interrupts = <28 IRQ_TYPE_LEVEL_HIGH>;
171 interrupt-parent = <&pic>;
172 };
173
174 hda@7,0 {
175 compatible = "pci0014,7a07.0",
176 "pci0014,7a07",
177 "pciclass040300",
178 "pciclass0403";
179
180 reg = <0x3800 0x0 0x0 0x0 0x0>;
181 interrupts = <58 IRQ_TYPE_LEVEL_HIGH>;
182 interrupt-parent = <&pic>;
183 };
184
185 gmac@3,0 {
186 compatible = "pci0014,7a03.0",
187 "pci0014,7a03",
188 "pciclass020000",
189 "pciclass0200",
190 "loongson, pci-gmac";
191
192 reg = <0x1800 0x0 0x0 0x0 0x0>;
193 interrupts = <12 IRQ_TYPE_LEVEL_HIGH>,
194 <13 IRQ_TYPE_LEVEL_HIGH>;
195 interrupt-names = "macirq", "eth_lpi";
196 interrupt-parent = <&pic>;
197 phy-mode = "rgmii";
198 mdio {
199 #address-cells = <1>;
200 #size-cells = <0>;
201 compatible = "snps,dwmac-mdio";
202 phy0: ethernet-phy@0 {
203 reg = <0>;
204 };
205 };
206 };
207
208 gmac@3,1 {
209 compatible = "pci0014,7a03.0",
210 "pci0014,7a03",
211 "pciclass020000",
212 "pciclass0200",
213 "loongson, pci-gmac";
214
215 reg = <0x1900 0x0 0x0 0x0 0x0>;
216 interrupts = <14 IRQ_TYPE_LEVEL_HIGH>,
217 <15 IRQ_TYPE_LEVEL_HIGH>;
218 interrupt-names = "macirq", "eth_lpi";
219 interrupt-parent = <&pic>;
220 phy-mode = "rgmii";
221 mdio {
222 #address-cells = <1>;
223 #size-cells = <0>;
224 compatible = "snps,dwmac-mdio";
225 phy1: ethernet-phy@1 {
226 reg = <0>;
227 };
228 };
229 };
230
231 pci_bridge@9,0 {
232 compatible = "pci0014,7a19.1",
233 "pci0014,7a19",
234 "pciclass060400",
235 "pciclass0604";
236
237 reg = <0x4800 0x0 0x0 0x0 0x0>;
238 interrupts = <32 IRQ_TYPE_LEVEL_HIGH>;
239 interrupt-parent = <&pic>;
240
241 #interrupt-cells = <1>;
242 interrupt-map-mask = <0 0 0 0>;
243 interrupt-map = <0 0 0 0 &pic 32 IRQ_TYPE_LEVEL_HIGH>;
244 };
245
246 pci_bridge@a,0 {
247 compatible = "pci0014,7a09.1",
248 "pci0014,7a09",
249 "pciclass060400",
250 "pciclass0604";
251
252 reg = <0x5000 0x0 0x0 0x0 0x0>;
253 interrupts = <33 IRQ_TYPE_LEVEL_HIGH>;
254 interrupt-parent = <&pic>;
255
256 #interrupt-cells = <1>;
257 interrupt-map-mask = <0 0 0 0>;
258 interrupt-map = <0 0 0 0 &pic 33 IRQ_TYPE_LEVEL_HIGH>;
259 };
260
261 pci_bridge@b,0 {
262 compatible = "pci0014,7a09.1",
263 "pci0014,7a09",
264 "pciclass060400",
265 "pciclass0604";
266
267 reg = <0x5800 0x0 0x0 0x0 0x0>;
268 interrupts = <34 IRQ_TYPE_LEVEL_HIGH>;
269 interrupt-parent = <&pic>;
270
271 #interrupt-cells = <1>;
272 interrupt-map-mask = <0 0 0 0>;
273 interrupt-map = <0 0 0 0 &pic 34 IRQ_TYPE_LEVEL_HIGH>;
274 };
275
276 pci_bridge@c,0 {
277 compatible = "pci0014,7a09.1",
278 "pci0014,7a09",
279 "pciclass060400",
280 "pciclass0604";
281
282 reg = <0x6000 0x0 0x0 0x0 0x0>;
283 interrupts = <35 IRQ_TYPE_LEVEL_HIGH>;
284 interrupt-parent = <&pic>;
285
286 #interrupt-cells = <1>;
287 interrupt-map-mask = <0 0 0 0>;
288 interrupt-map = <0 0 0 0 &pic 35 IRQ_TYPE_LEVEL_HIGH>;
289 };
290
291 pci_bridge@d,0 {
292 compatible = "pci0014,7a19.1",
293 "pci0014,7a19",
294 "pciclass060400",
295 "pciclass0604";
296
297 reg = <0x6800 0x0 0x0 0x0 0x0>;
298 interrupts = <36 IRQ_TYPE_LEVEL_HIGH>;
299 interrupt-parent = <&pic>;
300
301 #interrupt-cells = <1>;
302 interrupt-map-mask = <0 0 0 0>;
303 interrupt-map = <0 0 0 0 &pic 36 IRQ_TYPE_LEVEL_HIGH>;
304 };
305
306 pci_bridge@e,0 {
307 compatible = "pci0014,7a09.1",
308 "pci0014,7a09",
309 "pciclass060400",
310 "pciclass0604";
311
312 reg = <0x7000 0x0 0x0 0x0 0x0>;
313 interrupts = <37 IRQ_TYPE_LEVEL_HIGH>;
314 interrupt-parent = <&pic>;
315
316 #interrupt-cells = <1>;
317 interrupt-map-mask = <0 0 0 0>;
318 interrupt-map = <0 0 0 0 &pic 37 IRQ_TYPE_LEVEL_HIGH>;
319 };
320
321 pci_bridge@f,0 {
322 compatible = "pci0014,7a29.1",
323 "pci0014,7a29",
324 "pciclass060400",
325 "pciclass0604";
326
327 reg = <0x7800 0x0 0x0 0x0 0x0>;
328 interrupts = <40 IRQ_TYPE_LEVEL_HIGH>;
329 interrupt-parent = <&pic>;
330
331 #interrupt-cells = <1>;
332 interrupt-map-mask = <0 0 0 0>;
333 interrupt-map = <0 0 0 0 &pic 40 IRQ_TYPE_LEVEL_HIGH>;
334 };
335
336 pci_bridge@10,0 {
337 compatible = "pci0014,7a19.1",
338 "pci0014,7a19",
339 "pciclass060400",
340 "pciclass0604";
341
342 reg = <0x8000 0x0 0x0 0x0 0x0>;
343 interrupts = <41 IRQ_TYPE_LEVEL_HIGH>;
344 interrupt-parent = <&pic>;
345
346 #interrupt-cells = <1>;
347 interrupt-map-mask = <0 0 0 0>;
348 interrupt-map = <0 0 0 0 &pic 41 IRQ_TYPE_LEVEL_HIGH>;
349 };
350
351 pci_bridge@11,0 {
352 compatible = "pci0014,7a29.1",
353 "pci0014,7a29",
354 "pciclass060400",
355 "pciclass0604";
356
357 reg = <0x8800 0x0 0x0 0x0 0x0>;
358 interrupts = <42 IRQ_TYPE_LEVEL_HIGH>;
359 interrupt-parent = <&pic>;
360
361 #interrupt-cells = <1>;
362 interrupt-map-mask = <0 0 0 0>;
363 interrupt-map = <0 0 0 0 &pic 42 IRQ_TYPE_LEVEL_HIGH>;
364 };
365
366 pci_bridge@12,0 {
367 compatible = "pci0014,7a19.1",
368 "pci0014,7a19",
369 "pciclass060400",
370 "pciclass0604";
371
372 reg = <0x9000 0x0 0x0 0x0 0x0>;
373 interrupts = <43 IRQ_TYPE_LEVEL_HIGH>;
374 interrupt-parent = <&pic>;
375
376 #interrupt-cells = <1>;
377 interrupt-map-mask = <0 0 0 0>;
378 interrupt-map = <0 0 0 0 &pic 43 IRQ_TYPE_LEVEL_HIGH>;
379 };
380
381 pci_bridge@13,0 {
382 compatible = "pci0014,7a29.1",
383 "pci0014,7a29",
384 "pciclass060400",
385 "pciclass0604";
386
387 reg = <0x9800 0x0 0x0 0x0 0x0>;
388 interrupts = <38 IRQ_TYPE_LEVEL_HIGH>;
389 interrupt-parent = <&pic>;
390
391 #interrupt-cells = <1>;
392 interrupt-map-mask = <0 0 0 0>;
393 interrupt-map = <0 0 0 0 &pic 38 IRQ_TYPE_LEVEL_HIGH>;
394 };
395
396 pci_bridge@14,0 {
397 compatible = "pci0014,7a19.1",
398 "pci0014,7a19",
399 "pciclass060400",
400 "pciclass0604";
401
402 reg = <0xa000 0x0 0x0 0x0 0x0>;
403 interrupts = <39 IRQ_TYPE_LEVEL_HIGH>;
404 interrupt-parent = <&pic>;
405
406 #interrupt-cells = <1>;
407 interrupt-map-mask = <0 0 0 0>;
408 interrupt-map = <0 0 0 0 &pic 39 IRQ_TYPE_LEVEL_HIGH>;
409 };
410 };
411
412 isa@18000000 {
413 compatible = "isa";
414 #address-cells = <2>;
415 #size-cells = <1>;
416 ranges = <1 0 0 0x18000000 0x20000>;
417 };
418 };
419 };
Cache object: 65e8523d655a9384a95781feece76fa8
|