aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/ath9k/ath9k.h
diff options
context:
space:
mode:
authorJouni Malinen <jouni.malinen@atheros.com>2009-03-03 12:23:27 -0500
committerJohn W. Linville <linville@tuxdriver.com>2009-03-05 14:39:44 -0500
commit8ca21f0185a606c490867f7471196aa29639e638 (patch)
treed16405f88eb894c6805bbaae4c2a5fba81b2baef /drivers/net/wireless/ath9k/ath9k.h
parent2c3db3d51ee1fcf84f5828788905a4c091b9ae27 (diff)
ath9k: Set BSSID mask based on configured interfaces
Instead of using a hardcoded BSSID mask (mask for own addresses), iterate through all active interfaces and determine the minimal mask that covers all local addresses. Signed-off-by: Jouni Malinen <jouni.malinen@atheros.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/ath9k/ath9k.h')
-rw-r--r--drivers/net/wireless/ath9k/ath9k.h14
1 files changed, 3 insertions, 11 deletions
diff --git a/drivers/net/wireless/ath9k/ath9k.h b/drivers/net/wireless/ath9k/ath9k.h
index 09b2b008feba..1598bac9242d 100644
--- a/drivers/net/wireless/ath9k/ath9k.h
+++ b/drivers/net/wireless/ath9k/ath9k.h
@@ -387,17 +387,6 @@ void ath_tx_aggr_resume(struct ath_softc *sc, struct ieee80211_sta *sta, u16 tid
387/* VIFs */ 387/* VIFs */
388/********/ 388/********/
389 389
390/*
391 * Define the scheme that we select MAC address for multiple
392 * BSS on the same radio. The very first VIF will just use the MAC
393 * address from the EEPROM. For the next 3 VIFs, we set the
394 * U/L bit (bit 1) in MAC address, and use the next two bits as the
395 * index of the VIF.
396 */
397
398#define ATH_SET_VIF_BSSID_MASK(bssid_mask) \
399 ((bssid_mask)[0] &= ~(((ATH_BCBUF-1)<<2)|0x02))
400
401struct ath_vif { 390struct ath_vif {
402 int av_bslot; 391 int av_bslot;
403 enum nl80211_iftype av_opmode; 392 enum nl80211_iftype av_opmode;
@@ -676,4 +665,7 @@ static inline void ath9k_ps_restore(struct ath_softc *sc)
676 sc->sc_ah->restore_mode); 665 sc->sc_ah->restore_mode);
677} 666}
678 667
668
669void ath9k_set_bssid_mask(struct ieee80211_hw *hw);
670
679#endif /* ATH9K_H */ 671#endif /* ATH9K_H */