ath79: Add GL.iNet AR-300M-Lite
authorJeff Kletsky <git-commits@allycomm.com>
Thu, 7 Mar 2019 04:44:33 +0000 (20:44 -0800)
committerChristian Lamparter <chunkeey@gmail.com>
Wed, 13 Mar 2019 15:25:34 +0000 (16:25 +0100)
AR300M-Lite is single-Ethernet variant of the AR300M series
Its eth0 would otherwise be assigned to the WAN interface
making it unreachable firstboot or failsafe.

Installation instructions from OEM (OpenWrt variant):
* Install sysupgrade.bin using OEM's "Advanced" GUI (LuCI),
   * Do not preserve settings
   * Access rebooted device via Ethernet at OpenWrt default address

Add previously missing LED defaults for all three variants;
-nand, -nor, -lite to the definitions in 01_leds

Non-lite variants thanks to Andreas Ziegler
https://patchwork.ozlabs.org/patch/1049396/

Runtime-tested:  GL.iNet AR300M-Lite

Signed-off-by: Jeff Kletsky <git-commits@allycomm.com>
target/linux/ath79/base-files/etc/board.d/01_leds
target/linux/ath79/base-files/etc/board.d/02_network
target/linux/ath79/dts/qca9531_glinet_gl-ar300m-lite.dts [new file with mode: 0644]
target/linux/ath79/dts/qca9531_glinet_gl-ar300m-nand.dts
target/linux/ath79/dts/qca9531_glinet_gl-ar300m-nor.dts
target/linux/ath79/dts/qca9531_glinet_gl-ar300m.dtsi
target/linux/ath79/image/generic.mk

index a7b6a65..0b0dda3 100755 (executable)
@@ -63,6 +63,13 @@ glinet,gl-ar150)
        ucidef_set_led_netdev "wan" "WAN" "$boardname:green:wan" "eth0"
        ucidef_set_led_switch "lan" "LAN" "$boardname:green:lan" "switch0" "0x02"
        ;;
+glinet,gl-ar300m-nand|\
+glinet,gl-ar300m-nor)
+       ucidef_set_led_netdev "lan" "LAN" "gl-ar300m:green:lan" "eth0"
+       ;;
+glinet,gl-ar300m-lite)
+       ucidef_set_led_netdev "lan" "LAN" "gl-ar300m-lite:green:lan" "eth0"
+       ;;
 glinet,gl-x750)
        ucidef_set_led_netdev "wan" "WAN" "$boardname:green:wan" "eth0"
        ;;
index 037e577..5ab427f 100755 (executable)
@@ -13,6 +13,7 @@ ath79_setup_interfaces()
        devolo,dvl1200i|\
        devolo,dvl1750c|\
        devolo,dvl1750i|\
+       glinet,ar300m-lite|\
        ocedo,koala|\
        ocedo,raccoon|\
        pcs,cap324|\
