aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/ath79
diff options
context:
space:
mode:
authorJeff Kletsky <git-commits@allycomm.com>2019-03-06 20:44:33 -0800
committerChristian Lamparter <chunkeey@gmail.com>2019-03-13 16:25:34 +0100
commitfefa34def84561688e6af2feeec2dbb390ba4486 (patch)
tree01fa0995ce976d61e4db88bd7acd598c1063e379 /target/linux/ath79
parent7dfe357a3d763d6c62ae6fb9620a013356396572 (diff)
downloadupstream-fefa34def84561688e6af2feeec2dbb390ba4486.tar.gz
upstream-fefa34def84561688e6af2feeec2dbb390ba4486.tar.bz2
upstream-fefa34def84561688e6af2feeec2dbb390ba4486.zip
ath79: Add GL.iNet AR-300M-Lite
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>
Diffstat (limited to 'target/linux/ath79')
-rwxr-xr-xtarget/linux/ath79/base-files/etc/board.d/01_leds7
-rwxr-xr-xtarget/linux/ath79/base-files/etc/board.d/02_network1
-rw-r--r--target/linux/ath79/dts/qca9531_glinet_gl-ar300m-lite.dts22
-rw-r--r--target/linux/ath79/dts/qca9531_glinet_gl-ar300m-nand.dts34
-rw-r--r--target/linux/ath79/dts/qca9531_glinet_gl-ar300m-nor.dts39
-rw-r--r--target/linux/ath79/dts/qca9531_glinet_gl-ar300m.dtsi57
-rw-r--r--target/linux/ath79/image/generic.mk14
7 files changed, 91 insertions, 83 deletions
diff --git a/target/linux/ath79/base-files/etc/board.d/01_leds b/target/linux/ath79/base-files/etc/board.d/01_leds
index a7b6a65e0f..0b0dda3bcf 100755
--- a/target/linux/ath79/base-files/etc/board.d/01_leds
+++ b/target/linux/ath79/base-files/etc/board.d/01_leds
@@ -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"
;;
diff --git a/target/linux/ath79/base-files/etc/board.d/02_network b/target/linux/ath79/base-files/etc/board.d/02_network
index 037e5777ed..5ab427f8ce 100755
--- a/target/linux/ath79/base-files/etc/board.d/02_network
+++ b/target/linux/ath79/base-files/etc/board.d/02_network
@@ -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
index 0000000000..fba08e4295
--- /dev/null
+++ b/target/linux/ath79/dts/qca9531_glinet_gl-ar300m-lite.dts
@@ -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
diff --git a/target/linux/ath79/dts/qca9531_glinet_gl-ar300m-nand.dts b/target/linux/ath79/dts/qca9531_glinet_gl-ar300m-nand.dts
index 9e78f83a76..26c30f2b72 100644
--- a/target/linux/ath79/dts/qca9531_glinet_gl-ar300m-nand.dts
+++ b/target/linux/ath79/dts/qca9531_glinet_gl-ar300m-nand.dts
@@ -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>;
diff --git a/target/linux/ath79/dts/qca9531_glinet_gl-ar300m-nor.dts b/target/linux/ath79/dts/qca9531_glinet_gl-ar300m-nor.dts
index 6b77af0401..02196cf9c4 100644
--- a/target/linux/ath79/dts/qca9531_glinet_gl-ar300m-nor.dts
+++ b/target/linux/ath79/dts/qca9531_glinet_gl-ar300m-nor.dts
@@ -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>;
- };
- };
- };
-};
diff --git a/target/linux/ath79/dts/qca9531_glinet_gl-ar300m.dtsi b/target/linux/ath79/dts/qca9531_glinet_gl-ar300m.dtsi
index 55002b44e3..ceb2bfa0ff 100644
--- a/target/linux/ath79/dts/qca9531_glinet_gl-ar300m.dtsi
+++ b/target/linux/ath79/dts/qca9531_glinet_gl-ar300m.dtsi
@@ -41,20 +41,22 @@
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";
};
};
};
@@ -63,6 +65,45 @@
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";
};
diff --git a/target/linux/ath79/image/generic.mk b/target/linux/ath79/image/generic.mk
index 6e3dcf0bd8..16212826d8 100644
--- a/target/linux/ath79/image/generic.mk
+++ b/target/linux/ath79/image/generic.mk
@@ -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