Message ID | 20180111070932.9929-3-pkshih@realtek.com (mailing list archive) |
---|---|
State | Changes Requested |
Delegated to: | Kalle Valo |
Headers | show |
On 01/11/2018 01:09 AM, pkshih@realtek.com wrote: > From: Ping-Ke Shih <pkshih@realtek.com> > > 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> > --- > drivers/net/wireless/realtek/rtlwifi/ps.c | 5 +++++ > 1 file changed, 5 insertions(+) Acked-by: Larry Finger <Larry.Finger@lwfinger.net> > > 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) > &rtlmac->retry_long); > RT_CLEAR_PS_LEVEL(ppsc, RT_RF_OFF_LEVL_HALT_NIC); > > + rtlpriv->cfg->ops->switch_channel(hw); > + rtlpriv->cfg->ops->set_channel_access(hw); > + rtlpriv->cfg->ops->set_bw_mode(hw, > + cfg80211_get_chandef_type(&hw->conf.chandef)); > + > /*<3> Enable Interrupt */ > rtlpriv->cfg->ops->enable_interrupt(hw); > >
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) &rtlmac->retry_long); RT_CLEAR_PS_LEVEL(ppsc, RT_RF_OFF_LEVL_HALT_NIC); + rtlpriv->cfg->ops->switch_channel(hw); + rtlpriv->cfg->ops->set_channel_access(hw); + rtlpriv->cfg->ops->set_bw_mode(hw, + cfg80211_get_chandef_type(&hw->conf.chandef)); + /*<3> Enable Interrupt */ rtlpriv->cfg->ops->enable_interrupt(hw);