[openwrt/openwrt] ipq40xx: convert to DSA and enable asus,rt-ac42u

LEDE Commits lede-commits at lists.infradead.org
Sat Oct 22 05:15:42 PDT 2022


ansuel pushed a commit to openwrt/openwrt.git, branch master:
https://git.openwrt.org/350593307381c3021b6990efa6ff16550a5e59a8

commit 350593307381c3021b6990efa6ff16550a5e59a8
Author: Chen Minqiang <ptpt52 at gmail.com>
AuthorDate: Mon Oct 3 09:41:31 2022 +0800

    ipq40xx: convert to DSA and enable asus,rt-ac42u
    
    This convert board asus,rt-ac42u to DSA and re-enable it
    
    Reviewed-by: Robert Marko <robimarko at gmail.com>
    Signed-off-by: Chen Minqiang <ptpt52 at gmail.com>
---
 .../linux/ipq40xx/base-files/etc/board.d/01_leds   |  9 ++---
 .../ipq40xx/base-files/etc/board.d/02_network      |  4 +++
 .../lib/preinit/05_set_iface_mac_ipq40xx.sh        |  9 +++--
 .../arch/arm/boot/dts/qcom-ipq4019-rt-ac42u.dts    | 40 +++++++++++++++-------
 target/linux/ipq40xx/image/generic.mk              |  3 +-
 5 files changed, 45 insertions(+), 20 deletions(-)

diff --git a/target/linux/ipq40xx/base-files/etc/board.d/01_leds b/target/linux/ipq40xx/base-files/etc/board.d/01_leds
index cd68ed32c0..748b6f5b82 100644
--- a/target/linux/ipq40xx/base-files/etc/board.d/01_leds
+++ b/target/linux/ipq40xx/base-files/etc/board.d/01_leds
@@ -13,10 +13,11 @@ alfa-network,ap120c-ac)
 	ucidef_set_led_netdev "wan" "WAN" "amber:wan" "wan"
 	;;
 asus,rt-ac42u)
-	ucidef_set_led_switch "lan1" "LAN1" "blue:lan-1" "switch0" "0x02"
-	ucidef_set_led_switch "lan2" "LAN2" "blue:lan-2" "switch0" "0x04"
-	ucidef_set_led_switch "lan3" "LAN3" "blue:lan-3" "switch0" "0x08"
-	ucidef_set_led_switch "lan4" "LAN4" "blue:lan-4" "switch0" "0x10"
+	ucidef_set_led_netdev "lan1" "LAN1" "blue:lan-1" "lan1"
+	ucidef_set_led_netdev "lan2" "LAN2" "blue:lan-2" "lan2"
+	ucidef_set_led_netdev "lan3" "LAN3" "blue:lan-3" "lan3"
+	ucidef_set_led_netdev "lan4" "LAN4" "blue:lan-4" "lan4"
+	ucidef_set_led_netdev "wan" "WAN" "blue:wan" "wan"
 	;;
 asus,rt-ac58u)
 	ucidef_set_led_netdev "wan" "WAN" "blue:wan" "eth1"
diff --git a/target/linux/ipq40xx/base-files/etc/board.d/02_network b/target/linux/ipq40xx/base-files/etc/board.d/02_network
index 36f1f7c24a..56d38bd6a7 100644
--- a/target/linux/ipq40xx/base-files/etc/board.d/02_network
+++ b/target/linux/ipq40xx/base-files/etc/board.d/02_network
@@ -13,6 +13,7 @@ ipq40xx_setup_interfaces()
 	case "$board" in
 	8dev,habanero-dvk|\
 	avm,fritzbox-4040|\
+	asus,rt-ac42u|\
 	asus,rt-ac58u|\
 	linksys,ea6350v3|\
 	linksys,ea8300|\
@@ -81,6 +82,9 @@ ipq40xx_setup_macs()
 	8dev,habanero-dvk)
 		label_mac=$(mtd_get_mac_binary "ART" 0x1006)
 		;;
+	asus,rt-ac42u)
+		label_mac=$(mtd_get_mac_binary_ubi Factory 0x1006)
+		;;
 	asus,rt-ac58u)
 		wan_mac=$(mtd_get_mac_binary_ubi Factory 0x1006)
 		lan_mac=$(mtd_get_mac_binary_ubi Factory 0x5006)
diff --git a/target/linux/ipq40xx/base-files/lib/preinit/05_set_iface_mac_ipq40xx.sh b/target/linux/ipq40xx/base-files/lib/preinit/05_set_iface_mac_ipq40xx.sh
index e4a5eb3e89..ddfef1ab2d 100644
--- a/target/linux/ipq40xx/base-files/lib/preinit/05_set_iface_mac_ipq40xx.sh
+++ b/target/linux/ipq40xx/base-files/lib/preinit/05_set_iface_mac_ipq40xx.sh
@@ -8,8 +8,13 @@ preinit_set_mac_address() {
 		ip link set dev eth1 address $(macaddr_add "$base_mac" 3)
 		;;
 	asus,rt-ac42u)
-		ip link set dev eth0 address $(mtd_get_mac_binary_ubi Factory 0x1006)
-		ip link set dev eth1 address $(mtd_get_mac_binary_ubi Factory 0x9006)
+		base_mac=$(mtd_get_mac_binary_ubi Factory 0x1006)
+		ip link set dev eth0 address $base_mac
+		ip link set dev lan1 address $base_mac
+		ip link set dev lan2 address $base_mac
+		ip link set dev lan3 address $base_mac
+		ip link set dev lan4 address $base_mac
+		ip link set dev wan address $(mtd_get_mac_binary_ubi Factory 0x9006)
 		;;
 	engenius,eap2200)
 		base_mac=$(cat /sys/class/net/eth0/address)
diff --git a/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4019-rt-ac42u.dts b/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4019-rt-ac42u.dts
index 3d58eac09e..f746acfbb9 100644
--- a/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4019-rt-ac42u.dts
+++ b/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4019-rt-ac42u.dts
@@ -31,10 +31,6 @@
 			status = "okay";
 		};
 
-		ess-psgmii at 98000 {
-			status = "okay";
-		};
-
 		tcsr at 1949000 {
 			compatible = "qcom,tcsr";
 			reg = <0x1949000 0x100>;
@@ -85,14 +81,6 @@
 		watchdog at b017000 {
 			status = "okay";
 		};
-
-		ess-switch at c000000 {
-			status = "okay";
-		};
-
-		edma at c080000 {
-			status = "okay";
-		};
 	};
 
 	keys {
@@ -282,6 +270,34 @@
 	status = "okay";
 };
 
+&gmac {
+	status = "okay";
+};
+
+&switch {
+	status = "okay";
+};
+
+&swport1 {
+	status = "okay";
+};
+
+&swport2 {
+	status = "okay";
+};
+
+&swport3 {
+	status = "okay";
+};
+
+&swport4 {
+	status = "okay";
+};
+
+&swport5 {
+	status = "okay";
+};
+
 &wifi0 {
 	status = "okay";
 	qcom,ath10k-calibration-variant = "ASUS-RT-AC42U";
diff --git a/target/linux/ipq40xx/image/generic.mk b/target/linux/ipq40xx/image/generic.mk
index 68ce31c205..0a7fee159d 100644
--- a/target/linux/ipq40xx/image/generic.mk
+++ b/target/linux/ipq40xx/image/generic.mk
@@ -228,8 +228,7 @@ define Device/asus_rt-ac42u
 	UIMAGE_NAME:=$(shell echo -e '\03\01\01\01RT-AC82U')
 	DEVICE_PACKAGES := ath10k-firmware-qca9984-ct kmod-usb-ledtrig-usbport
 endef
-# Missing DSA Setup
-#TARGET_DEVICES += asus_rt-ac42u
+TARGET_DEVICES += asus_rt-ac42u
 
 define Device/asus_rt-ac58u
 	$(call Device/FitImageLzma)




More information about the lede-commits mailing list