staging: brcm80211: store BSSID in driver config information

When mac80211 informs about new BSSID this was configured toward
the hardware device, but the information is also needed inside
the driver itself. This  patch takes care of that.

Reviewed-by: Roland Vossen <rvossen@broadcom.com>
Reviewed-by: Brett Rudley <brudley@broadcom.com>
Reviewed-by: Henry Ptasinski <henryp@broadcom.com>
Signed-off-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
Arend van Spriel 2011-02-10 12:03:51 +01:00 committed by Greg Kroah-Hartman
parent c234656fa3
commit 6677eaa335
2 changed files with 3 additions and 1 deletions

View file

@ -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);
}

View file

@ -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)