2 * dts file for AppliedMicro (APM) X-Gene Storm SOC
4 * Copyright (C) 2013, Applied Micro Circuits Corporation
6 * This program is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU General Public License as
8 * published by the Free Software Foundation; either version 2 of
9 * the License, or (at your option) any later version.
13 compatible = "apm,xgene-storm";
14 interrupt-parent = <&gic>;
24 compatible = "apm,potenza", "arm,armv8";
26 enable-method = "spin-table";
27 cpu-release-addr = <0x1 0x0000fff8>;
31 compatible = "apm,potenza", "arm,armv8";
33 enable-method = "spin-table";
34 cpu-release-addr = <0x1 0x0000fff8>;
38 compatible = "apm,potenza", "arm,armv8";
40 enable-method = "spin-table";
41 cpu-release-addr = <0x1 0x0000fff8>;
45 compatible = "apm,potenza", "arm,armv8";
47 enable-method = "spin-table";
48 cpu-release-addr = <0x1 0x0000fff8>;
52 compatible = "apm,potenza", "arm,armv8";
54 enable-method = "spin-table";
55 cpu-release-addr = <0x1 0x0000fff8>;
59 compatible = "apm,potenza", "arm,armv8";
61 enable-method = "spin-table";
62 cpu-release-addr = <0x1 0x0000fff8>;
66 compatible = "apm,potenza", "arm,armv8";
68 enable-method = "spin-table";
69 cpu-release-addr = <0x1 0x0000fff8>;
73 compatible = "apm,potenza", "arm,armv8";
75 enable-method = "spin-table";
76 cpu-release-addr = <0x1 0x0000fff8>;
80 gic: interrupt-controller@78010000 {
81 compatible = "arm,cortex-a15-gic";
82 #interrupt-cells = <3>;
84 reg = <0x0 0x78010000 0x0 0x1000>, /* GIC Dist */
85 <0x0 0x78020000 0x0 0x1000>, /* GIC CPU */
86 <0x0 0x78040000 0x0 0x2000>, /* GIC VCPU Control */
87 <0x0 0x78060000 0x0 0x2000>; /* GIC VCPU */
88 interrupts = <1 9 0xf04>; /* GIC Maintenence IRQ */
92 compatible = "arm,armv8-timer";
93 interrupts = <1 0 0xff01>, /* Secure Phys IRQ */
94 <1 13 0xff01>, /* Non-secure Phys IRQ */
95 <1 14 0xff01>, /* Virt IRQ */
96 <1 15 0xff01>; /* Hyp IRQ */
97 clock-frequency = <50000000>;
101 compatible = "apm,potenza-pmu", "arm,armv8-pmuv3";
102 interrupts = <1 12 0xff04>;
106 compatible = "simple-bus";
107 #address-cells = <2>;
110 dma-ranges = <0x0 0x0 0x0 0x0 0x400 0x0>;
113 #address-cells = <2>;
117 compatible = "fixed-clock";
119 clock-frequency = <100000000>;
120 clock-output-names = "refclk";
123 pcppll: pcppll@17000100 {
124 compatible = "apm,xgene-pcppll-clock";
126 clocks = <&refclk 0>;
127 clock-names = "pcppll";
128 reg = <0x0 0x17000100 0x0 0x1000>;
129 clock-output-names = "pcppll";
133 socpll: socpll@17000120 {
134 compatible = "apm,xgene-socpll-clock";
136 clocks = <&refclk 0>;
137 clock-names = "socpll";
138 reg = <0x0 0x17000120 0x0 0x1000>;
139 clock-output-names = "socpll";
143 socplldiv2: socplldiv2 {
144 compatible = "fixed-factor-clock";
146 clocks = <&socpll 0>;
147 clock-names = "socplldiv2";
150 clock-output-names = "socplldiv2";
154 compatible = "apm,xgene-device-clock";
156 clocks = <&socplldiv2 0>;
157 clock-names = "qmlclk";
158 reg = <0x0 0x1703C000 0x0 0x1000>;
159 reg-names = "csr-reg";
160 clock-output-names = "qmlclk";
164 compatible = "apm,xgene-device-clock";
166 clocks = <&socplldiv2 0>;
167 clock-names = "ethclk";
168 reg = <0x0 0x17000000 0x0 0x1000>;
169 reg-names = "div-reg";
170 divider-offset = <0x238>;
171 divider-width = <0x9>;
172 divider-shift = <0x0>;
173 clock-output-names = "ethclk";
177 compatible = "apm,xgene-device-clock";
179 clocks = <ðclk 0>;
180 reg = <0x0 0x1702C000 0x0 0x1000>;
181 reg-names = "csr-reg";
182 clock-output-names = "menetclk";
185 sge0clk: sge0clk@1f21c000 {
186 compatible = "apm,xgene-device-clock";
188 clocks = <&socplldiv2 0>;
189 reg = <0x0 0x1f21c000 0x0 0x1000>;
190 reg-names = "csr-reg";
192 clock-output-names = "sge0clk";
195 sge1clk: sge1clk@1f21c000 {
196 compatible = "apm,xgene-device-clock";
198 clocks = <&socplldiv2 0>;
199 reg = <0x0 0x1f21c000 0x0 0x1000>;
200 reg-names = "csr-reg";
202 clock-output-names = "sge1clk";
205 xge0clk: xge0clk@1f61c000 {
206 compatible = "apm,xgene-device-clock";
208 clocks = <&socplldiv2 0>;
209 reg = <0x0 0x1f61c000 0x0 0x1000>;
210 reg-names = "csr-reg";
212 clock-output-names = "xge0clk";
215 xge1clk: xge1clk@1f62c000 {
216 compatible = "apm,xgene-device-clock";
219 clocks = <&socplldiv2 0>;
220 reg = <0x0 0x1f62c000 0x0 0x1000>;
221 reg-names = "csr-reg";
223 clock-output-names = "xge1clk";
226 sataphy1clk: sataphy1clk@1f21c000 {
227 compatible = "apm,xgene-device-clock";
229 clocks = <&socplldiv2 0>;
230 reg = <0x0 0x1f21c000 0x0 0x1000>;
231 reg-names = "csr-reg";
232 clock-output-names = "sataphy1clk";
236 enable-offset = <0x0>;
237 enable-mask = <0x06>;
240 sataphy2clk: sataphy1clk@1f22c000 {
241 compatible = "apm,xgene-device-clock";
243 clocks = <&socplldiv2 0>;
244 reg = <0x0 0x1f22c000 0x0 0x1000>;
245 reg-names = "csr-reg";
246 clock-output-names = "sataphy2clk";
250 enable-offset = <0x0>;
251 enable-mask = <0x06>;
254 sataphy3clk: sataphy1clk@1f23c000 {
255 compatible = "apm,xgene-device-clock";
257 clocks = <&socplldiv2 0>;
258 reg = <0x0 0x1f23c000 0x0 0x1000>;
259 reg-names = "csr-reg";
260 clock-output-names = "sataphy3clk";
264 enable-offset = <0x0>;
265 enable-mask = <0x06>;
268 sata01clk: sata01clk@1f21c000 {
269 compatible = "apm,xgene-device-clock";
271 clocks = <&socplldiv2 0>;
272 reg = <0x0 0x1f21c000 0x0 0x1000>;
273 reg-names = "csr-reg";
274 clock-output-names = "sata01clk";
277 enable-offset = <0x0>;
278 enable-mask = <0x39>;
281 sata23clk: sata23clk@1f22c000 {
282 compatible = "apm,xgene-device-clock";
284 clocks = <&socplldiv2 0>;
285 reg = <0x0 0x1f22c000 0x0 0x1000>;
286 reg-names = "csr-reg";
287 clock-output-names = "sata23clk";
290 enable-offset = <0x0>;
291 enable-mask = <0x39>;
294 sata45clk: sata45clk@1f23c000 {
295 compatible = "apm,xgene-device-clock";
297 clocks = <&socplldiv2 0>;
298 reg = <0x0 0x1f23c000 0x0 0x1000>;
299 reg-names = "csr-reg";
300 clock-output-names = "sata45clk";
303 enable-offset = <0x0>;
304 enable-mask = <0x39>;
307 rtcclk: rtcclk@17000000 {
308 compatible = "apm,xgene-device-clock";
310 clocks = <&socplldiv2 0>;
311 reg = <0x0 0x17000000 0x0 0x2000>;
312 reg-names = "csr-reg";
315 enable-offset = <0x10>;
317 clock-output-names = "rtcclk";
320 rngpkaclk: rngpkaclk@17000000 {
321 compatible = "apm,xgene-device-clock";
323 clocks = <&socplldiv2 0>;
324 reg = <0x0 0x17000000 0x0 0x2000>;
325 reg-names = "csr-reg";
328 enable-offset = <0x10>;
329 enable-mask = <0x10>;
330 clock-output-names = "rngpkaclk";
333 pcie0clk: pcie0clk@1f2bc000 {
335 compatible = "apm,xgene-device-clock";
337 clocks = <&socplldiv2 0>;
338 reg = <0x0 0x1f2bc000 0x0 0x1000>;
339 reg-names = "csr-reg";
340 clock-output-names = "pcie0clk";
343 pcie1clk: pcie1clk@1f2cc000 {
345 compatible = "apm,xgene-device-clock";
347 clocks = <&socplldiv2 0>;
348 reg = <0x0 0x1f2cc000 0x0 0x1000>;
349 reg-names = "csr-reg";
350 clock-output-names = "pcie1clk";
353 pcie2clk: pcie2clk@1f2dc000 {
355 compatible = "apm,xgene-device-clock";
357 clocks = <&socplldiv2 0>;
358 reg = <0x0 0x1f2dc000 0x0 0x1000>;
359 reg-names = "csr-reg";
360 clock-output-names = "pcie2clk";
363 pcie3clk: pcie3clk@1f50c000 {
365 compatible = "apm,xgene-device-clock";
367 clocks = <&socplldiv2 0>;
368 reg = <0x0 0x1f50c000 0x0 0x1000>;
369 reg-names = "csr-reg";
370 clock-output-names = "pcie3clk";
373 pcie4clk: pcie4clk@1f51c000 {
375 compatible = "apm,xgene-device-clock";
377 clocks = <&socplldiv2 0>;
378 reg = <0x0 0x1f51c000 0x0 0x1000>;
379 reg-names = "csr-reg";
380 clock-output-names = "pcie4clk";
383 dmaclk: dmaclk@1f27c000 {
384 compatible = "apm,xgene-device-clock";
386 clocks = <&socplldiv2 0>;
387 reg = <0x0 0x1f27c000 0x0 0x1000>;
388 reg-names = "csr-reg";
389 clock-output-names = "dmaclk";
394 compatible = "apm,xgene1-msi";
396 reg = <0x00 0x79000000 0x0 0x900000>;
397 interrupts = < 0x0 0x10 0x4
415 scu: system-clk-controller@17000000 {
416 compatible = "apm,xgene-scu","syscon";
417 reg = <0x0 0x17000000 0x0 0x400>;
420 reboot: reboot@17000014 {
421 compatible = "syscon-reboot";
428 compatible = "apm,xgene-csw", "syscon";
429 reg = <0x0 0x7e200000 0x0 0x1000>;
432 mcba: mcba@7e700000 {
433 compatible = "apm,xgene-mcb", "syscon";
434 reg = <0x0 0x7e700000 0x0 0x1000>;
437 mcbb: mcbb@7e720000 {
438 compatible = "apm,xgene-mcb", "syscon";
439 reg = <0x0 0x7e720000 0x0 0x1000>;
442 efuse: efuse@1054a000 {
443 compatible = "apm,xgene-efuse", "syscon";
444 reg = <0x0 0x1054a000 0x0 0x20>;
448 compatible = "apm,xgene-edac";
449 #address-cells = <2>;
453 regmap-mcba = <&mcba>;
454 regmap-mcbb = <&mcbb>;
455 regmap-efuse = <&efuse>;
456 reg = <0x0 0x78800000 0x0 0x100>;
457 interrupts = <0x0 0x20 0x4>,
462 compatible = "apm,xgene-edac-mc";
463 reg = <0x0 0x7e800000 0x0 0x1000>;
464 memory-controller = <0>;
468 compatible = "apm,xgene-edac-mc";
469 reg = <0x0 0x7e840000 0x0 0x1000>;
470 memory-controller = <1>;
474 compatible = "apm,xgene-edac-mc";
475 reg = <0x0 0x7e880000 0x0 0x1000>;
476 memory-controller = <2>;
480 compatible = "apm,xgene-edac-mc";
481 reg = <0x0 0x7e8c0000 0x0 0x1000>;
482 memory-controller = <3>;
486 compatible = "apm,xgene-edac-pmd";
487 reg = <0x0 0x7c000000 0x0 0x200000>;
488 pmd-controller = <0>;
492 compatible = "apm,xgene-edac-pmd";
493 reg = <0x0 0x7c200000 0x0 0x200000>;
494 pmd-controller = <1>;
498 compatible = "apm,xgene-edac-pmd";
499 reg = <0x0 0x7c400000 0x0 0x200000>;
500 pmd-controller = <2>;
504 compatible = "apm,xgene-edac-pmd";
505 reg = <0x0 0x7c600000 0x0 0x200000>;
506 pmd-controller = <3>;
510 compatible = "apm,xgene-edac-l3";
511 reg = <0x0 0x7e600000 0x0 0x1000>;
515 compatible = "apm,xgene-edac-soc-v1";
516 reg = <0x0 0x7e930000 0x0 0x1000>;
520 pcie0: pcie@1f2b0000 {
523 compatible = "apm,xgene-storm-pcie", "apm,xgene-pcie";
524 #interrupt-cells = <1>;
526 #address-cells = <3>;
527 reg = < 0x00 0x1f2b0000 0x0 0x00010000 /* Controller registers */
528 0xe0 0xd0000000 0x0 0x00040000>; /* PCI config space */
529 reg-names = "csr", "cfg";
530 ranges = <0x01000000 0x00 0x00000000 0xe0 0x10000000 0x00 0x00010000 /* io */
531 0x02000000 0x00 0x80000000 0xe1 0x80000000 0x00 0x80000000 /* mem */
532 0x43000000 0xf0 0x00000000 0xf0 0x00000000 0x10 0x00000000>; /* mem */
533 dma-ranges = <0x42000000 0x80 0x00000000 0x80 0x00000000 0x00 0x80000000
534 0x42000000 0x00 0x00000000 0x00 0x00000000 0x80 0x00000000>;
535 interrupt-map-mask = <0x0 0x0 0x0 0x7>;
536 interrupt-map = <0x0 0x0 0x0 0x1 &gic 0x0 0xc2 0x1
537 0x0 0x0 0x0 0x2 &gic 0x0 0xc3 0x1
538 0x0 0x0 0x0 0x3 &gic 0x0 0xc4 0x1
539 0x0 0x0 0x0 0x4 &gic 0x0 0xc5 0x1>;
541 clocks = <&pcie0clk 0>;
545 pcie1: pcie@1f2c0000 {
548 compatible = "apm,xgene-storm-pcie", "apm,xgene-pcie";
549 #interrupt-cells = <1>;
551 #address-cells = <3>;
552 reg = < 0x00 0x1f2c0000 0x0 0x00010000 /* Controller registers */
553 0xd0 0xd0000000 0x0 0x00040000>; /* PCI config space */
554 reg-names = "csr", "cfg";
555 ranges = <0x01000000 0x00 0x00000000 0xd0 0x10000000 0x00 0x00010000 /* io */
556 0x02000000 0x00 0x80000000 0xd1 0x80000000 0x00 0x80000000 /* mem */
557 0x43000000 0xd8 0x00000000 0xd8 0x00000000 0x08 0x00000000>; /* mem */
558 dma-ranges = <0x42000000 0x80 0x00000000 0x80 0x00000000 0x00 0x80000000
559 0x42000000 0x00 0x00000000 0x00 0x00000000 0x80 0x00000000>;
560 interrupt-map-mask = <0x0 0x0 0x0 0x7>;
561 interrupt-map = <0x0 0x0 0x0 0x1 &gic 0x0 0xc8 0x1
562 0x0 0x0 0x0 0x2 &gic 0x0 0xc9 0x1
563 0x0 0x0 0x0 0x3 &gic 0x0 0xca 0x1
564 0x0 0x0 0x0 0x4 &gic 0x0 0xcb 0x1>;
566 clocks = <&pcie1clk 0>;
570 pcie2: pcie@1f2d0000 {
573 compatible = "apm,xgene-storm-pcie", "apm,xgene-pcie";
574 #interrupt-cells = <1>;
576 #address-cells = <3>;
577 reg = < 0x00 0x1f2d0000 0x0 0x00010000 /* Controller registers */
578 0x90 0xd0000000 0x0 0x00040000>; /* PCI config space */
579 reg-names = "csr", "cfg";
580 ranges = <0x01000000 0x00 0x00000000 0x90 0x10000000 0x00 0x00010000 /* io */
581 0x02000000 0x00 0x80000000 0x91 0x80000000 0x00 0x80000000 /* mem */
582 0x43000000 0x94 0x00000000 0x94 0x00000000 0x04 0x00000000>; /* mem */
583 dma-ranges = <0x42000000 0x80 0x00000000 0x80 0x00000000 0x00 0x80000000
584 0x42000000 0x00 0x00000000 0x00 0x00000000 0x80 0x00000000>;
585 interrupt-map-mask = <0x0 0x0 0x0 0x7>;
586 interrupt-map = <0x0 0x0 0x0 0x1 &gic 0x0 0xce 0x1
587 0x0 0x0 0x0 0x2 &gic 0x0 0xcf 0x1
588 0x0 0x0 0x0 0x3 &gic 0x0 0xd0 0x1
589 0x0 0x0 0x0 0x4 &gic 0x0 0xd1 0x1>;
591 clocks = <&pcie2clk 0>;
595 pcie3: pcie@1f500000 {
598 compatible = "apm,xgene-storm-pcie", "apm,xgene-pcie";
599 #interrupt-cells = <1>;
601 #address-cells = <3>;
602 reg = < 0x00 0x1f500000 0x0 0x00010000 /* Controller registers */
603 0xa0 0xd0000000 0x0 0x00040000>; /* PCI config space */
604 reg-names = "csr", "cfg";
605 ranges = <0x01000000 0x00 0x00000000 0xa0 0x10000000 0x00 0x00010000 /* io */
606 0x02000000 0x00 0x80000000 0xa1 0x80000000 0x00 0x80000000 /* mem */
607 0x43000000 0xb0 0x00000000 0xb0 0x00000000 0x10 0x00000000>; /* mem */
608 dma-ranges = <0x42000000 0x80 0x00000000 0x80 0x00000000 0x00 0x80000000
609 0x42000000 0x00 0x00000000 0x00 0x00000000 0x80 0x00000000>;
610 interrupt-map-mask = <0x0 0x0 0x0 0x7>;
611 interrupt-map = <0x0 0x0 0x0 0x1 &gic 0x0 0xd4 0x1
612 0x0 0x0 0x0 0x2 &gic 0x0 0xd5 0x1
613 0x0 0x0 0x0 0x3 &gic 0x0 0xd6 0x1
614 0x0 0x0 0x0 0x4 &gic 0x0 0xd7 0x1>;
616 clocks = <&pcie3clk 0>;
620 pcie4: pcie@1f510000 {
623 compatible = "apm,xgene-storm-pcie", "apm,xgene-pcie";
624 #interrupt-cells = <1>;
626 #address-cells = <3>;
627 reg = < 0x00 0x1f510000 0x0 0x00010000 /* Controller registers */
628 0xc0 0xd0000000 0x0 0x00200000>; /* PCI config space */
629 reg-names = "csr", "cfg";
630 ranges = <0x01000000 0x00 0x00000000 0xc0 0x10000000 0x00 0x00010000 /* io */
631 0x02000000 0x00 0x80000000 0xc1 0x80000000 0x00 0x80000000 /* mem */
632 0x43000000 0xc8 0x00000000 0xc8 0x00000000 0x08 0x00000000>; /* mem */
633 dma-ranges = <0x42000000 0x80 0x00000000 0x80 0x00000000 0x00 0x80000000
634 0x42000000 0x00 0x00000000 0x00 0x00000000 0x80 0x00000000>;
635 interrupt-map-mask = <0x0 0x0 0x0 0x7>;
636 interrupt-map = <0x0 0x0 0x0 0x1 &gic 0x0 0xda 0x1
637 0x0 0x0 0x0 0x2 &gic 0x0 0xdb 0x1
638 0x0 0x0 0x0 0x3 &gic 0x0 0xdc 0x1
639 0x0 0x0 0x0 0x4 &gic 0x0 0xdd 0x1>;
641 clocks = <&pcie4clk 0>;
645 serial0: serial@1c020000 {
647 device_type = "serial";
648 compatible = "ns16550a";
649 reg = <0 0x1c020000 0x0 0x1000>;
651 clock-frequency = <10000000>; /* Updated by bootloader */
652 interrupt-parent = <&gic>;
653 interrupts = <0x0 0x4c 0x4>;
656 serial1: serial@1c021000 {
658 device_type = "serial";
659 compatible = "ns16550a";
660 reg = <0 0x1c021000 0x0 0x1000>;
662 clock-frequency = <10000000>; /* Updated by bootloader */
663 interrupt-parent = <&gic>;
664 interrupts = <0x0 0x4d 0x4>;
667 serial2: serial@1c022000 {
669 device_type = "serial";
670 compatible = "ns16550a";
671 reg = <0 0x1c022000 0x0 0x1000>;
673 clock-frequency = <10000000>; /* Updated by bootloader */
674 interrupt-parent = <&gic>;
675 interrupts = <0x0 0x4e 0x4>;
678 serial3: serial@1c023000 {
680 device_type = "serial";
681 compatible = "ns16550a";
682 reg = <0 0x1c023000 0x0 0x1000>;
684 clock-frequency = <10000000>; /* Updated by bootloader */
685 interrupt-parent = <&gic>;
686 interrupts = <0x0 0x4f 0x4>;
690 compatible = "apm,xgene-phy";
691 reg = <0x0 0x1f21a000 0x0 0x100>;
693 clocks = <&sataphy1clk 0>;
695 apm,tx-boost-gain = <30 30 30 30 30 30>;
696 apm,tx-eye-tuning = <2 10 10 2 10 10>;
700 compatible = "apm,xgene-phy";
701 reg = <0x0 0x1f22a000 0x0 0x100>;
703 clocks = <&sataphy2clk 0>;
705 apm,tx-boost-gain = <30 30 30 30 30 30>;
706 apm,tx-eye-tuning = <1 10 10 2 10 10>;
710 compatible = "apm,xgene-phy";
711 reg = <0x0 0x1f23a000 0x0 0x100>;
713 clocks = <&sataphy3clk 0>;
715 apm,tx-boost-gain = <31 31 31 31 31 31>;
716 apm,tx-eye-tuning = <2 10 10 2 10 10>;
719 sata1: sata@1a000000 {
720 compatible = "apm,xgene-ahci";
721 reg = <0x0 0x1a000000 0x0 0x1000>,
722 <0x0 0x1f210000 0x0 0x1000>,
723 <0x0 0x1f21d000 0x0 0x1000>,
724 <0x0 0x1f21e000 0x0 0x1000>,
725 <0x0 0x1f217000 0x0 0x1000>;
726 interrupts = <0x0 0x86 0x4>;
729 clocks = <&sata01clk 0>;
731 phy-names = "sata-phy";
734 sata2: sata@1a400000 {
735 compatible = "apm,xgene-ahci";
736 reg = <0x0 0x1a400000 0x0 0x1000>,
737 <0x0 0x1f220000 0x0 0x1000>,
738 <0x0 0x1f22d000 0x0 0x1000>,
739 <0x0 0x1f22e000 0x0 0x1000>,
740 <0x0 0x1f227000 0x0 0x1000>;
741 interrupts = <0x0 0x87 0x4>;
744 clocks = <&sata23clk 0>;
746 phy-names = "sata-phy";
749 sata3: sata@1a800000 {
750 compatible = "apm,xgene-ahci";
751 reg = <0x0 0x1a800000 0x0 0x1000>,
752 <0x0 0x1f230000 0x0 0x1000>,
753 <0x0 0x1f23d000 0x0 0x1000>,
754 <0x0 0x1f23e000 0x0 0x1000>;
755 interrupts = <0x0 0x88 0x4>;
758 clocks = <&sata45clk 0>;
760 phy-names = "sata-phy";
763 sbgpio: sbgpio@17001000{
764 compatible = "apm,xgene-gpio-sb";
765 reg = <0x0 0x17001000 0x0 0x400>;
768 interrupts = <0x0 0x28 0x1>,
777 compatible = "apm,xgene-rtc";
778 reg = <0x0 0x10510000 0x0 0x400>;
779 interrupts = <0x0 0x46 0x4>;
781 clocks = <&rtcclk 0>;
784 menet: ethernet@17020000 {
785 compatible = "apm,xgene-enet";
787 reg = <0x0 0x17020000 0x0 0xd100>,
788 <0x0 0X17030000 0x0 0Xc300>,
789 <0x0 0X10000000 0x0 0X200>;
790 reg-names = "enet_csr", "ring_csr", "ring_cmd";
791 interrupts = <0x0 0x3c 0x4>;
793 clocks = <&menetclk 0>;
794 /* mac address will be overwritten by the bootloader */
795 local-mac-address = [00 00 00 00 00 00];
796 phy-connection-type = "rgmii";
797 phy-handle = <&menetphy>;
799 compatible = "apm,xgene-mdio";
800 #address-cells = <1>;
802 menetphy: menetphy@3 {
803 compatible = "ethernet-phy-id001c.c915";
810 sgenet0: ethernet@1f210000 {
811 compatible = "apm,xgene1-sgenet";
813 reg = <0x0 0x1f210000 0x0 0xd100>,
814 <0x0 0x1f200000 0x0 0Xc300>,
815 <0x0 0x1B000000 0x0 0X200>;
816 reg-names = "enet_csr", "ring_csr", "ring_cmd";
817 interrupts = <0x0 0xA0 0x4>,
820 clocks = <&sge0clk 0>;
821 local-mac-address = [00 00 00 00 00 00];
822 phy-connection-type = "sgmii";
825 sgenet1: ethernet@1f210030 {
826 compatible = "apm,xgene1-sgenet";
828 reg = <0x0 0x1f210030 0x0 0xd100>,
829 <0x0 0x1f200000 0x0 0Xc300>,
830 <0x0 0x1B000000 0x0 0X8000>;
831 reg-names = "enet_csr", "ring_csr", "ring_cmd";
832 interrupts = <0x0 0xAC 0x4>,
836 clocks = <&sge1clk 0>;
837 local-mac-address = [00 00 00 00 00 00];
838 phy-connection-type = "sgmii";
841 xgenet: ethernet@1f610000 {
842 compatible = "apm,xgene1-xgenet";
844 reg = <0x0 0x1f610000 0x0 0xd100>,
845 <0x0 0x1f600000 0x0 0Xc300>,
846 <0x0 0x18000000 0x0 0X200>;
847 reg-names = "enet_csr", "ring_csr", "ring_cmd";
848 interrupts = <0x0 0x60 0x4>,
851 clocks = <&xge0clk 0>;
852 /* mac address will be overwritten by the bootloader */
853 local-mac-address = [00 00 00 00 00 00];
854 phy-connection-type = "xgmii";
857 xgenet1: ethernet@1f620000 {
858 compatible = "apm,xgene1-xgenet";
860 reg = <0x0 0x1f620000 0x0 0xd100>,
861 <0x0 0x1f600000 0x0 0Xc300>,
862 <0x0 0x18000000 0x0 0X8000>;
863 reg-names = "enet_csr", "ring_csr", "ring_cmd";
864 interrupts = <0x0 0x6C 0x4>,
868 clocks = <&xge1clk 0>;
869 /* mac address will be overwritten by the bootloader */
870 local-mac-address = [00 00 00 00 00 00];
871 phy-connection-type = "xgmii";
875 compatible = "apm,xgene-rng";
876 reg = <0x0 0x10520000 0x0 0x100>;
877 interrupts = <0x0 0x41 0x4>;
878 clocks = <&rngpkaclk 0>;
882 compatible = "apm,xgene-storm-dma";
884 reg = <0x0 0x1f270000 0x0 0x10000>,
885 <0x0 0x1f200000 0x0 0x10000>,
886 <0x0 0x1b000000 0x0 0x400000>,
887 <0x0 0x1054a000 0x0 0x100>;
888 interrupts = <0x0 0x82 0x4>,
894 clocks = <&dmaclk 0>;