Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 202833
b: refs/heads/master
c: 2336776
h: refs/heads/master
i:
  202831: 7766b86
v: v3
  • Loading branch information
Sujith authored and John W. Linville committed Jun 3, 2010
1 parent d85531d commit eab44fe
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 6 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 3901737e25a85052e9650547f95aede62abc999b
refs/heads/master: 23367769af90b63231cce6d70a39f1700ca5c03d
18 changes: 13 additions & 5 deletions trunk/drivers/net/wireless/ath/ath9k/htc_drv_main.c
Original file line number Diff line number Diff line change
Expand Up @@ -1401,16 +1401,17 @@ static int ath9k_htc_config(struct ieee80211_hw *hw, u32 changed)
bool enable_radio = false;
bool idle = !!(conf->flags & IEEE80211_CONF_IDLE);

mutex_lock(&priv->htc_pm_lock);
if (!idle && priv->ps_idle)
enable_radio = true;

priv->ps_idle = idle;
mutex_unlock(&priv->htc_pm_lock);

if (enable_radio) {
ath9k_htc_setpower(priv, ATH9K_PM_AWAKE);
ath9k_htc_radio_enable(hw);
ath_print(common, ATH_DBG_CONFIG,
"not-idle: enabling radio\n");
ath9k_htc_setpower(priv, ATH9K_PM_AWAKE);
ath9k_htc_radio_enable(hw);
}
}

Expand Down Expand Up @@ -1453,14 +1454,21 @@ static int ath9k_htc_config(struct ieee80211_hw *hw, u32 changed)
}
}

if ((changed & IEEE80211_CONF_CHANGE_IDLE) && priv->ps_idle) {
if (changed & IEEE80211_CONF_CHANGE_IDLE) {
mutex_lock(&priv->htc_pm_lock);
if (!priv->ps_idle) {
mutex_unlock(&priv->htc_pm_lock);
goto out;
}
mutex_unlock(&priv->htc_pm_lock);

ath_print(common, ATH_DBG_CONFIG,
"idle: disabling radio\n");
ath9k_htc_radio_disable(hw);
}

out:
mutex_unlock(&priv->mutex);

return 0;
}

Expand Down

0 comments on commit eab44fe

Please sign in to comment.