ath79: fix WNDR3800 support
authorHannu Nyman <hannu.nyman@iki.fi>
Fri, 15 Jun 2018 16:49:42 +0000 (19:49 +0300)
committerMathias Kresin <dev@kresin.me>
Sat, 16 Jun 2018 08:08:51 +0000 (10:08 +0200)
Fixes for WNDR3800 DTS:
* fix bootcmd
* name art partition to reference it for MACs
* format firmware partition's address similarly as others
* make u-boot-env read-only like in ar71xx
* read wan and lan MACs from art
* fix LED and button gpio values to match ar71xx
  (orange/green powerLED, reset button)
* enable power LED in dts by alias led-status
* define USB LED triggers and connect to USB port
* change wifi button to KEY_RFKILL like in ar71xx

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
target/linux/ath79/dts/ar7161_netgear_wndr3800.dts

index a175fd76980a847e3920b1417f057ea701be7a9a..7a7279bdf50d4f456fcae983671894fb58e657eb 100644 (file)
        compatible = "netgear,wndr3800", "qca,ar7161";
        model = "Netgear WNDR3800";
 
+       aliases {
+               led-status = &power_green;
+       };
+
+       chosen {
+               bootargs = "console=ttyS0,115200";
+       };
+
        memory@0 {
                device_type = "memory";
                reg = <0x0 0x8000000>;
        reset-leds {
                compatible = "reset-leds";
 
-               wps {
+               usb_led {
                        label = "netgear:green:usb";
                        resets = <&rst 12>;
+                       trigger-sources = <&usb_ochi_port>, <&usb_echi_port>;
+                       linux,default-trigger = "usbport";
                };
        };
 
                        default-state = "off";
                };
 
-               power_green {
+               power_green: power_green {
                        label = "netgear:green:power";
-                       gpios = <&gpio 1 GPIO_ACTIVE_LOW>;
+                       gpios = <&gpio 2 GPIO_ACTIVE_LOW>;
                        default-state = "off";
                };
 
                power_orange {
                        label = "netgear:orange:power";
-                       gpios = <&gpio 2 GPIO_ACTIVE_LOW>;
+                       gpios = <&gpio 1 GPIO_ACTIVE_LOW>;
                        default-state = "off";
                };
 
                #size-cells = <0>;
                poll-interval = <100>;
 
-               button@0 {
+               wps {
                        label = "wps";
                        linux,code = <KEY_WPS_BUTTON>;
                        gpios = <&gpio 3 GPIO_ACTIVE_LOW>;
                };
 
-               button@1 {
+               reset {
                        label = "reset";
                        linux,code = <KEY_RESTART>;
-                       gpios = <&gpio 18 GPIO_ACTIVE_LOW>;
+                       gpios = <&gpio 8 GPIO_ACTIVE_LOW>;
                };
 
-               button@2 {
-                       label = "wifi";
-                       linux,code = <BTN_2>;
+               rfkill {
+                       label = "rfkill";
+                       linux,code = <KEY_RFKILL>;
                        gpios = <&gpio 11 GPIO_ACTIVE_LOW>;
                };
        };
 
 &usb1 {
        status = "okay";
+
+       usb_ochi_port: port@1 {
+               reg = <1>;
+               #trigger-source-cells = <0>;
+       };
 };
 
 &usb2 {
        status = "okay";
+
+       usb_echi_port: port@1 {
+               reg = <1>;
+               #trigger-source-cells = <0>;
+       };
 };
 
 &pcie0 {
                        partition@1 {
                                label = "u-boot-env";
                                reg = <0x050000 0x020000>;
+                               read-only;
                        };
 
                        partition@2 {
                                label = "firmware";
-                               reg = <0x70000 0xf80000>;
+                               reg = <0x070000 0xf80000>;
                        };
 
-                       partition@3 {
+                       art: partition@3 {
                                label = "art";
                                reg = <0xff0000 0x010000>;
                                read-only;
 
        pll-data = <0x11110000 0x00001099 0x00991099>;
 
+       mtd-mac-address = <&art 0x00>;
+
        fixed-link {
                speed = <1000>;
                full-duplex;
 
        pll-data = <0x11110000 0x00001099 0x00991099>;
 
+       mtd-mac-address = <&art 0x06>;
+
        resets = <&rst 13>;
        reset-names = "mac";