ath9k_htc: Fix bug in handling CONF_IDLE
authorSujith <Sujith.Manoharan@atheros.com>
Tue, 1 Jun 2010 09:44:14 +0000 (15:14 +0530)
committerJohn W. Linville <linville@tuxdriver.com>
Thu, 3 Jun 2010 18:14:40 +0000 (14:14 -0400)
Disable the radio only when mac80211 indicates it,
through the IEEE80211_CONF_CHANGE_IDLE flag.
Not handling this properly will result in multiple
calls to radio_disable() even though the radio is
already idle.

Signed-off-by: Sujith <Sujith.Manoharan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/ath/ath9k/htc_drv_main.c

index f4ae62a..2df9fc9 100644 (file)
@@ -1453,7 +1453,7 @@ static int ath9k_htc_config(struct ieee80211_hw *hw, u32 changed)
                }
        }
 
-       if (priv->ps_idle) {
+       if ((changed & IEEE80211_CONF_CHANGE_IDLE) && priv->ps_idle) {
                ath_print(common, ATH_DBG_CONFIG,
                          "idle: disabling radio\n");
                ath9k_htc_radio_disable(hw);