|
@@ -3313,6 +3313,8 @@ static int mwifiex_cfg80211_suspend(struct wiphy *wiphy,
|
|
|
struct mwifiex_ds_hs_cfg hs_cfg;
|
|
|
int i, ret = 0, retry_num = 10;
|
|
|
struct mwifiex_private *priv;
|
|
|
+ struct mwifiex_private *sta_priv =
|
|
|
+ mwifiex_get_priv(adapter, MWIFIEX_BSS_ROLE_STA);
|
|
|
|
|
|
for (i = 0; i < adapter->priv_num; i++) {
|
|
|
priv = adapter->priv[i];
|
|
@@ -3345,15 +3347,13 @@ static int mwifiex_cfg80211_suspend(struct wiphy *wiphy,
|
|
|
return 0;
|
|
|
}
|
|
|
|
|
|
- priv = mwifiex_get_priv(adapter, MWIFIEX_BSS_ROLE_STA);
|
|
|
-
|
|
|
- if (!priv->media_connected && !wowlan->nd_config) {
|
|
|
+ if (!sta_priv->media_connected && !wowlan->nd_config) {
|
|
|
mwifiex_dbg(adapter, ERROR,
|
|
|
"Can not configure WOWLAN in disconnected state\n");
|
|
|
return 0;
|
|
|
}
|
|
|
|
|
|
- ret = mwifiex_set_mef_filter(priv, wowlan);
|
|
|
+ ret = mwifiex_set_mef_filter(sta_priv, wowlan);
|
|
|
if (ret) {
|
|
|
mwifiex_dbg(adapter, ERROR, "Failed to set MEF filter\n");
|
|
|
return ret;
|
|
@@ -3365,19 +3365,19 @@ static int mwifiex_cfg80211_suspend(struct wiphy *wiphy,
|
|
|
if (wowlan->nd_config) {
|
|
|
mwifiex_dbg(adapter, INFO, "Wake on net detect\n");
|
|
|
hs_cfg.conditions |= HS_CFG_COND_MAC_EVENT;
|
|
|
- mwifiex_cfg80211_sched_scan_start(wiphy, priv->netdev,
|
|
|
+ mwifiex_cfg80211_sched_scan_start(wiphy, sta_priv->netdev,
|
|
|
wowlan->nd_config);
|
|
|
}
|
|
|
|
|
|
if (wowlan->disconnect) {
|
|
|
hs_cfg.conditions |= HS_CFG_COND_MAC_EVENT;
|
|
|
- mwifiex_dbg(priv->adapter, INFO, "Wake on device disconnect\n");
|
|
|
+ mwifiex_dbg(sta_priv->adapter, INFO, "Wake on device disconnect\n");
|
|
|
}
|
|
|
|
|
|
hs_cfg.is_invoke_hostcmd = false;
|
|
|
hs_cfg.gpio = adapter->hs_cfg.gpio;
|
|
|
hs_cfg.gap = adapter->hs_cfg.gap;
|
|
|
- ret = mwifiex_set_hs_params(priv, HostCmd_ACT_GEN_SET,
|
|
|
+ ret = mwifiex_set_hs_params(sta_priv, HostCmd_ACT_GEN_SET,
|
|
|
MWIFIEX_SYNC_CMD, &hs_cfg);
|
|
|
if (ret) {
|
|
|
mwifiex_dbg(adapter, ERROR,
|