summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2016-02-25 13:31:38 +0000
committerFelix Fietkau <nbd@openwrt.org>2016-02-25 13:31:38 +0000
commit5be9e97a82e019f91fabf6b3e6998d07ecad81bc (patch)
tree2dd37730b077e15e94a1f8b1d748bfb94bb5c773
parente0d358c436bae6d29daec0aa074b91cf6d5ce280 (diff)
downloadmaster-31e0f0ae-5be9e97a82e019f91fabf6b3e6998d07ecad81bc.tar.gz
master-31e0f0ae-5be9e97a82e019f91fabf6b3e6998d07ecad81bc.tar.bz2
master-31e0f0ae-5be9e97a82e019f91fabf6b3e6998d07ecad81bc.zip
ar71xx: WNR612v2: fix for random WLAN MAC
Fix for invalid/random WLAN MAC address in WNR612v2. Permanent platform MAC is calculated and assigned during system startup. WLAN MAC follows wired Ethernet interface addresses. This is the same fix as for WNR2000v3. Signed-off-by: Michal Cieslakiewicz <michal.cieslakiewicz@wp.pl> SVN-Revision: 48779
-rw-r--r--target/linux/ar71xx/files/arch/mips/ath79/mach-wnr2000-v3.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/target/linux/ar71xx/files/arch/mips/ath79/mach-wnr2000-v3.c b/target/linux/ar71xx/files/arch/mips/ath79/mach-wnr2000-v3.c
index 59d10a9997..7776585033 100644
--- a/target/linux/ar71xx/files/arch/mips/ath79/mach-wnr2000-v3.c
+++ b/target/linux/ar71xx/files/arch/mips/ath79/mach-wnr2000-v3.c
@@ -64,6 +64,7 @@
#define WNR2000V3_KEYS_POLL_INTERVAL 20 /* msecs */
#define WNR2000V3_KEYS_DEBOUNCE_INTERVAL (3 * WNR2000V3_KEYS_POLL_INTERVAL)
+/* ART offsets for: WNR2000v3, WNR612v2 */
#define WNR2000V3_MAC0_OFFSET 0
#define WNR2000V3_MAC1_OFFSET 6
#define WNR2000V3_PCIE_CALDATA_OFFSET 0x1000
@@ -254,7 +255,12 @@ MIPS_MACHINE(ATH79_MACH_WNR2000_V3, "WNR2000V3", "NETGEAR WNR2000 V3", wnr2000v3
static void __init wnr612v2_setup(void)
{
- wnr_common_setup(NULL);
+ u8 wlan_mac_addr[6];
+
+ wnr_get_wmac(wlan_mac_addr, WNR2000V3_MAC0_OFFSET,
+ WNR2000V3_MAC1_OFFSET, WNR2000V3_WMAC_OFFSET);
+
+ wnr_common_setup(wlan_mac_addr);
ath79_register_leds_gpio(-1, ARRAY_SIZE(wnr612v2_leds_gpio),
wnr612v2_leds_gpio);