diff --git a/target/linux/ath79/dts/qca9531_glinet_gl-ar300m-lite.dts b/target/linux/ath79/dts/qca9531_glinet_gl-ar300m-lite.dts
new file mode 100644 (file)
index 0000000..fba08e4
--- /dev/null
@@ -0,0 +1,22 @@
+/dts-v1/;
+
+#include "qca9531_glinet_gl-ar300m-nor.dts"
+
+/ {
+       compatible = "glinet,gl-ar300m-lite", "qca,qca9531";
+       model = "GL.iNet GL-AR300M-Lite";
+};
+
+// GL-AR300M-Lite has different LED colors than the non-Lite version
+
+&led_status {
+       label = "gl-ar300m-lite:red:status";
+};
+
+&led_lan {
+       label = "gl-ar300m-lite:green:lan";
+};
+
+&led_wlan {
+       label = "gl-ar300m-lite:green:wlan";
+};
\ No newline at end of file
index 9e78f83..26c30f2 100644 (file)
@@ -8,42 +8,8 @@
 };
 
 &spi {
-       status = "okay";
        num-cs = <1>;
 
-       flash@0 {
-               compatible = "winbond,w25q128", "jedec,spi-nor";
-               reg = <0>;
-               spi-max-frequency = <25000000>;
-
-               partitions {
-                       compatible = "fixed-partitions";
-                       #address-cells = <1>;
-                       #size-cells = <1>;
-
-                       partition@0 {
-                               label = "u-boot";
-                               reg = <0x000000 0x040000>;
-                               read-only;
-                       };
-
-                       partition@1 {
-                               label = "u-boot-env";
-                               reg = <0x040000 0x010000>;
-                       };
-
-                       partition@2 {
-                               label = "reserved";
-                               reg = <0x050000 0xfa0000>;
-                       };
-
-                       art: partition@3 {
-                               label = "art";
-                               reg = <0xff0000 0x010000>;
-                       };
-               };
-       };
-
        flash@1 {
                compatible = "spinand,mt29f";
                reg = <1>;
index 6b77af0..02196cf 100644 (file)
@@ -9,42 +9,3 @@
        compatible = "glinet,gl-ar300m-nor", "qca,qca9531";
        model = "GL.iNet GL-AR300M (NOR)";
 };
-
-&spi {
-       status = "okay";
-       num-cs = <0>;
-
-       flash@0 {
-               compatible = "winbond,w25q128", "jedec,spi-nor";
-               reg = <0>;
-               spi-max-frequency = <25000000>;
-
-               partitions {
-                       compatible = "fixed-partitions";
-                       #address-cells = <1>;
-                       #size-cells = <1>;
-
-                       partition@0 {
-                               label = "u-boot";
-                               reg = <0x000000 0x040000>;
-                               read-only;
-                       };
-
-                       partition@1 {
-                               label = "u-boot-env";
-                               reg = <0x040000 0x010000>;
-                       };
-
-                       partition@2 {
-                               compatible = "denx,uimage";
-                               label = "firmware";
-                               reg = <0x050000 0xfa0000>;
-                       };
-
-                       art: partition@3 {
-                               label = "art";
-                               reg = <0xff0000 0x010000>;
-                       };
-               };
-       };
-};
index 55002b4..ceb2bfa 100644 (file)
        leds {
                compatible = "gpio-leds";
 
-               wlan {
-                       label = "gl-ar300m:green:wlan";
-                       gpios = <&gpio 14 GPIO_ACTIVE_LOW>;
-                       linux,default-trigger = "phy0tpt";
+               // Colors from non-Lite versions
+
+               led_status: status {
+                       label = "gl-ar300m:green:status";
+                       gpios = <&gpio 12 GPIO_ACTIVE_LOW>;
                };
 
-               lan {
+               led_lan: lan {
                        label = "gl-ar300m:green:lan";
                        gpios = <&gpio 13 GPIO_ACTIVE_LOW>;
                };
 
-               led_status: status {
-                       label = "gl-ar300m:red:status";
-                       gpios = <&gpio 12 GPIO_ACTIVE_LOW>;
+               led_wlan: wlan {
+                       label = "gl-ar300m:red:wlan";
+                       gpios = <&gpio 14 GPIO_ACTIVE_LOW>;
+                       linux,default-trigger = "phy0tpt";
                };
        };
 };
        status = "okay";
 };
 
+&spi {
+       status = "okay";
+       num-cs = <0>;
+
+       flash@0 {
+               compatible = "winbond,w25q128", "jedec,spi-nor";
+               reg = <0>;
+               spi-max-frequency = <25000000>;
+
+               partitions {
+                       compatible = "fixed-partitions";
+                       #address-cells = <1>;
+                       #size-cells = <1>;
+
+                       partition@0 {
+                               label = "u-boot";
+                               reg = <0x000000 0x040000>;
+                               read-only;
+                       };
+
+                       partition@1 {
+                               label = "u-boot-env";
+                               reg = <0x040000 0x010000>;
+                       };
+
+                       partition@2 {
+                               compatible = "denx,uimage";
+                               label = "firmware";
+                               reg = <0x050000 0xfa0000>;
+                       };
+
+                       art: partition@3 {
+                               label = "art";
+                               reg = <0xff0000 0x010000>;
+                       };
+               };
+       };
+};
+
 &uart {
        status = "okay";
 };
index 6e3dcf0..1621282 100644 (file)
@@ -313,13 +313,23 @@ define Device/glinet_gl-ar150
 endef
 TARGET_DEVICES += glinet_gl-ar150
 
-define Device/glinet_gl-ar300m-nor
+define Device/glinet_gl-ar300m-common-nor
   ATH_SOC := qca9531
-  DEVICE_TITLE := GL.iNet GL-AR300M
   DEVICE_PACKAGES := kmod-usb-core kmod-usb2
   IMAGE_SIZE := 16000k
   SUPPORTED_DEVICES += gl-ar300m
 endef
+
+define Device/glinet_gl-ar300m-lite
+  $(Device/glinet_gl-ar300m-common-nor)
+  DEVICE_TITLE := GL.iNet GL-AR300M-Lite
+endef
+TARGET_DEVICES += glinet_gl-ar300m-lite
+
+define Device/glinet_gl-ar300m-nor
+  $(Device/glinet_gl-ar300m-common-nor)
+  DEVICE_TITLE := GL.iNet GL-AR300M
+endef
 TARGET_DEVICES += glinet_gl-ar300m-nor
 
 define Device/glinet_gl-ar750s