ramips: express diag led handling via devicetree
[openwrt/staging/wigyori.git] / target / linux / ramips / dts / DIR-615-H1.dts
index b393508690c7d9c64d9310a2706c4862abcc9c0d..cbc3dadb74ff975c7e530dfa4dea8b2cdea60778 100644 (file)
 /dts-v1/;
 
-/include/ "rt3352.dtsi"
+#include "rt3352.dtsi"
+
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/input/input.h>
 
 / {
-       compatible = "DIR-615-H1", "ralink,rt3352-soc";
+       compatible = "dlink,dir-615-h1", "ralink,rt3352-soc";
        model = "D-Link DIR-615 H1";
 
-       memorydetect {
-               ralink,memory = <0x0 0x200000 0x10000000>;
-       };
-
-       chosen {
-               bootargs = "console=ttyS0,57600 mtdparts=spi0.0:192k(u-boot)ro,64k(u-boot-env)ro,64k(factory)ro,3776k@0x50000(firmware)";
-       };
-
-       palmbus@10000000 {
-               sysc@0 {
-                       ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "mdio", "sdram", "rgmii";
-                       ralink,uartmux = "gpio";
-                       ralink,wdtmux = <1>;
-               };
-
-               gpio0: gpio@600 {
-                       status = "okay";
-               };
-
-               spi@b00 {
-                       status = "okay";
-                       m25p80@0 {
-                               #address-cells = <1>;
-                               #size-cells = <1>;
-                               compatible = "mx25l3205d";
-                               reg = <0 0>;
-                               linux,modalias = "m25p80", "mx25l3205d";
-                               spi-max-frequency = <10000000>;
-                       };
-               };
-       };
-
-       ethernet@10100000 {
-               status = "okay";
-       };
-
-       esw@10110000 {
-               status = "okay";
-               ralink,portmap = <0x2f>;
+       aliases {
+               led-status = &led_status_green;
        };
 
        gpio-leds {
                compatible = "gpio-leds";
+
                status {
-                       label = "d-link:amber:status";
-                       gpios = <&gpio0 7 0>;
+                       label = "dir-615-h1:amber:status";
+                       gpios = <&gpio0 7 GPIO_ACTIVE_HIGH>;
+                       default-state = "off";
                };
-               status2 {
-                       label = "d-link:green:status";
-                       gpios = <&gpio0 9 0>;
+
+               led_status_green: status2 {
+                       label = "dir-615-h1:green:status";
+                       gpios = <&gpio0 9 GPIO_ACTIVE_HIGH>;
+                       default-state = "on";
                };
+
                wan {
-                       label = "d-link:amber:wan";
-                       gpios = <&gpio0 12 1>;
+                       label = "dir-615-h1:amber:wan";
+                       gpios = <&gpio0 12 GPIO_ACTIVE_LOW>;
                };
+
                wan2 {
-                       label = "d-link:green:wan";
-                       gpios = <&gpio0 13 1>;
+                       label = "dir-615-h1:green:wan";
+                       gpios = <&gpio0 13 GPIO_ACTIVE_LOW>;
                };
+
                wps {
-                       label = "d-link:blue:wps";
-                       gpios = <&gpio0 14 1>;
+                       label = "dir-615-h1:blue:wps";
+                       gpios = <&gpio0 14 GPIO_ACTIVE_LOW>;
                };
        };
 
        gpio-keys-polled {
                compatible = "gpio-keys-polled";
-               #address-cells = <1>;
-               #size-cells = <0>;
                poll-interval = <20>;
+
                reset {
                        label = "reset";
-                       gpios = <&gpio0 10 1>;
-                       linux,code = <0x198>;
+                       gpios = <&gpio0 10 GPIO_ACTIVE_LOW>;
+                       linux,code = <KEY_RESTART>;
                };
+
                wps {
                        label = "wps";
-                       gpios = <&gpio0 0 1>;
-                       linux,code = <0x211>;
+                       gpios = <&gpio0 0 GPIO_ACTIVE_LOW>;
+                       linux,code = <KEY_WPS_BUTTON>;
                };
        };
+};
+
+&spi0 {
+       status = "okay";
+
+       m25p80@0 {
+               compatible = "jedec,spi-nor";
+               reg = <0>;
+               spi-max-frequency = <10000000>;
+
+               partitions {
+                       compatible = "fixed-partitions";
+                       #address-cells = <1>;
+                       #size-cells = <1>;
+
+                       partition@0 {
+                               label = "u-boot";
+                               reg = <0x0 0x30000>;
+                               read-only;
+                       };
+
+                       partition@30000 {
+                               label = "u-boot-env";
+                               reg = <0x30000 0x10000>;
+                               read-only;
+                       };
+
+                       factory: partition@40000 {
+                               label = "factory";
+                               reg = <0x40000 0x10000>;
+                               read-only;
+                       };
+
+                       partition@50000 {
+                               label = "firmware";
+                               reg = <0x50000 0x3b0000>;
+                       };
+               };
+       };
+};
 
-       wmac@10180000 {
-               status = "okay";
+&pinctrl {
+       state_default: pinctrl0 {
+               gpio {
+                       ralink,group = "i2c", "jtag", "uartf";
+                       ralink,function = "gpio";
+               };
        };
 };
+
+&ethernet {
+       mtd-mac-address = <&factory 0x28>;
+       pinctrl-names = "default";
+       pinctrl-0 = <&rgmii_pins &mdio_pins>;
+};
+
+&esw {
+       mediatek,portmap = <0x2f>;
+};
+
+&wmac {
+       ralink,mtd-eeprom = <&factory 0>;
+};