diff options
Diffstat (limited to 'drivers/net/wireless/ath/ath5k/base.c')
-rw-r--r-- | drivers/net/wireless/ath/ath5k/base.c | 11 |
1 files changed, 3 insertions, 8 deletions
diff --git a/drivers/net/wireless/ath/ath5k/base.c b/drivers/net/wireless/ath/ath5k/base.c index 39d580017259..539a6d5415fd 100644 --- a/drivers/net/wireless/ath/ath5k/base.c +++ b/drivers/net/wireless/ath/ath5k/base.c | |||
@@ -2507,7 +2507,7 @@ ath5k_init(struct ath5k_softc *sc) | |||
2507 | sc->curband = &sc->sbands[sc->curchan->band]; | 2507 | sc->curband = &sc->sbands[sc->curchan->band]; |
2508 | sc->imask = AR5K_INT_RXOK | AR5K_INT_RXERR | AR5K_INT_RXEOL | | 2508 | sc->imask = AR5K_INT_RXOK | AR5K_INT_RXERR | AR5K_INT_RXEOL | |
2509 | AR5K_INT_RXORN | AR5K_INT_TXDESC | AR5K_INT_TXEOL | | 2509 | AR5K_INT_RXORN | AR5K_INT_TXDESC | AR5K_INT_TXEOL | |
2510 | AR5K_INT_FATAL | AR5K_INT_GLOBAL | AR5K_INT_SWI; | 2510 | AR5K_INT_FATAL | AR5K_INT_GLOBAL; |
2511 | ret = ath5k_reset(sc, NULL); | 2511 | ret = ath5k_reset(sc, NULL); |
2512 | if (ret) | 2512 | if (ret) |
2513 | goto done; | 2513 | goto done; |
@@ -2673,9 +2673,6 @@ ath5k_intr(int irq, void *dev_id) | |||
2673 | if (status & AR5K_INT_BMISS) { | 2673 | if (status & AR5K_INT_BMISS) { |
2674 | /* TODO */ | 2674 | /* TODO */ |
2675 | } | 2675 | } |
2676 | if (status & AR5K_INT_SWI) { | ||
2677 | tasklet_schedule(&sc->calib); | ||
2678 | } | ||
2679 | if (status & AR5K_INT_MIB) { | 2676 | if (status & AR5K_INT_MIB) { |
2680 | /* | 2677 | /* |
2681 | * These stats are also used for ANI i think | 2678 | * These stats are also used for ANI i think |
@@ -2716,8 +2713,7 @@ ath5k_tasklet_calibrate(unsigned long data) | |||
2716 | struct ath5k_hw *ah = sc->ah; | 2713 | struct ath5k_hw *ah = sc->ah; |
2717 | 2714 | ||
2718 | /* Only full calibration for now */ | 2715 | /* Only full calibration for now */ |
2719 | if (ah->ah_swi_mask != AR5K_SWI_FULL_CALIBRATION) | 2716 | ah->ah_cal_mask |= AR5K_CALIBRATION_FULL; |
2720 | return; | ||
2721 | 2717 | ||
2722 | /* Stop queues so that calibration | 2718 | /* Stop queues so that calibration |
2723 | * doesn't interfere with tx */ | 2719 | * doesn't interfere with tx */ |
@@ -2740,11 +2736,10 @@ ath5k_tasklet_calibrate(unsigned long data) | |||
2740 | ieee80211_frequency_to_channel( | 2736 | ieee80211_frequency_to_channel( |
2741 | sc->curchan->center_freq)); | 2737 | sc->curchan->center_freq)); |
2742 | 2738 | ||
2743 | ah->ah_swi_mask = 0; | ||
2744 | |||
2745 | /* Wake queues */ | 2739 | /* Wake queues */ |
2746 | ieee80211_wake_queues(sc->hw); | 2740 | ieee80211_wake_queues(sc->hw); |
2747 | 2741 | ||
2742 | ah->ah_cal_mask &= ~AR5K_CALIBRATION_FULL; | ||
2748 | } | 2743 | } |
2749 | 2744 | ||
2750 | 2745 | ||