Merge tag 'mac80211-next-for-davem-2017-04-28' of git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next
Johannes Berg says: ==================== Another set of patches for -next: * API support for concurrent scheduled scan requests * API changes for roaming reporting * BSS max idle support in mac80211 * API changes for TX status reporting in mac80211 * API changes for RX rate reporting in mac80211 * rewrite monitor logic to prepare for BPF filters * bugfix for rare devices without 2.4 GHz support * a bugfix for recent DFS changes * some further cleanups The API changes are actually at a nice time, since it's typically quiet just before the merge window, and trees can be synchronized easily during it. ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
@@ -2053,7 +2053,7 @@ mwifiex_cfg80211_disconnect(struct wiphy *wiphy, struct net_device *dev,
|
||||
struct mwifiex_private *priv = mwifiex_netdev_get_priv(dev);
|
||||
|
||||
if (!mwifiex_stop_bg_scan(priv))
|
||||
cfg80211_sched_scan_stopped_rtnl(priv->wdev.wiphy);
|
||||
cfg80211_sched_scan_stopped_rtnl(priv->wdev.wiphy, 0);
|
||||
|
||||
if (mwifiex_deauthenticate(priv, NULL))
|
||||
return -EFAULT;
|
||||
@@ -2321,7 +2321,7 @@ mwifiex_cfg80211_connect(struct wiphy *wiphy, struct net_device *dev,
|
||||
(int)sme->ssid_len, (char *)sme->ssid, sme->bssid);
|
||||
|
||||
if (!mwifiex_stop_bg_scan(priv))
|
||||
cfg80211_sched_scan_stopped_rtnl(priv->wdev.wiphy);
|
||||
cfg80211_sched_scan_stopped_rtnl(priv->wdev.wiphy, 0);
|
||||
|
||||
ret = mwifiex_cfg80211_assoc(priv, sme->ssid_len, sme->ssid, sme->bssid,
|
||||
priv->bss_mode, sme->channel, sme, 0);
|
||||
@@ -2530,7 +2530,7 @@ mwifiex_cfg80211_scan(struct wiphy *wiphy,
|
||||
priv->scan_block = false;
|
||||
|
||||
if (!mwifiex_stop_bg_scan(priv))
|
||||
cfg80211_sched_scan_stopped_rtnl(priv->wdev.wiphy);
|
||||
cfg80211_sched_scan_stopped_rtnl(priv->wdev.wiphy, 0);
|
||||
|
||||
user_scan_cfg = kzalloc(sizeof(*user_scan_cfg), GFP_KERNEL);
|
||||
if (!user_scan_cfg)
|
||||
@@ -2720,7 +2720,7 @@ mwifiex_cfg80211_sched_scan_start(struct wiphy *wiphy,
|
||||
* previous bgscan configuration in the firmware
|
||||
*/
|
||||
static int mwifiex_cfg80211_sched_scan_stop(struct wiphy *wiphy,
|
||||
struct net_device *dev)
|
||||
struct net_device *dev, u64 reqid)
|
||||
{
|
||||
struct mwifiex_private *priv = mwifiex_netdev_get_priv(dev);
|
||||
|
||||
@@ -4297,7 +4297,6 @@ int mwifiex_register_cfg80211(struct mwifiex_adapter *adapter)
|
||||
wiphy->flags |= WIPHY_FLAG_HAVE_AP_SME |
|
||||
WIPHY_FLAG_AP_PROBE_RESP_OFFLOAD |
|
||||
WIPHY_FLAG_AP_UAPSD |
|
||||
WIPHY_FLAG_SUPPORTS_SCHED_SCAN |
|
||||
WIPHY_FLAG_HAS_REMAIN_ON_CHANNEL |
|
||||
WIPHY_FLAG_HAS_CHANNEL_SWITCH |
|
||||
WIPHY_FLAG_PS_ON_BY_DEFAULT;
|
||||
@@ -4316,6 +4315,7 @@ int mwifiex_register_cfg80211(struct mwifiex_adapter *adapter)
|
||||
NL80211_PROBE_RESP_OFFLOAD_SUPPORT_WPS2 |
|
||||
NL80211_PROBE_RESP_OFFLOAD_SUPPORT_P2P;
|
||||
|
||||
wiphy->max_sched_scan_reqs = 1;
|
||||
wiphy->max_sched_scan_ssids = MWIFIEX_MAX_SSID_LIST_LENGTH;
|
||||
wiphy->max_sched_scan_ie_len = MWIFIEX_MAX_VSIE_LEN;
|
||||
wiphy->max_match_sets = MWIFIEX_MAX_SSID_LIST_LENGTH;
|
||||
|
@@ -748,7 +748,7 @@ mwifiex_close(struct net_device *dev)
|
||||
mwifiex_dbg(priv->adapter, INFO,
|
||||
"aborting bgscan on ndo_stop\n");
|
||||
mwifiex_stop_bg_scan(priv);
|
||||
cfg80211_sched_scan_stopped(priv->wdev.wiphy);
|
||||
cfg80211_sched_scan_stopped(priv->wdev.wiphy, 0);
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
@@ -1201,7 +1201,7 @@ int mwifiex_process_sta_cmdresp(struct mwifiex_private *priv, u16 cmdresp_no,
|
||||
break;
|
||||
case HostCmd_CMD_802_11_BG_SCAN_QUERY:
|
||||
ret = mwifiex_ret_802_11_scan(priv, resp);
|
||||
cfg80211_sched_scan_results(priv->wdev.wiphy);
|
||||
cfg80211_sched_scan_results(priv->wdev.wiphy, 0);
|
||||
mwifiex_dbg(adapter, CMD,
|
||||
"info: CMD_RESP: BG_SCAN result is ready!\n");
|
||||
break;
|
||||
|
@@ -793,7 +793,7 @@ int mwifiex_process_sta_event(struct mwifiex_private *priv)
|
||||
|
||||
case EVENT_BG_SCAN_STOPPED:
|
||||
dev_dbg(adapter->dev, "event: BGS_STOPPED\n");
|
||||
cfg80211_sched_scan_stopped(priv->wdev.wiphy);
|
||||
cfg80211_sched_scan_stopped(priv->wdev.wiphy, 0);
|
||||
if (priv->sched_scanning)
|
||||
priv->sched_scanning = false;
|
||||
break;
|
||||
|
@@ -560,7 +560,7 @@ int mwifiex_enable_hs(struct mwifiex_adapter *adapter)
|
||||
#endif
|
||||
mwifiex_dbg(adapter, CMD, "aborting bgscan!\n");
|
||||
mwifiex_stop_bg_scan(priv);
|
||||
cfg80211_sched_scan_stopped(priv->wdev.wiphy);
|
||||
cfg80211_sched_scan_stopped(priv->wdev.wiphy, 0);
|
||||
#ifdef CONFIG_PM
|
||||
}
|
||||
#endif
|
||||
|
@@ -994,9 +994,9 @@ mwl8k_rxd_ap_process(void *_rxd, struct ieee80211_rx_status *status,
|
||||
*noise = -rxd->noise_floor;
|
||||
|
||||
if (rxd->rate & MWL8K_AP_RATE_INFO_MCS_FORMAT) {
|
||||
status->flag |= RX_FLAG_HT;
|
||||
status->encoding = RX_ENC_HT;
|
||||
if (rxd->rate & MWL8K_AP_RATE_INFO_40MHZ)
|
||||
status->flag |= RX_FLAG_40MHZ;
|
||||
status->bw = RATE_INFO_BW_40;
|
||||
status->rate_idx = MWL8K_AP_RATE_INFO_RATEID(rxd->rate);
|
||||
} else {
|
||||
int i;
|
||||
@@ -1011,7 +1011,7 @@ mwl8k_rxd_ap_process(void *_rxd, struct ieee80211_rx_status *status,
|
||||
|
||||
if (rxd->channel > 14) {
|
||||
status->band = NL80211_BAND_5GHZ;
|
||||
if (!(status->flag & RX_FLAG_HT))
|
||||
if (!(status->encoding == RX_ENC_HT))
|
||||
status->rate_idx -= 5;
|
||||
} else {
|
||||
status->band = NL80211_BAND_2GHZ;
|
||||
@@ -1109,17 +1109,17 @@ mwl8k_rxd_sta_process(void *_rxd, struct ieee80211_rx_status *status,
|
||||
status->rate_idx = MWL8K_STA_RATE_INFO_RATEID(rate_info);
|
||||
|
||||
if (rate_info & MWL8K_STA_RATE_INFO_SHORTPRE)
|
||||
status->flag |= RX_FLAG_SHORTPRE;
|
||||
status->enc_flags |= RX_ENC_FLAG_SHORTPRE;
|
||||
if (rate_info & MWL8K_STA_RATE_INFO_40MHZ)
|
||||
status->flag |= RX_FLAG_40MHZ;
|
||||
status->bw = RATE_INFO_BW_40;
|
||||
if (rate_info & MWL8K_STA_RATE_INFO_SHORTGI)
|
||||
status->flag |= RX_FLAG_SHORT_GI;
|
||||
status->enc_flags |= RX_ENC_FLAG_SHORT_GI;
|
||||
if (rate_info & MWL8K_STA_RATE_INFO_MCS_FORMAT)
|
||||
status->flag |= RX_FLAG_HT;
|
||||
status->encoding = RX_ENC_HT;
|
||||
|
||||
if (rxd->channel > 14) {
|
||||
status->band = NL80211_BAND_5GHZ;
|
||||
if (!(status->flag & RX_FLAG_HT))
|
||||
if (!(status->encoding == RX_ENC_HT))
|
||||
status->rate_idx -= 5;
|
||||
} else {
|
||||
status->band = NL80211_BAND_2GHZ;
|
||||
|
Reference in New Issue
Block a user