aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/ath/ath5k/base.c
diff options
context:
space:
mode:
authorBob Copeland <me@bobcopeland.com>2010-04-07 23:55:57 -0400
committerJohn W. Linville <linville@tuxdriver.com>2010-04-08 15:24:15 -0400
commit6b5d117eddc09cd976ad8030d715f4350f598a22 (patch)
tree363e2f43aeb4d6764c74eb24bc6f9fce765c3aab /drivers/net/wireless/ath/ath5k/base.c
parent1968cc78d91c79857089713bf3f3cceb5e9c63ae (diff)
ath5k: clean up queue manipulation
Review spotted a couple of strange invocations to ieee80211_wake_queues that could potentially cause problems: - queues are awakened in the calibration tasklet before phy calibration, and then again after calibration - queues are awakened inside reset when we're trying to drain the ath5k transmit queues, and again after reset is completed (in callers to ath5k_reset_wake). In both cases the first wake is unnecessary, so remove it. Signed-off-by: Bob Copeland <me@bobcopeland.com> Acked-by: Bruno Randolf <br1@einfach.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/ath/ath5k/base.c')
-rw-r--r--drivers/net/wireless/ath/ath5k/base.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/drivers/net/wireless/ath/ath5k/base.c b/drivers/net/wireless/ath/ath5k/base.c
index c085a06f1e05..38c41e3c7988 100644
--- a/drivers/net/wireless/ath/ath5k/base.c
+++ b/drivers/net/wireless/ath/ath5k/base.c
@@ -1636,7 +1636,6 @@ ath5k_txq_cleanup(struct ath5k_softc *sc)
1636 sc->txqs[i].link); 1636 sc->txqs[i].link);
1637 } 1637 }
1638 } 1638 }
1639 ieee80211_wake_queues(sc->hw); /* XXX move to callers */
1640 1639
1641 for (i = 0; i < ARRAY_SIZE(sc->txqs); i++) 1640 for (i = 0; i < ARRAY_SIZE(sc->txqs); i++)
1642 if (sc->txqs[i].setup) 1641 if (sc->txqs[i].setup)
@@ -2775,7 +2774,7 @@ ath5k_tasklet_calibrate(unsigned long data)
2775 * to load new gain values. 2774 * to load new gain values.
2776 */ 2775 */
2777 ATH5K_DBG(sc, ATH5K_DEBUG_RESET, "calibration, resetting\n"); 2776 ATH5K_DBG(sc, ATH5K_DEBUG_RESET, "calibration, resetting\n");
2778 ath5k_reset_wake(sc); 2777 ath5k_reset(sc, sc->curchan);
2779 } 2778 }
2780 if (ath5k_hw_phy_calibrate(ah, sc->curchan)) 2779 if (ath5k_hw_phy_calibrate(ah, sc->curchan))
2781 ATH5K_ERR(sc, "calibration of channel %u failed\n", 2780 ATH5K_ERR(sc, "calibration of channel %u failed\n",