3 #include <dt-bindings/gpio/gpio.h>
4 #include <dt-bindings/phy/phy-lantiq-vrx200-pcie.h>
9 compatible = "lantiq,xway", "lantiq,vr9";
16 stdout-path = "serial0:115200n8";
24 compatible = "mips,mips34Kc";
30 compatible = "lantiq,cputemp";
34 compatible = "syscon-reboot";
44 compatible = "lantiq,biu", "simple-bus";
45 reg = <0x1f800000 0x800000>;
46 ranges = <0x0 0x1f800000 0x7fffff>;
50 #interrupt-cells = <1>;
52 compatible = "lantiq,icu";
53 reg = <0x80200 0xc8 /* icu0 */
54 0x80300 0xc8>; /* icu1 */
58 compatible = "lantiq,xrx100-wdt", "lantiq,xrx100-wdt";
68 compatible = "lantiq,sram", "simple-bus";
69 reg = <0x1f000000 0x800000>;
70 ranges = <0x0 0x1f000000 0x7fffff>;
74 #interrupt-cells = <1>;
76 compatible = "lantiq,eiu-xway";
77 reg = <0x101000 0x1000>;
78 interrupt-parent = <&icu0>;
79 lantiq,eiu-irqs = <166 135 66 40 41 42>;
83 compatible = "lantiq,pmu-xway";
84 reg = <0x102000 0x1000>;
88 compatible = "lantiq,cgu-xway";
89 reg = <0x103000 0x1000>;
93 compatible = "lantiq,dcdc-xrx200";
94 reg = <0x106a00 0x200>;
99 compatible = "lantiq,vmmc-xway";
100 reg = <0x107000 0x300>;
101 interrupt-parent = <&icu0>;
102 interrupts = <150 151 152 153 154 155>;
105 pcie0_phy: phy@106800 {
106 compatible = "lantiq,vrx200-pcie-phy";
107 reg = <0x106800 0x100>;
108 lantiq,rcu = <&rcu0>;
109 lantiq,rcu-endian-offset = <0x4c>;
110 lantiq,rcu-big-endian-mask = <0x80>; /* bit 7 */
112 resets = <&reset0 12 24>, <&reset0 22 22>;
113 reset-names = "phy", "pcie";
118 #address-cells = <1>;
120 compatible = "lantiq,xrx200-rcu", "simple-mfd", "syscon";
121 reg = <0x203000 0x100>;
122 ranges = <0x0 0x203000 0x100>;
126 compatible = "lantiq,xrx200-gphy";
129 resets = <&reset0 31 30>, <&reset1 7 7>;
130 reset-names = "gphy", "gphy2";
134 compatible = "lantiq,xrx200-gphy";
137 resets = <&reset0 29 28>, <&reset1 6 6>;
138 reset-names = "gphy", "gphy2";
141 reset0: reset-controller@10 {
142 compatible = "lantiq,xrx200-reset";
143 reg = <0x10 4>, <0x14 4>;
148 reset1: reset-controller@48 {
149 compatible = "lantiq,xrx200-reset";
150 reg = <0x48 4>, <0x24 4>;
155 usb_phy0: usb2-phy@18 {
156 compatible = "lantiq,xrx200-usb2-phy";
157 reg = <0x18 4>, <0x38 4>;
160 resets = <&reset1 4 4>, <&reset0 4 4>;
161 reset-names = "phy", "ctrl";
165 usb_phy1: usb2-phy@34 {
166 compatible = "lantiq,xrx200-usb2-phy";
167 reg = <0x34 4>, <0x3c 4>;
170 resets = <&reset1 5 5>, <&reset0 4 4>;
171 reset-names = "phy", "ctrl";
178 compatible = "lantiq,xrx200-fpi", "simple-bus";
179 ranges = <0x0 0x10000000 0xf000000>;
180 reg = <0x1f400000 0x1000>,
181 <0x10000000 0xf000000>;
183 offset-endianness = <0x4c>;
184 #address-cells = <1>;
187 localbus: localbus@0 {
188 #address-cells = <2>;
190 ranges = <0 0 0x0 0x3ffffff /* addrsel0 */
191 1 0 0x4000000 0x4000010>; /* addsel1 */
192 compatible = "lantiq,localbus", "simple-mfd";
196 compatible = "lantiq,gptu-xway";
197 reg = <0xe100a00 0x100>;
198 interrupt-parent = <&icu0>;
199 interrupts = <126 127 128 129 130 131>;
203 compatible = "lantiq,usif";
204 reg = <0xda00000 0x1000000>;
205 interrupt-parent = <&icu0>;
206 interrupts = <29 125 107 108 109 110>;
211 compatible = "lantiq,xrx200-spi", "lantiq,xrx100-spi";
212 reg = <0xe100800 0x100>;
213 interrupt-parent = <&icu0>;
214 interrupts = <22 23 24>;
215 interrupt-names = "spi_rx", "spi_tx", "spi_err",
217 #address-cells = <1>;
219 pinctrl-names = "default";
220 pinctrl-0 = <&spi_pins>, <&spi_cs4_pins>;
224 gpio: pinmux@e100b10 {
225 compatible = "lantiq,xrx200-pinctrl";
228 gpio-ranges = <&gpio 0 0 50>;
229 reg = <0xe100b10 0xa0>;
231 gphy0_led0_pins: gphy0-led0 {
233 lantiq,groups = "gphy0 led0";
234 lantiq,function = "gphy";
235 lantiq,open-drain = <0>;
241 gphy0_led1_pins: gphy0-led1 {
243 lantiq,groups = "gphy0 led1";
244 lantiq,function = "gphy";
245 lantiq,open-drain = <0>;
251 gphy0_led2_pins: gphy0-led2 {
253 lantiq,groups = "gphy0 led2";
254 lantiq,function = "gphy";
255 lantiq,open-drain = <0>;
261 gphy1_led0_pins: gphy1-led0 {
263 lantiq,groups = "gphy1 led0";
264 lantiq,function = "gphy";
265 lantiq,open-drain = <0>;
271 gphy1_led1_pins: gphy1-led1 {
273 lantiq,groups = "gphy1 led1";
274 lantiq,function = "gphy";
275 lantiq,open-drain = <0>;
281 gphy1_led2_pins: gphy1-led2 {
283 lantiq,groups = "gphy1 led2";
284 lantiq,function = "gphy";
285 lantiq,open-drain = <0>;
291 mdio_pins: mdio-pins {
293 lantiq,groups = "mdio";
294 lantiq,function = "mdio";
298 nand_pins: nand-pins {
300 lantiq,groups = "nand cle", "nand ale",
302 lantiq,function = "ebu";
304 lantiq,open-drain = <0>;
308 lantiq,groups = "nand rdy";
309 lantiq,function = "ebu";
315 nand_cs1_pins: nand-cs1 {
317 lantiq,groups = "nand cs1";
318 lantiq,function = "ebu";
319 lantiq,open-drain = <0>;
324 pci_gnt1_pins: pci-gnt1 {
326 lantiq,groups = "gnt1";
327 lantiq,function = "pci";
329 lantiq,open-drain = <0>;
334 pci_req1_pins: pci-req1 {
336 lantiq,groups = "req1";
337 lantiq,function = "pci";
339 lantiq,open-drain = <1>;
346 lantiq,groups = "spi_di";
347 lantiq,function = "spi";
350 lantiq,groups = "spi_do", "spi_clk";
351 lantiq,function = "spi";
356 spi_cs4_pins: spi-cs4 {
358 lantiq,groups = "spi_cs4";
359 lantiq,function = "spi";
366 lantiq,groups = "stp";
367 lantiq,function = "stp";
369 lantiq,open-drain = <0>;
377 compatible = "lantiq,gpio-stp-xway";
378 reg = <0xe100bb0 0x40>;
382 pinctrl-0 = <&stp_pins>;
383 pinctrl-names = "default";
385 lantiq,shadow = <0xffffff>;
386 lantiq,groups = <0x7>;
392 asc1: serial@e100c00 {
393 compatible = "lantiq,asc";
394 reg = <0xe100c00 0x400>;
395 interrupt-parent = <&icu0>;
396 interrupts = <112 113 114>;
400 compatible = "lantiq,deu-xrx200";
401 reg = <0xe103100 0xf00>;
405 compatible = "lantiq,dma-xway";
406 reg = <0xe104100 0x800>;
410 compatible = "lantiq,ebu-xway";
411 reg = <0xe105300 0x100>;
415 #address-cells = <1>;
418 compatible = "lantiq,xrx200-usb";
419 reg = <0xe101000 0x1000
421 interrupt-parent = <&icu0>;
422 interrupts = <62 91>;
425 phy-names = "usb2-phy";
429 #trigger-source-cells = <0>;
434 #address-cells = <1>;
437 compatible = "lantiq,xrx200-usb";
438 reg = <0xe106000 0x1000>;
439 interrupt-parent = <&icu0>;
443 phy-names = "usb2-phy";
447 #trigger-source-cells = <0>;
452 #address-cells = <1>;
454 compatible = "lantiq,xrx200-net";
455 reg = < 0xe108000 0x3000 /* switch */
456 0xe10b100 0x70 /* mdio */
457 0xe10b1d8 0x30 /* mii */
458 0xe10b308 0x30 /* pmac */
460 interrupt-parent = <&icu0>;
461 interrupts = <75 73 72>;
462 resets = <&reset0 21 16>, <&reset0 8 8>;
463 reset-names = "switch", "ppe";
464 lantiq,phys = <&gphy0>, <&gphy1>;
465 pinctrl-0 = <&mdio_pins>;
466 pinctrl-names = "default";
470 compatible = "lantiq,mei-xrx200";
471 reg = <0xe116000 0x9c>;
472 interrupt-parent = <&icu0>;
477 compatible = "lantiq,ppe-xrx200";
478 reg = <0xe234000 0x3ffd>;
479 interrupt-parent = <&icu0>;
481 resets = <&reset0 3 3>, <&reset0 11 11>, <&reset0 23 23>;
482 reset-names = "dsp", "dfe", "tc";
485 pcie0: pcie@d900000 {
488 compatible = "lantiq,pcie-xrx200";
490 #interrupt-cells = <1>;
492 #address-cells = <3>;
494 reg = <0xd900000 0x1000>;
496 ranges = <0x2000000 0 0x1c000000 0xc000000 0 0x1000000>;
498 interrupt-parent = <&icu0>;
499 interrupts = <161 144>;
501 phys = <&pcie0_phy LANTIQ_PCIE_PHY_MODE_36MHZ>;
504 resets = <&reset0 22 22>;
506 lantiq,rcu = <&rcu0>;
510 pcie_bridge0: bridge@0 {
512 #address-cells = <3>;
521 #address-cells = <3>;
523 #interrupt-cells = <1>;
524 compatible = "lantiq,pci-xway";
525 bus-range = <0x0 0x0>;
526 ranges = <0x2000000 0 0x8000000 0x8000000 0 0x2000000 /* pci memory */
527 0x1000000 0 0x00000000 0xae00000 0 0x200000>; /* io space */
529 reg = <0xe105400 0x400>, <0x7000000 0x8000>;
530 reg-names = "ctrl", "config";
532 lantiq,bus-clock = <33333333>;
533 interrupt-map-mask = <0xf800 0x0 0x0 0x7>;
534 interrupt-map = <0x7000 0 0 1 &icu0 30 1>; /* slot 14, irq 30 */
535 req-mask = <0x1>; /* GNT1 */
537 resets = <&reset0 13 13>;
545 compatible = "lantiq,vdsl-vrx200";