summaryrefslogtreecommitdiffstats
path: root/sys/dev
diff options
context:
space:
mode:
authorsam <sam@FreeBSD.org>2009-06-02 21:11:26 +0000
committersam <sam@FreeBSD.org>2009-06-02 21:11:26 +0000
commitca4361b1481feda5e228739b5e207d56864d0a81 (patch)
treeb8270622e959cdc79d3459d3d39a92ee95481512 /sys/dev
parent8eb6b295587a46f778ced1f98b741a80e99a5124 (diff)
downloadFreeBSD-src-ca4361b1481feda5e228739b5e207d56864d0a81.zip
FreeBSD-src-ca4361b1481feda5e228739b5e207d56864d0a81.tar.gz
restart tdma beacons after vap destroy
Diffstat (limited to 'sys/dev')
-rw-r--r--sys/dev/ath/if_ath.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/sys/dev/ath/if_ath.c b/sys/dev/ath/if_ath.c
index 05930e3..5a85427 100644
--- a/sys/dev/ath/if_ath.c
+++ b/sys/dev/ath/if_ath.c
@@ -1153,8 +1153,14 @@ ath_vap_delete(struct ieee80211vap *vap)
if (ath_startrecv(sc) != 0)
if_printf(ifp, "%s: unable to restart recv logic\n",
__func__);
- if (sc->sc_beacons)
- ath_beacon_config(sc, NULL);
+ if (sc->sc_beacons) { /* restart beacons */
+#ifdef IEEE80211_SUPPORT_TDMA
+ if (sc->sc_tdma)
+ ath_tdma_config(sc, NULL);
+ else
+#endif
+ ath_beacon_config(sc, NULL);
+ }
ath_hal_intrset(ah, sc->sc_imask);
}
}
@@ -1652,13 +1658,13 @@ ath_reset(struct ifnet *ifp)
* might change as a result.
*/
ath_chan_change(sc, ic->ic_curchan);
- if (sc->sc_beacons) {
+ if (sc->sc_beacons) { /* restart beacons */
#ifdef IEEE80211_SUPPORT_TDMA
if (sc->sc_tdma)
ath_tdma_config(sc, NULL);
else
#endif
- ath_beacon_config(sc, NULL); /* restart beacons */
+ ath_beacon_config(sc, NULL);
}
ath_hal_intrset(ah, sc->sc_imask);
OpenPOWER on IntegriCloud