summaryrefslogtreecommitdiffstats
path: root/sys/dev/ath/if_ath.c
diff options
context:
space:
mode:
authoradrian <adrian@FreeBSD.org>2012-06-17 03:08:33 +0000
committeradrian <adrian@FreeBSD.org>2012-06-17 03:08:33 +0000
commit656256d25bcd7ab2946b48ce43b71ad88d63ab94 (patch)
tree29dfed0f110f7436b802f37ee5c1e99b771be5a8 /sys/dev/ath/if_ath.c
parenta16d44b93863114bc38e7e42833f1a662d645e08 (diff)
downloadFreeBSD-src-656256d25bcd7ab2946b48ce43b71ad88d63ab94.zip
FreeBSD-src-656256d25bcd7ab2946b48ce43b71ad88d63ab94.tar.gz
After some discussion with bschmidt@, it's likely better to just go
through ieee80211_suspend_all() and ieee80211_resume_all(). All the other wireless drivers are doing that particular dance. PR: kern/169084
Diffstat (limited to 'sys/dev/ath/if_ath.c')
-rw-r--r--sys/dev/ath/if_ath.c41
1 files changed, 4 insertions, 37 deletions
diff --git a/sys/dev/ath/if_ath.c b/sys/dev/ath/if_ath.c
index 6a551f0..5d7396c 100644
--- a/sys/dev/ath/if_ath.c
+++ b/sys/dev/ath/if_ath.c
@@ -1309,15 +1309,8 @@ ath_suspend(struct ath_softc *sc)
__func__, ifp->if_flags);
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);
+
+ ieee80211_suspend_all(ic);
/*
* NB: don't worry about putting the chip in low power
* mode; pci will power off our socket on suspend and
@@ -1383,34 +1376,8 @@ ath_resume(struct ath_softc *sc)
ath_led_config(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);
- /*
- * Program the beacon registers using the last rx'd
- * beacon frame and enable sync on the next beacon
- * we see. This should handle the case where we
- * wakeup and find the same AP and also the case where
- * we wakeup and need to roam. For the latter we
- * should get bmiss events that trigger a roam.
- */
- ath_beacon_config(sc, NULL);
- sc->sc_syncbeacon = 1;
- ieee80211_resume_all(ic);
- } else
-#endif
- ieee80211_resume_all(ic);
- }
+ if (sc->sc_resume_up)
+ ieee80211_resume_all(ic);
/* XXX beacons ? */
}
OpenPOWER on IntegriCloud