f0d9e712e4
Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 42952
30 lines
845 B
Diff
30 lines
845 B
Diff
From: Sujith Manoharan <c_manoha@qca.qualcomm.com>
|
|
Date: Fri, 17 Oct 2014 07:40:13 +0530
|
|
Subject: [PATCH] ath9k: Disable beacon tasklet during reset
|
|
|
|
When a chip reset is done, all running timers,
|
|
tasklets etc. are stopped but the beacon tasklet
|
|
is left running. Fix this.
|
|
|
|
Signed-off-by: Sujith Manoharan <c_manoha@qca.qualcomm.com>
|
|
---
|
|
|
|
--- a/drivers/net/wireless/ath/ath9k/main.c
|
|
+++ b/drivers/net/wireless/ath/ath9k/main.c
|
|
@@ -281,6 +281,7 @@ static int ath_reset_internal(struct ath
|
|
__ath_cancel_work(sc);
|
|
|
|
tasklet_disable(&sc->intr_tq);
|
|
+ tasklet_disable(&sc->bcon_tasklet);
|
|
spin_lock_bh(&sc->sc_pcu_lock);
|
|
|
|
if (!sc->cur_chan->offchannel) {
|
|
@@ -326,6 +327,7 @@ static int ath_reset_internal(struct ath
|
|
|
|
out:
|
|
spin_unlock_bh(&sc->sc_pcu_lock);
|
|
+ tasklet_enable(&sc->bcon_tasklet);
|
|
tasklet_enable(&sc->intr_tq);
|
|
|
|
return r;
|