diff options
-rw-r--r-- | drivers/staging/brcm80211/brcmsmac/wl_mac80211.c | 1 | ||||
-rw-r--r-- | drivers/staging/brcm80211/brcmsmac/wlc_mac80211.c | 3 |
2 files changed, 3 insertions, 1 deletions
diff --git a/drivers/staging/brcm80211/brcmsmac/wl_mac80211.c b/drivers/staging/brcm80211/brcmsmac/wl_mac80211.c index da86103..55ea876 100644 --- a/drivers/staging/brcm80211/brcmsmac/wl_mac80211.c +++ b/drivers/staging/brcm80211/brcmsmac/wl_mac80211.c @@ -380,7 +380,6 @@ wl_ops_bss_info_changed(struct ieee80211_hw *hw, /* BSSID changed, for whatever reason (IBSS and managed mode) */ WL_NONE("%s: new BSSID: aid %d bss:%pM\n", __func__, info->aid, info->bssid); - /* FIXME: need to store bssid in bsscfg */ wlc_set_addrmatch(wl->wlc, RCM_BSSID_OFFSET, info->bssid); } diff --git a/drivers/staging/brcm80211/brcmsmac/wlc_mac80211.c b/drivers/staging/brcm80211/brcmsmac/wlc_mac80211.c index 76d78c1..a25b9d9 100644 --- a/drivers/staging/brcm80211/brcmsmac/wlc_mac80211.c +++ b/drivers/staging/brcm80211/brcmsmac/wlc_mac80211.c @@ -16,6 +16,7 @@ #include <linux/kernel.h> #include <linux/ctype.h> #include <linux/etherdevice.h> +#include <linux/string.h> #include <bcmdefs.h> #include <bcmdevs.h> #include <wlc_cfg.h> @@ -8342,6 +8343,8 @@ wlc_set_addrmatch(struct wlc_info *wlc, int match_reg_offset, const u8 *addr) { wlc_bmac_set_addrmatch(wlc->hw, match_reg_offset, addr); + if (match_reg_offset == RCM_BSSID_OFFSET) + memcpy(wlc->cfg->BSSID, addr, ETH_ALEN); } void wlc_set_rcmta(struct wlc_info *wlc, int idx, const u8 *addr) |