Skip to content

Commit

Permalink
ath9k_hw: Handle gentimer termination properly
Browse files Browse the repository at this point in the history
Signed-off-by: Sujith Manoharan <c_manoha@qca.qualcomm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
  • Loading branch information
Sujith Manoharan authored and John W. Linville committed Sep 11, 2012
1 parent 4ac8764 commit b7f5976
Showing 1 changed file with 10 additions and 0 deletions.
10 changes: 10 additions & 0 deletions drivers/net/wireless/ath/ath9k/hw.c
Original file line number Diff line number Diff line change
Expand Up @@ -3084,6 +3084,16 @@ void ath9k_hw_gen_timer_stop(struct ath_hw *ah, struct ath_gen_timer *timer)
REG_CLR_BIT(ah, gen_tmr_configuration[timer->index].mode_addr,
gen_tmr_configuration[timer->index].mode_mask);

if (AR_SREV_9462(ah) || AR_SREV_9565(ah)) {
/*
* Need to switch back to TSF if it was using TSF2.
*/
if ((timer->index >= AR_GEN_TIMER_BANK_1_LEN)) {
REG_CLR_BIT(ah, AR_MAC_PCU_GEN_TIMER_TSF_SEL,
(1 << timer->index));
}
}

/* Disable both trigger and thresh interrupt masks */
REG_CLR_BIT(ah, AR_IMR_S5,
(SM(AR_GENTMR_BIT(timer->index), AR_IMR_S5_GENTIMER_THRESH) |
Expand Down

0 comments on commit b7f5976

Please sign in to comment.