aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/ipq40xx
diff options
context:
space:
mode:
authorChen Minqiang <ptpt52@gmail.com>2022-10-03 09:41:31 +0800
committerChen Minqiang <ptpt52@gmail.com>2022-10-22 20:09:58 +0800
commit350593307381c3021b6990efa6ff16550a5e59a8 (patch)
tree5f6b02f714e358216d35b646589edd49387b7dc7 /target/linux/ipq40xx
parentb9b0407901f6518a0f5c4825208cff542f4b80cd (diff)
downloadupstream-350593307381c3021b6990efa6ff16550a5e59a8.tar.gz
upstream-350593307381c3021b6990efa6ff16550a5e59a8.tar.bz2
upstream-350593307381c3021b6990efa6ff16550a5e59a8.zip
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@gmail.com> Signed-off-by: Chen Minqiang <ptpt52@gmail.com>
Diffstat (limited to 'target/linux/ipq40xx')
-rw-r--r--target/linux/ipq40xx/base-files/etc/board.d/01_leds9
-rw-r--r--target/linux/ipq40xx/base-files/etc/board.d/02_network4
-rw-r--r--target/linux/ipq40xx/base-files/lib/preinit/05_set_iface_mac_ipq40xx.sh9
-rw-r--r--target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4019-rt-ac42u.dts40
-rw-r--r--target/linux/ipq40xx/image/generic.mk3
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@98000 {
- status = "okay";
- };
-
tcsr@1949000 {
compatible = "qcom,tcsr";
reg = <0x1949000 0x100>;
@@ -85,14 +81,6 @@
watchdog@b017000 {
status = "okay";
};
-
- ess-switch@c000000 {
- status = "okay";
- };
-
- edma@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)