Loading drivers/net/wireless/ath/ath6kl/cfg80211.c +14 −13 Original line number Original line Diff line number Diff line Loading @@ -1074,15 +1074,18 @@ out: void ath6kl_cfg80211_ch_switch_notify(struct ath6kl_vif *vif, int freq, void ath6kl_cfg80211_ch_switch_notify(struct ath6kl_vif *vif, int freq, enum wmi_phy_mode mode) enum wmi_phy_mode mode) { { enum nl80211_channel_type type; struct cfg80211_chan_def chandef; ath6kl_dbg(ATH6KL_DBG_WLAN_CFG, ath6kl_dbg(ATH6KL_DBG_WLAN_CFG, "channel switch notify nw_type %d freq %d mode %d\n", "channel switch notify nw_type %d freq %d mode %d\n", vif->nw_type, freq, mode); vif->nw_type, freq, mode); type = (mode == WMI_11G_HT20) ? NL80211_CHAN_HT20 : NL80211_CHAN_NO_HT; cfg80211_chandef_create(&chandef, ieee80211_get_channel(vif->ar->wiphy, freq), (mode == WMI_11G_HT20) ? NL80211_CHAN_HT20 : NL80211_CHAN_NO_HT); cfg80211_ch_switch_notify(vif->ndev, freq, type); cfg80211_ch_switch_notify(vif->ndev, &chandef); } } static int ath6kl_cfg80211_add_key(struct wiphy *wiphy, struct net_device *ndev, static int ath6kl_cfg80211_add_key(struct wiphy *wiphy, struct net_device *ndev, Loading Loading @@ -1594,8 +1597,8 @@ static int ath6kl_cfg80211_join_ibss(struct wiphy *wiphy, vif->ssid_len = ibss_param->ssid_len; vif->ssid_len = ibss_param->ssid_len; memcpy(vif->ssid, ibss_param->ssid, vif->ssid_len); memcpy(vif->ssid, ibss_param->ssid, vif->ssid_len); if (ibss_param->channel) if (ibss_param->chandef.chan) vif->ch_hint = ibss_param->channel->center_freq; vif->ch_hint = ibss_param->chandef.chan->center_freq; if (ibss_param->channel_fixed) { if (ibss_param->channel_fixed) { /* /* Loading Loading @@ -2878,7 +2881,7 @@ static int ath6kl_start_ap(struct wiphy *wiphy, struct net_device *dev, p.ssid_len = vif->ssid_len; p.ssid_len = vif->ssid_len; memcpy(p.ssid, vif->ssid, vif->ssid_len); memcpy(p.ssid, vif->ssid, vif->ssid_len); p.dot11_auth_mode = vif->dot11_auth_mode; p.dot11_auth_mode = vif->dot11_auth_mode; p.ch = cpu_to_le16(info->channel->center_freq); p.ch = cpu_to_le16(info->chandef.chan->center_freq); /* Enable uAPSD support by default */ /* Enable uAPSD support by default */ res = ath6kl_wmi_ap_set_apsd(ar->wmi, vif->fw_vif_idx, true); res = ath6kl_wmi_ap_set_apsd(ar->wmi, vif->fw_vif_idx, true); Loading Loading @@ -2909,8 +2912,9 @@ static int ath6kl_start_ap(struct wiphy *wiphy, struct net_device *dev, return res; return res; } } if (ath6kl_set_htcap(vif, info->channel->band, if (ath6kl_set_htcap(vif, info->chandef.chan->band, info->channel_type != NL80211_CHAN_NO_HT)) cfg80211_get_chandef_type(&info->chandef) != NL80211_CHAN_NO_HT)) return -EIO; return -EIO; /* /* Loading Loading @@ -3006,7 +3010,6 @@ static int ath6kl_change_station(struct wiphy *wiphy, struct net_device *dev, static int ath6kl_remain_on_channel(struct wiphy *wiphy, static int ath6kl_remain_on_channel(struct wiphy *wiphy, struct wireless_dev *wdev, struct wireless_dev *wdev, struct ieee80211_channel *chan, struct ieee80211_channel *chan, enum nl80211_channel_type channel_type, unsigned int duration, unsigned int duration, u64 *cookie) u64 *cookie) { { Loading Loading @@ -3165,10 +3168,8 @@ static bool ath6kl_is_p2p_go_ssid(const u8 *buf, size_t len) static int ath6kl_mgmt_tx(struct wiphy *wiphy, struct wireless_dev *wdev, static int ath6kl_mgmt_tx(struct wiphy *wiphy, struct wireless_dev *wdev, struct ieee80211_channel *chan, bool offchan, struct ieee80211_channel *chan, bool offchan, enum nl80211_channel_type channel_type, unsigned int wait, const u8 *buf, size_t len, bool channel_type_valid, unsigned int wait, bool no_cck, bool dont_wait_for_ack, u64 *cookie) const u8 *buf, size_t len, bool no_cck, bool dont_wait_for_ack, u64 *cookie) { { struct ath6kl_vif *vif = ath6kl_vif_from_wdev(wdev); struct ath6kl_vif *vif = ath6kl_vif_from_wdev(wdev); struct ath6kl *ar = ath6kl_priv(vif->ndev); struct ath6kl *ar = ath6kl_priv(vif->ndev); Loading drivers/net/wireless/ath/ath6kl/wmi.c +2 −3 Original line number Original line Diff line number Diff line Loading @@ -474,7 +474,7 @@ static int ath6kl_wmi_remain_on_chnl_event_rx(struct wmi *wmi, u8 *datap, return -EINVAL; return -EINVAL; } } id = vif->last_roc_id; id = vif->last_roc_id; cfg80211_ready_on_channel(&vif->wdev, id, chan, NL80211_CHAN_NO_HT, cfg80211_ready_on_channel(&vif->wdev, id, chan, dur, GFP_ATOMIC); dur, GFP_ATOMIC); return 0; return 0; Loading Loading @@ -513,8 +513,7 @@ static int ath6kl_wmi_cancel_remain_on_chnl_event_rx(struct wmi *wmi, else else id = vif->last_roc_id; /* timeout on uncanceled r-o-c */ id = vif->last_roc_id; /* timeout on uncanceled r-o-c */ vif->last_cancel_roc_id = 0; vif->last_cancel_roc_id = 0; cfg80211_remain_on_channel_expired(&vif->wdev, id, chan, cfg80211_remain_on_channel_expired(&vif->wdev, id, chan, GFP_ATOMIC); NL80211_CHAN_NO_HT, GFP_ATOMIC); return 0; return 0; } } Loading drivers/net/wireless/brcm80211/brcmfmac/wl_cfg80211.c +6 −5 Original line number Original line Diff line number Diff line Loading @@ -1013,8 +1013,8 @@ brcmf_cfg80211_join_ibss(struct wiphy *wiphy, struct net_device *ndev, else else WL_CONN("No BSSID specified\n"); WL_CONN("No BSSID specified\n"); if (params->channel) if (params->chandef.chan) WL_CONN("channel: %d\n", params->channel->center_freq); WL_CONN("channel: %d\n", params->chandef.chan->center_freq); else else WL_CONN("no channel specified\n"); WL_CONN("no channel specified\n"); Loading Loading @@ -1087,12 +1087,12 @@ brcmf_cfg80211_join_ibss(struct wiphy *wiphy, struct net_device *ndev, } } /* Channel */ /* Channel */ if (params->channel) { if (params->chandef.chan) { u32 target_channel; u32 target_channel; cfg->channel = cfg->channel = ieee80211_frequency_to_channel( ieee80211_frequency_to_channel( params->channel->center_freq); params->chandef.chan->center_freq); if (params->channel_fixed) { if (params->channel_fixed) { /* adding chanspec */ /* adding chanspec */ brcmf_ch_to_chanspec(cfg->channel, brcmf_ch_to_chanspec(cfg->channel, Loading Loading @@ -3506,7 +3506,8 @@ brcmf_cfg80211_start_ap(struct wiphy *wiphy, struct net_device *ndev, s32 bssidx = 0; s32 bssidx = 0; WL_TRACE("channel_type=%d, beacon_interval=%d, dtim_period=%d,\n", WL_TRACE("channel_type=%d, beacon_interval=%d, dtim_period=%d,\n", settings->channel_type, settings->beacon_interval, cfg80211_get_chandef_type(&settings->chandef), settings->beacon_interval, settings->dtim_period); settings->dtim_period); WL_TRACE("ssid=%s(%zu), auth_type=%d, inactivity_timeout=%d\n", WL_TRACE("ssid=%s(%zu), auth_type=%d, inactivity_timeout=%d\n", settings->ssid, settings->ssid_len, settings->auth_type, settings->ssid, settings->ssid_len, settings->auth_type, Loading drivers/net/wireless/iwlwifi/dvm/dev.h +0 −1 Original line number Original line Diff line number Diff line Loading @@ -789,7 +789,6 @@ struct iwl_priv { /* remain-on-channel offload support */ /* remain-on-channel offload support */ struct ieee80211_channel *hw_roc_channel; struct ieee80211_channel *hw_roc_channel; struct delayed_work hw_roc_disable_work; struct delayed_work hw_roc_disable_work; enum nl80211_channel_type hw_roc_chantype; int hw_roc_duration; int hw_roc_duration; bool hw_roc_setup, hw_roc_start_notified; bool hw_roc_setup, hw_roc_start_notified; Loading drivers/net/wireless/iwlwifi/dvm/mac80211.c +0 −2 Original line number Original line Diff line number Diff line Loading @@ -1037,7 +1037,6 @@ done: static int iwlagn_mac_remain_on_channel(struct ieee80211_hw *hw, static int iwlagn_mac_remain_on_channel(struct ieee80211_hw *hw, struct ieee80211_vif *vif, struct ieee80211_vif *vif, struct ieee80211_channel *channel, struct ieee80211_channel *channel, enum nl80211_channel_type channel_type, int duration) int duration) { { struct iwl_priv *priv = IWL_MAC80211_GET_DVM(hw); struct iwl_priv *priv = IWL_MAC80211_GET_DVM(hw); Loading Loading @@ -1069,7 +1068,6 @@ static int iwlagn_mac_remain_on_channel(struct ieee80211_hw *hw, } } priv->hw_roc_channel = channel; priv->hw_roc_channel = channel; priv->hw_roc_chantype = channel_type; /* convert from ms to TU */ /* convert from ms to TU */ priv->hw_roc_duration = DIV_ROUND_UP(1000 * duration, 1024); priv->hw_roc_duration = DIV_ROUND_UP(1000 * duration, 1024); priv->hw_roc_start_notified = false; priv->hw_roc_start_notified = false; Loading Loading
drivers/net/wireless/ath/ath6kl/cfg80211.c +14 −13 Original line number Original line Diff line number Diff line Loading @@ -1074,15 +1074,18 @@ out: void ath6kl_cfg80211_ch_switch_notify(struct ath6kl_vif *vif, int freq, void ath6kl_cfg80211_ch_switch_notify(struct ath6kl_vif *vif, int freq, enum wmi_phy_mode mode) enum wmi_phy_mode mode) { { enum nl80211_channel_type type; struct cfg80211_chan_def chandef; ath6kl_dbg(ATH6KL_DBG_WLAN_CFG, ath6kl_dbg(ATH6KL_DBG_WLAN_CFG, "channel switch notify nw_type %d freq %d mode %d\n", "channel switch notify nw_type %d freq %d mode %d\n", vif->nw_type, freq, mode); vif->nw_type, freq, mode); type = (mode == WMI_11G_HT20) ? NL80211_CHAN_HT20 : NL80211_CHAN_NO_HT; cfg80211_chandef_create(&chandef, ieee80211_get_channel(vif->ar->wiphy, freq), (mode == WMI_11G_HT20) ? NL80211_CHAN_HT20 : NL80211_CHAN_NO_HT); cfg80211_ch_switch_notify(vif->ndev, freq, type); cfg80211_ch_switch_notify(vif->ndev, &chandef); } } static int ath6kl_cfg80211_add_key(struct wiphy *wiphy, struct net_device *ndev, static int ath6kl_cfg80211_add_key(struct wiphy *wiphy, struct net_device *ndev, Loading Loading @@ -1594,8 +1597,8 @@ static int ath6kl_cfg80211_join_ibss(struct wiphy *wiphy, vif->ssid_len = ibss_param->ssid_len; vif->ssid_len = ibss_param->ssid_len; memcpy(vif->ssid, ibss_param->ssid, vif->ssid_len); memcpy(vif->ssid, ibss_param->ssid, vif->ssid_len); if (ibss_param->channel) if (ibss_param->chandef.chan) vif->ch_hint = ibss_param->channel->center_freq; vif->ch_hint = ibss_param->chandef.chan->center_freq; if (ibss_param->channel_fixed) { if (ibss_param->channel_fixed) { /* /* Loading Loading @@ -2878,7 +2881,7 @@ static int ath6kl_start_ap(struct wiphy *wiphy, struct net_device *dev, p.ssid_len = vif->ssid_len; p.ssid_len = vif->ssid_len; memcpy(p.ssid, vif->ssid, vif->ssid_len); memcpy(p.ssid, vif->ssid, vif->ssid_len); p.dot11_auth_mode = vif->dot11_auth_mode; p.dot11_auth_mode = vif->dot11_auth_mode; p.ch = cpu_to_le16(info->channel->center_freq); p.ch = cpu_to_le16(info->chandef.chan->center_freq); /* Enable uAPSD support by default */ /* Enable uAPSD support by default */ res = ath6kl_wmi_ap_set_apsd(ar->wmi, vif->fw_vif_idx, true); res = ath6kl_wmi_ap_set_apsd(ar->wmi, vif->fw_vif_idx, true); Loading Loading @@ -2909,8 +2912,9 @@ static int ath6kl_start_ap(struct wiphy *wiphy, struct net_device *dev, return res; return res; } } if (ath6kl_set_htcap(vif, info->channel->band, if (ath6kl_set_htcap(vif, info->chandef.chan->band, info->channel_type != NL80211_CHAN_NO_HT)) cfg80211_get_chandef_type(&info->chandef) != NL80211_CHAN_NO_HT)) return -EIO; return -EIO; /* /* Loading Loading @@ -3006,7 +3010,6 @@ static int ath6kl_change_station(struct wiphy *wiphy, struct net_device *dev, static int ath6kl_remain_on_channel(struct wiphy *wiphy, static int ath6kl_remain_on_channel(struct wiphy *wiphy, struct wireless_dev *wdev, struct wireless_dev *wdev, struct ieee80211_channel *chan, struct ieee80211_channel *chan, enum nl80211_channel_type channel_type, unsigned int duration, unsigned int duration, u64 *cookie) u64 *cookie) { { Loading Loading @@ -3165,10 +3168,8 @@ static bool ath6kl_is_p2p_go_ssid(const u8 *buf, size_t len) static int ath6kl_mgmt_tx(struct wiphy *wiphy, struct wireless_dev *wdev, static int ath6kl_mgmt_tx(struct wiphy *wiphy, struct wireless_dev *wdev, struct ieee80211_channel *chan, bool offchan, struct ieee80211_channel *chan, bool offchan, enum nl80211_channel_type channel_type, unsigned int wait, const u8 *buf, size_t len, bool channel_type_valid, unsigned int wait, bool no_cck, bool dont_wait_for_ack, u64 *cookie) const u8 *buf, size_t len, bool no_cck, bool dont_wait_for_ack, u64 *cookie) { { struct ath6kl_vif *vif = ath6kl_vif_from_wdev(wdev); struct ath6kl_vif *vif = ath6kl_vif_from_wdev(wdev); struct ath6kl *ar = ath6kl_priv(vif->ndev); struct ath6kl *ar = ath6kl_priv(vif->ndev); Loading
drivers/net/wireless/ath/ath6kl/wmi.c +2 −3 Original line number Original line Diff line number Diff line Loading @@ -474,7 +474,7 @@ static int ath6kl_wmi_remain_on_chnl_event_rx(struct wmi *wmi, u8 *datap, return -EINVAL; return -EINVAL; } } id = vif->last_roc_id; id = vif->last_roc_id; cfg80211_ready_on_channel(&vif->wdev, id, chan, NL80211_CHAN_NO_HT, cfg80211_ready_on_channel(&vif->wdev, id, chan, dur, GFP_ATOMIC); dur, GFP_ATOMIC); return 0; return 0; Loading Loading @@ -513,8 +513,7 @@ static int ath6kl_wmi_cancel_remain_on_chnl_event_rx(struct wmi *wmi, else else id = vif->last_roc_id; /* timeout on uncanceled r-o-c */ id = vif->last_roc_id; /* timeout on uncanceled r-o-c */ vif->last_cancel_roc_id = 0; vif->last_cancel_roc_id = 0; cfg80211_remain_on_channel_expired(&vif->wdev, id, chan, cfg80211_remain_on_channel_expired(&vif->wdev, id, chan, GFP_ATOMIC); NL80211_CHAN_NO_HT, GFP_ATOMIC); return 0; return 0; } } Loading
drivers/net/wireless/brcm80211/brcmfmac/wl_cfg80211.c +6 −5 Original line number Original line Diff line number Diff line Loading @@ -1013,8 +1013,8 @@ brcmf_cfg80211_join_ibss(struct wiphy *wiphy, struct net_device *ndev, else else WL_CONN("No BSSID specified\n"); WL_CONN("No BSSID specified\n"); if (params->channel) if (params->chandef.chan) WL_CONN("channel: %d\n", params->channel->center_freq); WL_CONN("channel: %d\n", params->chandef.chan->center_freq); else else WL_CONN("no channel specified\n"); WL_CONN("no channel specified\n"); Loading Loading @@ -1087,12 +1087,12 @@ brcmf_cfg80211_join_ibss(struct wiphy *wiphy, struct net_device *ndev, } } /* Channel */ /* Channel */ if (params->channel) { if (params->chandef.chan) { u32 target_channel; u32 target_channel; cfg->channel = cfg->channel = ieee80211_frequency_to_channel( ieee80211_frequency_to_channel( params->channel->center_freq); params->chandef.chan->center_freq); if (params->channel_fixed) { if (params->channel_fixed) { /* adding chanspec */ /* adding chanspec */ brcmf_ch_to_chanspec(cfg->channel, brcmf_ch_to_chanspec(cfg->channel, Loading Loading @@ -3506,7 +3506,8 @@ brcmf_cfg80211_start_ap(struct wiphy *wiphy, struct net_device *ndev, s32 bssidx = 0; s32 bssidx = 0; WL_TRACE("channel_type=%d, beacon_interval=%d, dtim_period=%d,\n", WL_TRACE("channel_type=%d, beacon_interval=%d, dtim_period=%d,\n", settings->channel_type, settings->beacon_interval, cfg80211_get_chandef_type(&settings->chandef), settings->beacon_interval, settings->dtim_period); settings->dtim_period); WL_TRACE("ssid=%s(%zu), auth_type=%d, inactivity_timeout=%d\n", WL_TRACE("ssid=%s(%zu), auth_type=%d, inactivity_timeout=%d\n", settings->ssid, settings->ssid_len, settings->auth_type, settings->ssid, settings->ssid_len, settings->auth_type, Loading
drivers/net/wireless/iwlwifi/dvm/dev.h +0 −1 Original line number Original line Diff line number Diff line Loading @@ -789,7 +789,6 @@ struct iwl_priv { /* remain-on-channel offload support */ /* remain-on-channel offload support */ struct ieee80211_channel *hw_roc_channel; struct ieee80211_channel *hw_roc_channel; struct delayed_work hw_roc_disable_work; struct delayed_work hw_roc_disable_work; enum nl80211_channel_type hw_roc_chantype; int hw_roc_duration; int hw_roc_duration; bool hw_roc_setup, hw_roc_start_notified; bool hw_roc_setup, hw_roc_start_notified; Loading
drivers/net/wireless/iwlwifi/dvm/mac80211.c +0 −2 Original line number Original line Diff line number Diff line Loading @@ -1037,7 +1037,6 @@ done: static int iwlagn_mac_remain_on_channel(struct ieee80211_hw *hw, static int iwlagn_mac_remain_on_channel(struct ieee80211_hw *hw, struct ieee80211_vif *vif, struct ieee80211_vif *vif, struct ieee80211_channel *channel, struct ieee80211_channel *channel, enum nl80211_channel_type channel_type, int duration) int duration) { { struct iwl_priv *priv = IWL_MAC80211_GET_DVM(hw); struct iwl_priv *priv = IWL_MAC80211_GET_DVM(hw); Loading Loading @@ -1069,7 +1068,6 @@ static int iwlagn_mac_remain_on_channel(struct ieee80211_hw *hw, } } priv->hw_roc_channel = channel; priv->hw_roc_channel = channel; priv->hw_roc_chantype = channel_type; /* convert from ms to TU */ /* convert from ms to TU */ priv->hw_roc_duration = DIV_ROUND_UP(1000 * duration, 1024); priv->hw_roc_duration = DIV_ROUND_UP(1000 * duration, 1024); priv->hw_roc_start_notified = false; priv->hw_roc_start_notified = false; Loading