summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/ath5k/base.h
diff options
context:
space:
mode:
authorBruno Randolf2008-01-19 10:18:21 +0100
committerDavid S. Miller2008-01-29 00:10:52 +0100
commit036cd1ec038f7e3a36740beaf2aa4a0d2e8ed2c1 (patch)
tree9a39d8523018a07d25ed672390d068402f52c65c /drivers/net/wireless/ath5k/base.h
parentath5k: better beacon timer calculation (diff)
downloadkernel-qcow2-linux-036cd1ec038f7e3a36740beaf2aa4a0d2e8ed2c1.tar.gz
kernel-qcow2-linux-036cd1ec038f7e3a36740beaf2aa4a0d2e8ed2c1.tar.xz
kernel-qcow2-linux-036cd1ec038f7e3a36740beaf2aa4a0d2e8ed2c1.zip
ath5k: use SWBA to detect IBSS HW merges
use SWBA (software beacon alert) interrupts to keep track of the next beacon time und check if a HW merge (automatic TSF update) has happened on every received beacon with the same BSSID. this is necessary because the atheros hardware will silently update the local TSF in IBSS mode, but not its beacon timers. if the TSF is ahead of the beacon timers no beacons are sent until the timers wrap around (typically after about 1 minute). this solution is not very nice, since we have to look into every beacon, but there is apparently no other way to detect HW merges. drivers/net/wireless/ath5k/base.c: Changes-licensed-under: 3-Clause-BSD drivers/net/wireless/ath5k/base.h: Changes-licensed-under: 3-Clause-BSD Signed-off-by: Bruno Randolf <bruno@thinktube.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/ath5k/base.h')
-rw-r--r--drivers/net/wireless/ath5k/base.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/wireless/ath5k/base.h b/drivers/net/wireless/ath5k/base.h
index 20c946926090..8287ae787f12 100644
--- a/drivers/net/wireless/ath5k/base.h
+++ b/drivers/net/wireless/ath5k/base.h
@@ -166,6 +166,7 @@ struct ath5k_softc {
bmisscount, /* missed beacon transmits */
bintval, /* beacon interval in TU */
bsent;
+ unsigned int nexttbtt; /* next beacon time in TU */
struct timer_list calib_tim; /* calibration timer */
};