From a021268032fb64afdce7bafa91c7c7bf44fa6ff2 Mon Sep 17 00:00:00 2001 From: Adrian Schmutzler Date: Wed, 13 Nov 2019 15:05:29 +0100 Subject: [PATCH] ar71xx: fix MAC addresses for Archer C5 v1, C7 v1/v2, WDR4900 v2 As discussed in 1d18a14a90c7 ("ath79: really fix TP-Link Archer C7 v2 MAC address"), stock firmware MAC address assignment is actually as follows: wlan0 (5GHz) : -1 wlan1 (2.4GHz) : 0 eth1 (LAN) : 0 eth0 (WAN) : 1 This has never been fixed for ar71xx, so let's do it now. Note that with WDR4900 v2 even both wlan0 and wlan1 where assigned to basemac-1 before ... Fixes: FS#408 Signed-off-by: Adrian Schmutzler --- .../ar71xx/base-files/etc/hotplug.d/firmware/11-ath10k-caldata | 2 +- target/linux/ar71xx/files/arch/mips/ath79/mach-archer-c7.c | 3 +-- 2 files changed, 2 insertions(+), 3 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 2ba8de4783..5170fa518f 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 @@ -143,7 +143,7 @@ case "$FIRMWARE" in archer-c5|\ archer-c7) ath10kcal_extract "art" 0x5000 0x844 - ath10kcal_patch_mac $(macaddr_add $(cat /sys/class/net/eth1/address) -2) + ath10kcal_patch_mac $(macaddr_add $(cat /sys/class/net/eth1/address) -1) ;; nbg6616|\ nbg6716) diff --git a/target/linux/ar71xx/files/arch/mips/ath79/mach-archer-c7.c b/target/linux/ar71xx/files/arch/mips/ath79/mach-archer-c7.c index 287252780d..923ed28b4a 100644 --- a/target/linux/ar71xx/files/arch/mips/ath79/mach-archer-c7.c +++ b/target/linux/ar71xx/files/arch/mips/ath79/mach-archer-c7.c @@ -212,8 +212,7 @@ static void __init common_setup(bool pcie_slot) ath79_register_leds_gpio(-1, ARRAY_SIZE(archer_c7_leds_gpio), archer_c7_leds_gpio); - ath79_init_mac(tmpmac, mac, -1); - ath79_register_wmac(art + ARCHER_C7_WMAC_CALDATA_OFFSET, tmpmac); + ath79_register_wmac(art + ARCHER_C7_WMAC_CALDATA_OFFSET, mac); if (pcie_slot) { ath79_register_pci(); -- 2.25.1