Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 203707
b: refs/heads/master
c: 450464d
h: refs/heads/master
i:
  203705: d0caf98
  203703: b0fa427
v: v3
  • Loading branch information
Bob Copeland authored and John W. Linville committed Jul 14, 2010
1 parent 092a13b commit 7927196
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 7 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 5faaff747710dfb79d5aa72b9faface94ad4b3f3
refs/heads/master: 450464def78c94018d997ae6f823578499cdf879
20 changes: 14 additions & 6 deletions trunk/drivers/net/wireless/ath/ath5k/base.c
Original file line number Diff line number Diff line change
Expand Up @@ -2639,6 +2639,15 @@ ath5k_stop_locked(struct ath5k_softc *sc)
return 0;
}

static void stop_tasklets(struct ath5k_softc *sc)
{
tasklet_kill(&sc->rxtq);
tasklet_kill(&sc->txtq);
tasklet_kill(&sc->calib);
tasklet_kill(&sc->beacontq);
tasklet_kill(&sc->ani_tasklet);
}

/*
* Stop the device, grabbing the top-level lock to protect
* against concurrent entry through ath5k_init (which can happen
Expand Down Expand Up @@ -2683,11 +2692,7 @@ ath5k_stop_hw(struct ath5k_softc *sc)
mmiowb();
mutex_unlock(&sc->lock);

tasklet_kill(&sc->rxtq);
tasklet_kill(&sc->txtq);
tasklet_kill(&sc->calib);
tasklet_kill(&sc->beacontq);
tasklet_kill(&sc->ani_tasklet);
stop_tasklets(sc);

ath5k_rfkill_hw_stop(sc->ah);

Expand Down Expand Up @@ -2937,8 +2942,11 @@ ath5k_reset(struct ath5k_softc *sc, struct ieee80211_channel *chan)

ATH5K_DBG(sc, ATH5K_DEBUG_RESET, "resetting\n");

ath5k_hw_set_imr(ah, 0);
synchronize_irq(sc->pdev->irq);
stop_tasklets(sc);

if (chan) {
ath5k_hw_set_imr(ah, 0);
ath5k_txq_cleanup(sc);
ath5k_rx_stop(sc);

Expand Down

0 comments on commit 7927196

Please sign in to comment.