|
|
|
|
@ -424,7 +424,8 @@ bool rtw_cfg80211_allow_ch_switch_notify(_adapter *adapter)
|
|
|
|
|
return 1;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
u8 rtw_cfg80211_ch_switch_notify(_adapter *adapter, u8 ch, u8 bw, u8 offset, u8 ht)
|
|
|
|
|
u8 rtw_cfg80211_ch_switch_notify(_adapter *adapter, u8 ch, u8 bw, u8 offset,
|
|
|
|
|
u8 ht, bool started)
|
|
|
|
|
{
|
|
|
|
|
struct wiphy *wiphy = adapter_to_wiphy(adapter);
|
|
|
|
|
u8 ret = _SUCCESS;
|
|
|
|
|
@ -432,13 +433,20 @@ u8 rtw_cfg80211_ch_switch_notify(_adapter *adapter, u8 ch, u8 bw, u8 offset, u8
|
|
|
|
|
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 8, 0))
|
|
|
|
|
struct cfg80211_chan_def chdef = {};
|
|
|
|
|
|
|
|
|
|
if (!rtw_cfg80211_allow_ch_switch_notify(adapter))
|
|
|
|
|
goto exit;
|
|
|
|
|
|
|
|
|
|
ret = rtw_chbw_to_cfg80211_chan_def(wiphy, &chdef, ch, bw, offset, ht);
|
|
|
|
|
if (ret != _SUCCESS)
|
|
|
|
|
goto exit;
|
|
|
|
|
|
|
|
|
|
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 19, 0))
|
|
|
|
|
if (started) {
|
|
|
|
|
cfg80211_ch_switch_started_notify(adapter->pnetdev, &chdef, 0);
|
|
|
|
|
goto exit;
|
|
|
|
|
}
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
if (!rtw_cfg80211_allow_ch_switch_notify(adapter))
|
|
|
|
|
goto exit;
|
|
|
|
|
|
|
|
|
|
cfg80211_ch_switch_notify(adapter->pnetdev, &chdef);
|
|
|
|
|
|
|
|
|
|
#else
|
|
|
|
|
|