From f5f01bcacd7838889cb83defca94af34e64a9141 Mon Sep 17 00:00:00 2001
From: Michael Pratt <mcpratt@pm.me>
Date: Mon, 11 Jan 2021 03:34:33 -0500
Subject: [PATCH] ath79: use internal switch for EAP300 v2

Have the port use GMAC1 with internal switch
which fixes the issue of the ethernet LED not functioning
The LED is triggered by the internal switch, not a GPIO.

The GPIO for the ethernet LED was added in ath79
as it was defined in the ar71xx target
but it was not functioning in ath79 for a previously unknown reason.

It is unknown why that GPIO was defined as an LED in ar71xx.

Signed-off-by: Michael Pratt <mcpratt@pm.me>
[drop unrelated changes: model property and SPI max frequency]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
---
 .../ath79/dts/ar9341_engenius_eap300-v2.dts   | 20 +------------------
 .../generic/base-files/etc/board.d/01_leds    |  1 -
 .../generic/base-files/etc/board.d/02_network |  5 ++++-
 3 files changed, 5 insertions(+), 21 deletions(-)

diff --git a/target/linux/ath79/dts/ar9341_engenius_eap300-v2.dts b/target/linux/ath79/dts/ar9341_engenius_eap300-v2.dts
index 7aa89a4cce5c..790055777562 100644
--- a/target/linux/ath79/dts/ar9341_engenius_eap300-v2.dts
+++ b/target/linux/ath79/dts/ar9341_engenius_eap300-v2.dts
@@ -43,11 +43,6 @@
 			gpios = <&gpio 17 GPIO_ACTIVE_LOW>;
 			linux,default-trigger = "phy0tpt";
 		};
-
-		lan {
-			label = "blue:lan";
-			gpios = <&gpio 16 GPIO_ACTIVE_LOW>;
-		};
 	};
 
 	virtual_flash {
@@ -145,21 +140,8 @@
 	};
 };
 
-&eth0 {
-	status = "okay";
-
-	mtd-mac-address = <&art 0x0>;
-
-	phy-handle = <&swphy0>;
-
-	gmac-config {
-		device = <&gmac>;
-		switch-phy-swap = <1>;
-	};
-};
-
 &eth1 {
-	compatible = "syscon", "simple-mfd";
+	mtd-mac-address = <&art 0x0>;
 };
 
 &wmac {
diff --git a/target/linux/ath79/generic/base-files/etc/board.d/01_leds b/target/linux/ath79/generic/base-files/etc/board.d/01_leds
index 169df8b2852e..f7d8ec0f8526 100755
--- a/target/linux/ath79/generic/base-files/etc/board.d/01_leds
+++ b/target/linux/ath79/generic/base-files/etc/board.d/01_leds
@@ -156,7 +156,6 @@ telco,t1)
 	ucidef_set_led_netdev "wan" "WAN" "blue:wan" "eth1"
 	;;
 comfast,cf-wr752ac-v1|\
-engenius,eap300-v2|\
 enterasys,ws-ap3705i|\
 openmesh,mr900-v1|\
 openmesh,mr900-v2|\
diff --git a/target/linux/ath79/generic/base-files/etc/board.d/02_network b/target/linux/ath79/generic/base-files/etc/board.d/02_network
index ab00d798b19d..4380a380fcdd 100755
--- a/target/linux/ath79/generic/base-files/etc/board.d/02_network
+++ b/target/linux/ath79/generic/base-files/etc/board.d/02_network
@@ -33,7 +33,6 @@ ath79_setup_interfaces()
 	dlink,dap-3320-a1|\
 	dlink,dir-505|\
 	engenius,eap1200h|\
-	engenius,eap300-v2|\
 	engenius,eap600|\
 	engenius,ecb1200|\
 	engenius,ecb1750|\
@@ -237,6 +236,10 @@ ath79_setup_interfaces()
 		ucidef_add_switch "switch0" \
 			"0@eth0" "1:wan" "2:lan:3" "3:lan:2"
 		;;
+	engenius,eap300-v2)
+		ucidef_add_switch "switch0" \
+			"0@eth0" "1:lan"
+		;;
 	engenius,ens202ext-v1)
 		ucidef_set_interface_lan "eth1"
 		ucidef_add_switch "switch0" \
-- 
2.30.2