build/patch/kernel/sun8i-default/linux-200-wifi-mac-fix.patch

38 lines
930 B
Diff

diff -Nur a/drivers/net/wireless/rtl8189fs/core/rtw_ieee80211.c b/drivers/net/wireless/rtl8189fs/core/rtw_ieee80211.c
--- a/drivers/net/wireless/rtl8189fs/core/rtw_ieee80211.c 2016-02-25 06:58:52.000000000 +0100
+++ b/drivers/net/wireless/rtl8189fs/core/rtw_ieee80211.c 2016-09-27 21:44:26.470787346 +0200
@@ -1467,17 +1467,22 @@
goto func_exit;
}
+#if 0
if (check_local_bit == _TRUE) {
if (mac_addr[0] & BIT1) {
res = _TRUE;
goto func_exit;
}
}
+#else
+ (void) check_local_bit;
+#endif
func_exit:
return res;
}
+extern void wifi_hwaddr_from_chipid(u8 *addr);
extern char* rtw_initmac;
/**
* rtw_macaddr_cfg - Decide the mac address used
@@ -1510,6 +1515,11 @@
goto err_chk;
#endif
+#ifdef CONFIG_PLATFORM_ARM_SUN8I
+ wifi_hwaddr_from_chipid(mac);
+ goto err_chk;
+#endif
+
/* Use the mac address stored in the Efuse */
if (hw_mac_addr) {
_rtw_memcpy(mac, hw_mac_addr, ETH_ALEN);