diff options
author | Ping-Ke Shih <pkshih@realtek.com> | 2018-01-17 01:15:22 -0500 |
---|---|---|
committer | Kalle Valo <kvalo@codeaurora.org> | 2018-01-17 10:09:10 -0500 |
commit | c8abbe79cce67f201bbbe8ce797476fdc96a80f4 (patch) | |
tree | 620d0e1105b79e205f298e2cb9106ce0949838af | |
parent | a3fa3669d18c959c265eda2048b998c0062a61ce (diff) |
rtlwifi: fix scan channel 1 fail after IPS
If there is no connection, driver will enter IPS state. Meanwhile, it
fails to scan channel 1 by the command 'iw dev wlan0 scan freq 2412',
because hardware channel setting lose after IPS. Thus, restore channel
setting from hw->conf.channel set by last rtl_op_config().
Signed-off-by: Tim Lee <timlee@realtek.com>
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
-rw-r--r-- | drivers/net/wireless/realtek/rtlwifi/ps.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/net/wireless/realtek/rtlwifi/ps.c b/drivers/net/wireless/realtek/rtlwifi/ps.c index 6a4008845f49..71af24e2e051 100644 --- a/drivers/net/wireless/realtek/rtlwifi/ps.c +++ b/drivers/net/wireless/realtek/rtlwifi/ps.c | |||
@@ -51,6 +51,11 @@ bool rtl_ps_enable_nic(struct ieee80211_hw *hw) | |||
51 | &rtlmac->retry_long); | 51 | &rtlmac->retry_long); |
52 | RT_CLEAR_PS_LEVEL(ppsc, RT_RF_OFF_LEVL_HALT_NIC); | 52 | RT_CLEAR_PS_LEVEL(ppsc, RT_RF_OFF_LEVL_HALT_NIC); |
53 | 53 | ||
54 | rtlpriv->cfg->ops->switch_channel(hw); | ||
55 | rtlpriv->cfg->ops->set_channel_access(hw); | ||
56 | rtlpriv->cfg->ops->set_bw_mode(hw, | ||
57 | cfg80211_get_chandef_type(&hw->conf.chandef)); | ||
58 | |||
54 | /*<3> Enable Interrupt */ | 59 | /*<3> Enable Interrupt */ |
55 | rtlpriv->cfg->ops->enable_interrupt(hw); | 60 | rtlpriv->cfg->ops->enable_interrupt(hw); |
56 | 61 | ||