> 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@kernel.org
> Reported-by: Forrest Zhang <forrest@hifulltech.com>
> Signed-off-by: Bob Copeland <me@bobcopeland.com>
> ---
> 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);