summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sys/dev/ath/if_ath.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/sys/dev/ath/if_ath.c b/sys/dev/ath/if_ath.c
index 6140206..6a551f0 100644
--- a/sys/dev/ath/if_ath.c
+++ b/sys/dev/ath/if_ath.c
@@ -1310,8 +1310,13 @@ ath_suspend(struct ath_softc *sc)
sc->sc_resume_up = (ifp->if_flags & IFF_UP) != 0;
if (ic->ic_opmode == IEEE80211_M_STA)
+ /*
+ * This has been disabled - see PR kern/169084.
+ */
+#if 0
ath_stop(ifp);
else
+#endif
ieee80211_suspend_all(ic);
/*
* NB: don't worry about putting the chip in low power
@@ -1379,6 +1384,15 @@ ath_resume(struct ath_softc *sc)
ath_hal_setledstate(ah, HAL_LED_INIT);
if (sc->sc_resume_up) {
+ /*
+ * This particular feature doesn't work at the present,
+ * at least on the 802.11n chips. It's quite possible
+ * that the STA Beacon timers aren't being configured
+ * properly.
+ *
+ * See PR kern/169084.
+ */
+#if 0
if (ic->ic_opmode == IEEE80211_M_STA) {
ath_init(sc);
ath_hal_setledstate(ah, HAL_LED_RUN);
@@ -1392,7 +1406,9 @@ ath_resume(struct ath_softc *sc)
*/
ath_beacon_config(sc, NULL);
sc->sc_syncbeacon = 1;
+ ieee80211_resume_all(ic);
} else
+#endif
ieee80211_resume_all(ic);
}
OpenPOWER on IntegriCloud