Commit fdf76622 authored by Vasanthakumar Thiagarajan's avatar Vasanthakumar Thiagarajan Committed by John W. Linville

ath9k: Fix power save with auto sleeping

Rx should not be disabed/disabled when hw supports auto sleeping.
Signed-off-by: default avatarVasanthakumar Thiagarajan <vasanth@atheros.com>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent de0f648d
...@@ -1282,7 +1282,8 @@ static int ath9k_tx(struct ieee80211_hw *hw, ...@@ -1282,7 +1282,8 @@ static int ath9k_tx(struct ieee80211_hw *hw,
* completed and if needed, also for RX of buffered frames. * completed and if needed, also for RX of buffered frames.
*/ */
ath9k_ps_wakeup(sc); ath9k_ps_wakeup(sc);
ath9k_hw_setrxabort(sc->sc_ah, 0); if (!(sc->sc_ah->caps.hw_caps & ATH9K_HW_CAP_AUTOSLEEP))
ath9k_hw_setrxabort(sc->sc_ah, 0);
if (ieee80211_is_pspoll(hdr->frame_control)) { if (ieee80211_is_pspoll(hdr->frame_control)) {
ath_print(common, ATH_DBG_PS, ath_print(common, ATH_DBG_PS,
"Sending PS-Poll to pick a buffered frame\n"); "Sending PS-Poll to pick a buffered frame\n");
...@@ -1546,8 +1547,8 @@ void ath9k_enable_ps(struct ath_softc *sc) ...@@ -1546,8 +1547,8 @@ void ath9k_enable_ps(struct ath_softc *sc)
ah->imask |= ATH9K_INT_TIM_TIMER; ah->imask |= ATH9K_INT_TIM_TIMER;
ath9k_hw_set_interrupts(ah, ah->imask); ath9k_hw_set_interrupts(ah, ah->imask);
} }
ath9k_hw_setrxabort(ah, 1);
} }
ath9k_hw_setrxabort(ah, 1);
} }
static int ath9k_config(struct ieee80211_hw *hw, u32 changed) static int ath9k_config(struct ieee80211_hw *hw, u32 changed)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment