ramips: enable external amplifier for D-Link DIR-810L
[openwrt/openwrt.git] / target / linux / ramips / dts / rt3883.dtsi
index d92cb65b7ad917f179bc73e54ab529422e7a31dd..fffac169113fd48d51cf8e0e8ea6d1751b61db69 100644 (file)
@@ -4,8 +4,12 @@
        compatible = "ralink,rt3883-soc";
 
        cpus {
+               #address-cells = <1>;
+               #size-cells = <0>;
+
                cpu@0 {
                        compatible = "mips,mips74Kc";
+                       reg = <0>;
                };
        };
 
@@ -19,7 +23,7 @@
                serial0 = &uartlite;
        };
 
-       cpuintc: cpuintc@0 {
+       cpuintc: cpuintc {
                #address-cells = <0>;
                #interrupt-cells = <1>;
                interrupt-controller;
@@ -35,7 +39,7 @@
                #size-cells = <1>;
 
                sysc: sysc@0 {
-                       compatible = "ralink,rt3883-sysc", "ralink,rt3050-sysc";
+                       compatible = "ralink,rt3883-sysc", "ralink,rt3050-sysc", "syscon";
                        reg = <0x0 0x100>;
                };
 
                        #gpio-cells = <2>;
 
                        ralink,gpio-base = <0>;
-                       ralink,num-gpios = <24>;
+                       ralink,nr-gpio = <24>;
                        ralink,register-map = [ 00 04 08 0c
                                                20 24 28 2c
                                                30 34 ];
                        #gpio-cells = <2>;
 
                        ralink,gpio-base = <24>;
-                       ralink,num-gpios = <16>;
+                       ralink,nr-gpio = <16>;
                        ralink,register-map = [ 00 04 08 0c
                                                10 14 18 1c
                                                20 24 ];
                        #gpio-cells = <2>;
 
                        ralink,gpio-base = <40>;
-                       ralink,num-gpios = <32>;
+                       ralink,nr-gpio = <32>;
                        ralink,register-map = [ 00 04 08 0c
                                                10 14 18 1c
                                                20 24 ];
                        #gpio-cells = <2>;
 
                        ralink,gpio-base = <72>;
-                       ralink,num-gpios = <24>;
+                       ralink,nr-gpio = <24>;
                        ralink,register-map = [ 00 04 08 0c
                                                10 14 18 1c
                                                20 24 ];
                        status = "disabled";
                };
 
+               i2c@900 {
+                       compatible = "ralink,rt2880-i2c";
+                       reg = <0x900 0x100>;
+
+                       resets = <&rstctrl 16>;
+                       reset-names = "i2c";
+
+                       #address-cells = <1>;
+                       #size-cells = <0>;
+
+                       status = "disabled";
+
+                       pinctrl-names = "default";
+                       pinctrl-0 = <&i2c_pins>;
+               };
+
+               i2s@a00 {
+                       compatible = "ralink,rt3883-i2s";
+                       reg = <0xa00 0x100>;
+
+                       resets = <&rstctrl 17>;
+                       reset-names = "i2s";
+
+                       interrupt-parent = <&intc>;
+                       interrupts = <10>;
+
+                       txdma-req = <2>;
+                       rxdma-req = <3>;
+
+                       dmas = <&gdma 4>,
+                               <&gdma 6>;
+                       dma-names = "tx", "rx";
+
+                       status = "disabled";
+               };
+
                spi0: spi@b00 {
                        compatible = "ralink,rt3883-spi", "ralink,rt2880-spi";
                        reg = <0xb00 0x40>;
                        pinctrl-names = "default";
                        pinctrl-0 = <&uartlite_pins>;
                };
+
+               gdma: gdma@2800 {
+                       compatible = "ralink,rt3883-gdma";
+                       reg = <0x2800 0x800>;
+
+                       resets = <&rstctrl 14>;
+                       reset-names = "dma";
+
+                       interrupt-parent = <&intc>;
+                       interrupts = <7>;
+
+                       #dma-cells = <1>;
+                       #dma-channels = <16>;
+                       #dma-requests = <16>;
+
+                       status = "disabled";
+               };
        };
 
        pinctrl: pinctrl {
                state_default: pinctrl0 {
                };
 
-               spi_pins: spi {
-                       spi {
+               i2c_pins: i2c_pins {
+                       i2c_pins {
+                               ralink,group = "i2c";
+                               ralink,function = "i2c";
+                       };
+               };
+
+               spi_pins: spi_pins {
+                       spi_pins {
                                ralink,group = "spi";
                                ralink,function = "spi";
                        };
 
                spi_cs1: spi1 {
                        spi1 {
-                               ralink,group = "spi_cs1";
-                               ralink,function = "spi_cs1";
+                               ralink,group = "pci";
+                               ralink,function = "pci-func";
                        };
                };
 
                                ralink,function = "uartlite";
                        };
                };
+
+               pci_pins: pci {
+                       pci {
+                               ralink,group = "pci";
+                               ralink,function = "pci-fnc";
+                       };
+               };
        };
 
        ethernet: ethernet@10100000 {
                compatible = "ralink,rt3883-eth";
+               #address-cells = <1>;
+               #size-cells = <0>;
                reg = <0x10100000 0x10000>;
 
                resets = <&rstctrl 21>;
                #size-cells = <1>;
                ranges; /* direct mapping */
 
+               pinctrl-names = "default";
+               pinctrl-0 = <&pci_pins>;
+
                status = "disabled";
 
                pciintc: interrupt-controller {
                        interrupts = <4>;
                };
 
-               host-bridge {
+               pci@0 {
                        #address-cells = <3>;
                        #size-cells = <2>;
                        #interrupt-cells = <1>;
                                0x9000 0 0 4 &pciintc 19
                        >;
 
-                       pci-bridge@1 {
+                       pci1: pci@1 {
                                reg = <0x0800 0 0 0 0>;
                                device_type = "pci";
                                #interrupt-cells = <1>;
 
                                status = "disabled";
 
-                               ralink,pci-slot = <1>;
-
                                interrupt-map-mask = <0x0 0 0 0>;
                                interrupt-map = <0x0 0 0 0 &pciintc 20>;
+
+                               bus-range = <1 255>;
+                               ranges;
                        };
 
-                       pci-slot@17 {
+                       pci17: pci@11,0 {
                                reg = <0x8800 0 0 0 0>;
-                               device_type = "pci";
                                #interrupt-cells = <1>;
                                #address-cells = <3>;
                                #size-cells = <2>;
 
-                               ralink,pci-slot = <17>;
-
                                status = "disabled";
                        };
 
-                       pci-slot@18 {
+                       pci18: pci@12,0 {
                                reg = <0x9000 0 0 0 0>;
-                               device_type = "pci";
                                #interrupt-cells = <1>;
                                #address-cells = <3>;
                                #size-cells = <2>;
 
-                               ralink,pci-slot = <18>;
-
                                status = "disabled";
                        };
                };
 
        usbphy: usbphy {
                compatible = "ralink,rt3352-usbphy";
-               #phy-cells = <1>;
+               #phy-cells = <0>;
 
+               ralink,sysctl = <&sysc>;
                resets = <&rstctrl 22 &rstctrl 25>;
                reset-names = "host", "device";
                clocks = <&clkctrl 22 &clkctrl 25>;
        };
 
        ehci: ehci@101c0000 {
+               #address-cells = <1>;
+               #size-cells = <0>;
                compatible = "generic-ehci";
                reg = <0x101c0000 0x1000>;
 
-               phys = <&usbphy 1>;
+               phys = <&usbphy>;
                phy-names = "usb";
 
                interrupt-parent = <&intc>;
                interrupts = <18>;
 
                status = "disabled";
+
+               ehci_port1: port@1 {
+                       reg = <1>;
+                       #trigger-source-cells = <0>;
+               };
        };
 
        ohci: ohci@101c1000 {
+               #address-cells = <1>;
+               #size-cells = <0>;
                compatible = "generic-ohci";
                reg = <0x101c1000 0x1000>;
 
-               phys = <&usbphy 1>;
+               phys = <&usbphy>;
                phy-names = "usb";
 
                interrupt-parent = <&intc>;
                interrupts = <18>;
 
                status = "disabled";
+
+               ohci_port1: port@1 {
+                       reg = <1>;
+                       #trigger-source-cells = <0>;
+               };
        };
 };