From 14eb54938b525d4c2d2847a6fad7670ed944650c Mon Sep 17 00:00:00 2001 From: Adrian Schmutzler Date: Wed, 11 Mar 2020 15:46:00 +0100 Subject: [PATCH] ar71xx: fix swapped LAN/WAN MAC address for Archer C60 v1/v2 The MAC addresses for lan/wan are swapped compared to the vendor firmware. This adjusts to vendor configuration, which is: lan *:7b label wan *:7c label+1 2.4g *:7b label 5g *:7a label-1 Only one address is stored in <&mac 0x8>, corresponding to the label. This has been checked on revisions v1, v2 and v3. Since ar71xx calculates the ath10k MAC address based on the ethernet addresses, the number there is adjusted, too. Signed-off-by: Adrian Schmutzler --- .../base-files/etc/hotplug.d/firmware/11-ath10k-caldata | 2 +- .../ar71xx/files/arch/mips/ath79/mach-archer-c60-v1.c | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/target/linux/ar71xx/base-files/etc/hotplug.d/firmware/11-ath10k-caldata b/target/linux/ar71xx/base-files/etc/hotplug.d/firmware/11-ath10k-caldata index 5170fa518f..03eeb2ef9c 100644 --- a/target/linux/ar71xx/base-files/etc/hotplug.d/firmware/11-ath10k-caldata +++ b/target/linux/ar71xx/base-files/etc/hotplug.d/firmware/11-ath10k-caldata @@ -182,7 +182,7 @@ case "$FIRMWARE" in ath10kcal_extract "art" 0x5000 0x2f20 ln -sf /lib/firmware/ath10k/pre-cal-pci-0000\:00\:00.0.bin \ /lib/firmware/ath10k/QCA9888/hw2.0/board.bin - ath10kcal_patch_mac $(macaddr_add $(cat /sys/class/net/eth0/address) -1) + ath10kcal_patch_mac $(macaddr_add $(cat /sys/class/net/eth1/address) -1) ;; cf-e385ac) ath10kcal_extract "art" 0x5000 0x2f20 diff --git a/target/linux/ar71xx/files/arch/mips/ath79/mach-archer-c60-v1.c b/target/linux/ar71xx/files/arch/mips/ath79/mach-archer-c60-v1.c index 88f4f081a3..a0839e6bca 100644 --- a/target/linux/ar71xx/files/arch/mips/ath79/mach-archer-c60-v1.c +++ b/target/linux/ar71xx/files/arch/mips/ath79/mach-archer-c60-v1.c @@ -157,8 +157,8 @@ static void __init archer_c60_v1_setup(void) ath79_register_mdio(0, 0x0); ath79_register_mdio(1, 0x0); - ath79_init_mac(ath79_eth0_data.mac_addr, mac, 0); - ath79_init_mac(ath79_eth1_data.mac_addr, mac, 1); + ath79_init_mac(ath79_eth1_data.mac_addr, mac, 0); + ath79_init_mac(ath79_eth0_data.mac_addr, mac, 1); /* WAN port */ ath79_eth0_data.phy_if_mode = PHY_INTERFACE_MODE_MII; @@ -199,8 +199,8 @@ static void __init archer_c60_v2_setup(void) ath79_register_mdio(0, 0x0); ath79_register_mdio(1, 0x0); - ath79_init_mac(ath79_eth0_data.mac_addr, mac, 0); - ath79_init_mac(ath79_eth1_data.mac_addr, mac, 1); + ath79_init_mac(ath79_eth1_data.mac_addr, mac, 0); + ath79_init_mac(ath79_eth0_data.mac_addr, mac, 1); /* WAN port */ ath79_eth0_data.phy_if_mode = PHY_INTERFACE_MODE_MII;