Commit 1bdf6c3b authored by Luis R. Rodriguez's avatar Luis R. Rodriguez Committed by John W. Linville

ath9k: update hw configuration for virtual wiphys

ath9k supports its own virtual wiphys. The hardware code
relies on the ieee80211_hw for the present interface but
with recent changes introduced the common->hw was never
updated and is required for virtual wiphys.

Cc: Jouni.Malinen <Jouni.Malinen@atheros.com>
Signed-off-by: default avatarLuis R. Rodriguez <lrodriguez@atheros.com>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent 194b7c13
...@@ -298,6 +298,7 @@ static void ath9k_wiphy_unpause_channel(struct ath_softc *sc) ...@@ -298,6 +298,7 @@ static void ath9k_wiphy_unpause_channel(struct ath_softc *sc)
void ath9k_wiphy_chan_work(struct work_struct *work) void ath9k_wiphy_chan_work(struct work_struct *work)
{ {
struct ath_softc *sc = container_of(work, struct ath_softc, chan_work); struct ath_softc *sc = container_of(work, struct ath_softc, chan_work);
struct ath_common *common = ath9k_hw_common(sc->sc_ah);
struct ath_wiphy *aphy = sc->next_wiphy; struct ath_wiphy *aphy = sc->next_wiphy;
if (aphy == NULL) if (aphy == NULL)
...@@ -313,6 +314,10 @@ void ath9k_wiphy_chan_work(struct work_struct *work) ...@@ -313,6 +314,10 @@ void ath9k_wiphy_chan_work(struct work_struct *work)
/* XXX: remove me eventually */ /* XXX: remove me eventually */
ath9k_update_ichannel(sc, aphy->hw, ath9k_update_ichannel(sc, aphy->hw,
&sc->sc_ah->channels[sc->chan_idx]); &sc->sc_ah->channels[sc->chan_idx]);
/* sync hw configuration for hw code */
common->hw = aphy->hw;
ath_update_chainmask(sc, sc->chan_is_ht); ath_update_chainmask(sc, sc->chan_is_ht);
if (ath_set_channel(sc, aphy->hw, if (ath_set_channel(sc, aphy->hw,
&sc->sc_ah->channels[sc->chan_idx]) < 0) { &sc->sc_ah->channels[sc->chan_idx]) < 0) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment