From e6a7fa65fe71e44fae085fe4c2580bda70d62cfe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Colin=20G=C3=BCnther?= Date: Sun, 29 Nov 2009 12:40:32 +0000 Subject: [PATCH] Bringing the source up to par with FreeBSD RELEASE_8_0_0. This one slipped somehow through the updating process. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34347 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- .../drivers/network/wlan/atheros/dev/ath/if_ath.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/add-ons/kernel/drivers/network/wlan/atheros/dev/ath/if_ath.c b/src/add-ons/kernel/drivers/network/wlan/atheros/dev/ath/if_ath.c index 7673334641..530af28daf 100644 --- a/src/add-ons/kernel/drivers/network/wlan/atheros/dev/ath/if_ath.c +++ b/src/add-ons/kernel/drivers/network/wlan/atheros/dev/ath/if_ath.c @@ -1238,7 +1238,16 @@ ath_resume(struct ath_softc *sc) if (sc->sc_resume_up) { if (ic->ic_opmode == IEEE80211_M_STA) { ath_init(sc); - ieee80211_beacon_miss(ic); + /* + * 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; } else ieee80211_resume_all(ic); }