Bob Copeland wrote: > Commit d7dc100374df0c21afd8a198336ecd7999697159, "Ath5k: unify resets" > introduced a regression into 2.6.28 where the PCU registers are never > initialized, due to ath5k_reset() always passing true for change_channel. > We subsequently program a lot of these registers but several may start > in an unknown state. > > Cc: stable@xxxxxxxxxx > Reported-by: Forrest Zhang <forrest@xxxxxxxxxxxxxx> > Signed-off-by: Bob Copeland <me@xxxxxxxxxxxxxxx> > --- > drivers/net/wireless/ath/ath5k/base.c | 2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > > diff --git a/drivers/net/wireless/ath/ath5k/base.c b/drivers/net/wireless/ath/ath5k/base.c > index 3f55e90..80ae38d 100644 > --- a/drivers/net/wireless/ath/ath5k/base.c > +++ b/drivers/net/wireless/ath/ath5k/base.c > @@ -2687,7 +2687,7 @@ ath5k_reset(struct ath5k_softc *sc, struct ieee80211_channel *chan) > sc->curchan = chan; > sc->curband = &sc->sbands[chan->band]; > } > - ret = ath5k_hw_reset(ah, sc->opmode, sc->curchan, true); > + ret = ath5k_hw_reset(ah, sc->opmode, sc->curchan, chan == NULL); Shouldn't this be chan != NULL? I'd assume that chan is NULL the first time and change_channel thus should be false to initialize all the registers. - Felix -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html