ramips: Add support for Cudy WR1300 v3
[openwrt/openwrt.git] / target / linux / ramips / dts / mt7621_iodata_wn-ax1167gr.dts
index e5c00abb0bef318d7c5ce3e541abd1906ba557ba..b08939a451d012ed8ec39ceade8b110b0ea0328b 100644 (file)
@@ -1,5 +1,3 @@
-/dts-v1/;
-
 #include "mt7621.dtsi"
 
 #include <dt-bindings/gpio/gpio.h>
                compatible = "gpio-leds";
 
                led_power: power {
-                       label = "wn-ax1167gr:green:power";
-                       gpios = <&gpio0 7 GPIO_ACTIVE_LOW>;
+                       label = "green:power";
+                       gpios = <&gpio 7 GPIO_ACTIVE_LOW>;
                };
 
                wps {
-                       label = "wn-ax1167gr:green:wps";
-                       gpios = <&gpio0 17 GPIO_ACTIVE_LOW>;
+                       label = "green:wps";
+                       gpios = <&gpio 17 GPIO_ACTIVE_LOW>;
                };
        };
 
        keys {
-               compatible = "gpio-keys-polled";
-               poll-interval = <20>;
+               compatible = "gpio-keys";
 
                reset {
                        label = "reset";
-                       gpios = <&gpio0 10 GPIO_ACTIVE_LOW>;
+                       gpios = <&gpio 10 GPIO_ACTIVE_LOW>;
                        linux,code = <KEY_RESTART>;
                };
 
                wps {
                        label = "wps";
-                       gpios = <&gpio0 14 GPIO_ACTIVE_LOW>;
+                       gpios = <&gpio 14 GPIO_ACTIVE_LOW>;
                        linux,code = <KEY_WPS_BUTTON>;
                };
 
                auto {
                        label = "auto";
-                       gpios = <&gpio0 15 GPIO_ACTIVE_LOW>;
+                       gpios = <&gpio 15 GPIO_ACTIVE_LOW>;
                        linux,code = <BTN_0>;
                        linux,input-type = <EV_SW>;
                };
 
                custom {
                        label = "custom";
-                       gpios = <&gpio0 16 GPIO_ACTIVE_LOW>;
+                       gpios = <&gpio 16 GPIO_ACTIVE_LOW>;
                        linux,code = <BTN_0>;
                        linux,input-type = <EV_SW>;
                };
@@ -69,7 +66,7 @@
 &spi0 {
        status = "okay";
 
-       m25p80@0 {
+       flash@0 {
                compatible = "jedec,spi-nor";
                reg = <0>;
                spi-max-frequency = <10000000>;
                                read-only;
                        };
 
-                       Factory: partition@40000 {
-                               label = "Factory";
+                       factory: partition@40000 {
+                               compatible = "nvmem-cells";
+                               label = "factory";
                                reg = <0x40000 0x10000>;
+                               #address-cells = <1>;
+                               #size-cells = <1>;
                                read-only;
+
+                               eeprom_factory_0: eeprom@0 {
+                                       reg = <0x0 0x200>;
+                               };
+
+                               macaddr_factory_4: macaddr@4 {
+                                       reg = <0x4 0x6>;
+                               };
                        };
 
                        iNIC_rf: partition@50000 {
+                               compatible = "nvmem-cells";
                                label = "iNIC_rf";
                                reg = <0x50000 0x10000>;
+                               #address-cells = <1>;
+                               #size-cells = <1>;
                                read-only;
+
+                               eeprom_iNIC_rf_0: eeprom@0 {
+                                       reg = <0x0 0x400>;
+                               };
+
+                               macaddr_iNIC_rf_4: macaddr@4 {
+                                       reg = <0x4 0x6>;
+                               };
                        };
 
                        partition@60000 {
        };
 };
 
-&ethernet {
-       mtd-mac-address = <&iNIC_rf 0x4>;
+&gmac0 {
+       nvmem-cells = <&macaddr_iNIC_rf_4>;
+       nvmem-cell-names = "mac-address";
+};
+
+&gmac1 {
+       status = "okay";
+       label = "wan";
+       phy-handle = <&ethphy0>;
+
+       nvmem-cells = <&macaddr_factory_4>;
+       nvmem-cell-names = "mac-address";
+       mac-address-increment = <1>;
+};
+
+&mdio {
+       ethphy0: ethernet-phy@0 {
+               reg = <0>;
+       };
 };
 
-&pinctrl {
-       state_default: pinctrl0 {
-               gpio {
-                       ralink,group = "uart2", "uart3", "jtag";
-                       ralink,function = "gpio";
+&switch0 {
+       ports {
+               port@1 {
+                       status = "okay";
+                       label = "lan4";
+               };
+
+               port@2 {
+                       status = "okay";
+                       label = "lan3";
+               };
+
+               port@3 {
+                       status = "okay";
+                       label = "lan2";
                };
+
+               port@4 {
+                       status = "okay";
+                       label = "lan1";
+               };
+       };
+};
+
+&state_default {
+       gpio {
+               groups = "uart2", "uart3", "jtag";
+               function = "gpio";
        };
 };
 
 &pcie0 {
        mt76@0,0 {
                reg = <0x0000 0 0 0 0>;
-               mediatek,mtd-eeprom = <&iNIC_rf 0x0>;
+               nvmem-cells = <&eeprom_iNIC_rf_0>;
+               nvmem-cell-names = "eeprom";
        };
 };
 
 &pcie1 {
        mt76@0,0 {
                reg = <0x0000 0 0 0 0>;
-               mediatek,mtd-eeprom = <&Factory 0x0>;
+               nvmem-cells = <&eeprom_factory_0>;
+               nvmem-cell-names = "eeprom";
                ieee80211-freq-limit = <5000000 6000000>;
        };
 };