~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/arch/loongarch/boot/dts/loongson-2k0500.dtsi

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 // SPDX-License-Identifier: GPL-2.0
  2 /*
  3  * Copyright (C) 2023 Loongson Technology Corporation Limited
  4  */
  5 
  6 /dts-v1/;
  7 
  8 #include <dt-bindings/interrupt-controller/irq.h>
  9 #include <dt-bindings/clock/loongson,ls2k-clk.h>
 10 
 11 / {
 12         #address-cells = <2>;
 13         #size-cells = <2>;
 14 
 15         cpus {
 16                 #address-cells = <1>;
 17                 #size-cells = <0>;
 18 
 19                 cpu0: cpu@0 {
 20                         compatible = "loongson,la264";
 21                         device_type = "cpu";
 22                         reg = <0x0>;
 23                         clocks = <&clk LOONGSON2_NODE_CLK>;
 24                 };
 25         };
 26 
 27         ref_100m: clock-ref-100m {
 28                 compatible = "fixed-clock";
 29                 #clock-cells = <0>;
 30                 clock-frequency = <100000000>;
 31                 clock-output-names = "ref_100m";
 32         };
 33 
 34         cpuintc: interrupt-controller {
 35                 compatible = "loongson,cpu-interrupt-controller";
 36                 #interrupt-cells = <1>;
 37                 interrupt-controller;
 38         };
 39 
 40         thermal-zones {
 41                 cpu-thermal {
 42                         polling-delay-passive = <1000>;
 43                         polling-delay = <5000>;
 44                         thermal-sensors = <&tsensor 0>;
 45 
 46                         trips {
 47                                 cpu-alert {
 48                                         temperature = <33000>;
 49                                         hysteresis = <2000>;
 50                                         type = "active";
 51                                 };
 52 
 53                                 cpu-crit {
 54                                         temperature = <85000>;
 55                                         hysteresis = <5000>;
 56                                         type = "critical";
 57                                 };
 58                         };
 59                 };
 60         };
 61 
 62         bus@10000000 {
 63                 compatible = "simple-bus";
 64                 ranges = <0x0 0x10000000 0x0 0x10000000 0x0 0x10000000>,
 65                          <0x0 0x02000000 0x0 0x02000000 0x0 0x02000000>,
 66                          <0x0 0x20000000 0x0 0x20000000 0x0 0x10000000>,
 67                          <0x0 0x40000000 0x0 0x40000000 0x0 0x40000000>,
 68                          <0xfe 0x0 0xfe 0x0 0x0 0x40000000>;
 69                 #address-cells = <2>;
 70                 #size-cells = <2>;
 71 
 72                 isa@16400000 {
 73                         compatible = "isa";
 74                         #size-cells = <1>;
 75                         #address-cells = <2>;
 76                         ranges = <1 0x0 0x0 0x16400000 0x4000>;
 77                 };
 78 
 79                 clk: clock-controller@1fe10400 {
 80                         compatible = "loongson,ls2k0500-clk";
 81                         reg = <0x0 0x1fe10400 0x0 0x2c>;
 82                         #clock-cells = <1>;
 83                         clocks = <&ref_100m>;
 84                         clock-names = "ref_100m";
 85                 };
 86 
 87                 dma-controller@1fe10c00 {
 88                         compatible = "loongson,ls2k0500-apbdma", "loongson,ls2k1000-apbdma";
 89                         reg = <0 0x1fe10c00 0 0x8>;
 90                         interrupt-parent = <&eiointc>;
 91                         interrupts = <67>;
 92                         clocks = <&clk LOONGSON2_APB_CLK>;
 93                         #dma-cells = <1>;
 94                         status = "disabled";
 95                 };
 96 
 97                 dma-controller@1fe10c10 {
 98                         compatible = "loongson,ls2k0500-apbdma", "loongson,ls2k1000-apbdma";
 99                         reg = <0 0x1fe10c10 0 0x8>;
100                         interrupt-parent = <&eiointc>;
101                         interrupts = <68>;
102                         clocks = <&clk LOONGSON2_APB_CLK>;
103                         #dma-cells = <1>;
104                         status = "disabled";
105                 };
106 
107                 dma-controller@1fe10c20 {
108                         compatible = "loongson,ls2k0500-apbdma", "loongson,ls2k1000-apbdma";
109                         reg = <0 0x1fe10c20 0 0x8>;
110                         interrupt-parent = <&eiointc>;
111                         interrupts = <69>;
112                         clocks = <&clk LOONGSON2_APB_CLK>;
113                         #dma-cells = <1>;
114                         status = "disabled";
115                 };
116 
117                 dma-controller@1fe10c30 {
118                         compatible = "loongson,ls2k0500-apbdma", "loongson,ls2k1000-apbdma";
119                         reg = <0 0x1fe10c30 0 0x8>;
120                         interrupt-parent = <&eiointc>;
121                         interrupts = <70>;
122                         clocks = <&clk LOONGSON2_APB_CLK>;
123                         #dma-cells = <1>;
124                         status = "disabled";
125                 };
126 
127                 liointc0: interrupt-controller@1fe11400 {
128                         compatible = "loongson,liointc-2.0";
129                         reg = <0x0 0x1fe11400 0x0 0x40>,
130                               <0x0 0x1fe11040 0x0 0x8>;
131                         reg-names = "main", "isr0";
132 
133                         interrupt-controller;
134                         #interrupt-cells = <2>;
135                         interrupt-parent = <&cpuintc>;
136                         interrupts = <2>;
137                         interrupt-names = "int0";
138 
139                         loongson,parent_int_map = <0xffffffff>, /* int0 */
140                                                   <0x00000000>, /* int1 */
141                                                   <0x00000000>, /* int2 */
142                                                   <0x00000000>; /* int3 */
143                 };
144 
145                 liointc1: interrupt-controller@1fe11440 {
146                         compatible = "loongson,liointc-2.0";
147                         reg = <0x0 0x1fe11440 0x0 0x40>,
148                               <0x0 0x1fe11048 0x0 0x8>;
149                         reg-names = "main", "isr0";
150 
151                         interrupt-controller;
152                         #interrupt-cells = <2>;
153                         interrupt-parent = <&cpuintc>;
154                         interrupts = <4>;
155                         interrupt-names = "int2";
156 
157                         loongson,parent_int_map = <0x00000000>, /* int0 */
158                                                   <0x00000000>, /* int1 */
159                                                   <0xffffffff>, /* int2 */
160                                                   <0x00000000>; /* int3 */
161                 };
162 
163                 eiointc: interrupt-controller@1fe11600 {
164                         compatible = "loongson,ls2k0500-eiointc";
165                         reg = <0x0 0x1fe11600 0x0 0xea00>;
166                         interrupt-controller;
167                         #interrupt-cells = <1>;
168                         interrupt-parent = <&cpuintc>;
169                         interrupts = <3>;
170                 };
171 
172                 gmac0: ethernet@1f020000 {
173                         compatible = "snps,dwmac-3.70a";
174                         reg = <0x0 0x1f020000 0x0 0x10000>;
175                         interrupt-parent = <&liointc0>;
176                         interrupts = <12 IRQ_TYPE_LEVEL_HIGH>;
177                         interrupt-names = "macirq";
178                         status = "disabled";
179                 };
180 
181                 gmac1: ethernet@1f030000 {
182                         compatible = "snps,dwmac-3.70a";
183                         reg = <0x0 0x1f030000 0x0 0x10000>;
184                         interrupt-parent = <&liointc0>;
185                         interrupts = <14 IRQ_TYPE_LEVEL_HIGH>;
186                         interrupt-names = "macirq";
187                         status = "disabled";
188                 };
189 
190                 sata: sata@1f040000 {
191                         compatible = "snps,spear-ahci";
192                         reg = <0x0 0x1f040000 0x0 0x10000>;
193                         interrupt-parent = <&eiointc>;
194                         interrupts = <75>;
195                         status = "disabled";
196                 };
197 
198                 ehci0: usb@1f050000 {
199                         compatible = "generic-ehci";
200                         reg = <0x0 0x1f050000 0x0 0x8000>;
201                         interrupt-parent = <&eiointc>;
202                         interrupts = <71>;
203                         status = "disabled";
204                 };
205 
206                 ohci0: usb@1f058000 {
207                         compatible = "generic-ohci";
208                         reg = <0x0 0x1f058000 0x0 0x8000>;
209                         interrupt-parent = <&eiointc>;
210                         interrupts = <72>;
211                         status = "disabled";
212                 };
213 
214                 tsensor: thermal-sensor@1fe11500 {
215                         compatible = "loongson,ls2k0500-thermal", "loongson,ls2k1000-thermal";
216                         reg = <0x0 0x1fe11500 0x0 0x30>;
217                         interrupt-parent = <&liointc0>;
218                         interrupts = <7 IRQ_TYPE_LEVEL_HIGH>;
219                         #thermal-sensor-cells = <1>;
220                 };
221 
222                 uart0: serial@1ff40800 {
223                         compatible = "ns16550a";
224                         reg = <0x0 0x1ff40800 0x0 0x10>;
225                         clock-frequency = <100000000>;
226                         interrupt-parent = <&eiointc>;
227                         interrupts = <2>;
228                         no-loopback-test;
229                         status = "disabled";
230                 };
231 
232                 i2c0: i2c@1ff48000 {
233                         compatible = "loongson,ls2k-i2c";
234                         reg = <0x0 0x1ff48000 0x0 0x0800>;
235                         interrupt-parent = <&eiointc>;
236                         interrupts = <14>;
237                         status = "disabled";
238                 };
239 
240                 i2c@1ff48800 {
241                         compatible = "loongson,ls2k-i2c";
242                         reg = <0x0 0x1ff48800 0x0 0x0800>;
243                         interrupt-parent = <&eiointc>;
244                         interrupts = <15>;
245                         status = "disabled";
246                 };
247 
248                 i2c@1ff49000 {
249                         compatible = "loongson,ls2k-i2c";
250                         reg = <0x0 0x1ff49000 0x0 0x0800>;
251                         interrupt-parent = <&eiointc>;
252                         interrupts = <16>;
253                         status = "disabled";
254                 };
255 
256                 i2c@1ff49800 {
257                         compatible = "loongson,ls2k-i2c";
258                         reg = <0x0 0x1ff49800 0x0 0x0800>;
259                         interrupt-parent = <&eiointc>;
260                         interrupts = <17>;
261                         status = "disabled";
262                 };
263 
264                 i2c@1ff4a000 {
265                         compatible = "loongson,ls2k-i2c";
266                         reg = <0x0 0x1ff4a000 0x0 0x0800>;
267                         interrupt-parent = <&eiointc>;
268                         interrupts = <18>;
269                         status = "disabled";
270                 };
271 
272                 i2c@1ff4a800 {
273                         compatible = "loongson,ls2k-i2c";
274                         reg = <0x0 0x1ff4a800 0x0 0x0800>;
275                         interrupt-parent = <&eiointc>;
276                         interrupts = <19>;
277                         status = "disabled";
278                 };
279 
280                 pmc: power-management@1ff6c000 {
281                         compatible = "loongson,ls2k0500-pmc", "syscon";
282                         reg = <0x0 0x1ff6c000 0x0 0x58>;
283                         interrupt-parent = <&eiointc>;
284                         interrupts = <56>;
285                         loongson,suspend-address = <0x0 0x1c000500>;
286 
287                         syscon-reboot {
288                                 compatible = "syscon-reboot";
289                                 offset = <0x30>;
290                                 mask = <0x1>;
291                         };
292 
293                         syscon-poweroff {
294                                 compatible = "syscon-poweroff";
295                                 regmap = <&pmc>;
296                                 offset = <0x14>;
297                                 mask = <0x3c00>;
298                                 value = <0x3c00>;
299                         };
300                 };
301 
302                 rtc0: rtc@1ff6c100 {
303                         compatible = "loongson,ls2k0500-rtc", "loongson,ls7a-rtc";
304                         reg = <0x0 0x1ff6c100 0x0 0x100>;
305                         interrupt-parent = <&eiointc>;
306                         interrupts = <35>;
307                         status = "disabled";
308                 };
309 
310                 pcie@1a000000 {
311                         compatible = "loongson,ls2k-pci";
312                         reg = <0x0 0x1a000000 0x0 0x02000000>,
313                               <0xfe 0x0 0x0 0x20000000>;
314                         #address-cells = <3>;
315                         #size-cells = <2>;
316                         device_type = "pci";
317                         bus-range = <0x0 0x5>;
318                         ranges = <0x01000000 0x0 0x00004000 0x0 0x16404000 0x0 0x00004000>,
319                                  <0x02000000 0x0 0x40000000 0x0 0x40000000 0x0 0x40000000>;
320 
321                         pcie@0,0 {
322                                 reg = <0x0000 0x0 0x0 0x0 0x0>;
323                                 #address-cells = <3>;
324                                 #size-cells = <2>;
325                                 device_type = "pci";
326                                 interrupt-parent = <&eiointc>;
327                                 #interrupt-cells = <1>;
328                                 interrupt-map-mask = <0x0 0x0 0x0 0x0>;
329                                 interrupt-map = <0x0 0x0 0x0 0x0 &eiointc 81>;
330                                 ranges;
331                         };
332 
333                         pcie@1,0 {
334                                 reg = <0x0800 0x0 0x0 0x0 0x0>;
335                                 #address-cells = <3>;
336                                 #size-cells = <2>;
337                                 device_type = "pci";
338                                 interrupt-parent = <&eiointc>;
339                                 #interrupt-cells = <1>;
340                                 interrupt-map-mask = <0x0 0x0 0x0 0x0>;
341                                 interrupt-map = <0x0 0x0 0x0 0x0 &eiointc 82>;
342                                 ranges;
343                         };
344                 };
345         };
346 };

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php