ath9k: Fix offchannel operation
When multiple channel contexts are active, an offchannel request will not be handled immediately, but will be queued to be handled later. But, currently, the channel definition is not copied to the local offchannel state. This breaks operation like scanning when MCC is active. Fix this by storing the offchannel parameters properly. Signed-off-by: Sujith Manoharan <c_manoha@qca.qualcomm.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
parent
a402764452
commit
da0162f3f0
|
@ -588,7 +588,11 @@ static void ath_chanctx_switch(struct ath_softc *sc, struct ath_chanctx *ctx,
|
|||
if (test_bit(ATH_OP_MULTI_CHANNEL, &common->op_flags) &&
|
||||
(sc->cur_chan != ctx) && (ctx == &sc->offchannel.chan)) {
|
||||
sc->sched.offchannel_pending = true;
|
||||
if (chandef)
|
||||
ctx->chandef = *chandef;
|
||||
spin_unlock_bh(&sc->chan_lock);
|
||||
ath_dbg(common, CHAN_CTX,
|
||||
"Set offchannel_pending to true\n");
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue