diff options
author | Johannes Berg <johannes.berg@intel.com> | 2012-01-19 03:29:57 -0500 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2012-01-27 14:56:53 -0500 |
commit | c1288b1278d00169e12495eb53ad128e09560b69 (patch) | |
tree | 8edc1a74f040763f406abe830cea98eac4b6124d /drivers/net/wireless/rtlwifi | |
parent | 47d505ccc7535c825f6b28aaaf105d4b75f25196 (diff) |
mac80211: make beacon filtering per virtual interface
Due to firmware limitations, we may not be able to
support beacon filtering on all virtual interfaces.
To allow this in mac80211, introduce per-interface
driver capability flags that the driver sets when
an interface is added.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Acked-by: Luciano Coelho <coelho@ti.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/rtlwifi')
-rw-r--r-- | drivers/net/wireless/rtlwifi/base.c | 1 | ||||
-rw-r--r-- | drivers/net/wireless/rtlwifi/core.c | 2 |
2 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/wireless/rtlwifi/base.c b/drivers/net/wireless/rtlwifi/base.c index 6f80142580fd..ff3e393bc104 100644 --- a/drivers/net/wireless/rtlwifi/base.c +++ b/drivers/net/wireless/rtlwifi/base.c | |||
@@ -309,7 +309,6 @@ static void _rtl_init_mac80211(struct ieee80211_hw *hw) | |||
309 | /* <5> set hw caps */ | 309 | /* <5> set hw caps */ |
310 | hw->flags = IEEE80211_HW_SIGNAL_DBM | | 310 | hw->flags = IEEE80211_HW_SIGNAL_DBM | |
311 | IEEE80211_HW_RX_INCLUDES_FCS | | 311 | IEEE80211_HW_RX_INCLUDES_FCS | |
312 | IEEE80211_HW_BEACON_FILTER | | ||
313 | IEEE80211_HW_AMPDU_AGGREGATION | | 312 | IEEE80211_HW_AMPDU_AGGREGATION | |
314 | IEEE80211_HW_CONNECTION_MONITOR | | 313 | IEEE80211_HW_CONNECTION_MONITOR | |
315 | /* IEEE80211_HW_SUPPORTS_CQM_RSSI | */ | 314 | /* IEEE80211_HW_SUPPORTS_CQM_RSSI | */ |
diff --git a/drivers/net/wireless/rtlwifi/core.c b/drivers/net/wireless/rtlwifi/core.c index d6e37e6a1d53..0ee01ab2e4f6 100644 --- a/drivers/net/wireless/rtlwifi/core.c +++ b/drivers/net/wireless/rtlwifi/core.c | |||
@@ -112,6 +112,8 @@ static int rtl_op_add_interface(struct ieee80211_hw *hw, | |||
112 | struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); | 112 | struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); |
113 | int err = 0; | 113 | int err = 0; |
114 | 114 | ||
115 | vif->driver_flags |= IEEE80211_VIF_BEACON_FILTER; | ||
116 | |||
115 | if (mac->vif) { | 117 | if (mac->vif) { |
116 | RT_TRACE(rtlpriv, COMP_ERR, DBG_WARNING, | 118 | RT_TRACE(rtlpriv, COMP_ERR, DBG_WARNING, |
117 | "vif has been set!! mac->vif = 0x%p\n", mac->vif); | 119 | "vif has been set!! mac->vif = 0x%p\n", mac->vif); |