android_kernel_xiaomi_sdm845/drivers/net/wireless/ath5k
Bruno Randolf 6ba81c2c98 ath5k: work around wrong beacon rx timestamp in IBSS mode
atheros hardware has a problem with the rx timestamp of some IBSS beacons when
they caused a TSF update (they have the same BSSID).

the rx timestamp is wrong especially if the beacon frames get bigger than 78
byte (at least on AR5213 and AR5414 hardware). in that case ath5k_extend_tsf()
will assume a rs_tstamp overflow and give us a timestamp too far in the past
which will cause mac80211 to merge IBSS on every beacon (which is not necessary
since the BSSID already matches). but in this case we know that the HW must
have synced to the beacons TSF and the rx timestamp must be later than that so
we can adjust mactime accordingly.

also rename the function to ath5k_check_ibss_tsf() and change comments, since
"hw merge" is better described as a TSF update.

drivers/net/wireless/ath5k/base.c:      Changes-licensed-under: 3-Clause-BSD

Signed-off-by: Bruno Randolf <bruno@thinktube.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2008-03-07 16:07:50 -05:00
..
ath5k.h ath5k: move rx and tx status structures out of hardware descriptor 2008-03-07 16:07:49 -05:00
base.c ath5k: work around wrong beacon rx timestamp in IBSS mode 2008-03-07 16:07:50 -05:00
base.h ath5k: Port debug.c over to the new band API and enable as build option 2008-02-29 15:19:37 -05:00
debug.c ath5k: move rx and tx status structures out of hardware descriptor 2008-03-07 16:07:49 -05:00
debug.h ath5k: move rx and tx status structures out of hardware descriptor 2008-03-07 16:07:49 -05:00
hw.c ath5k: move rx and tx status structures out of hardware descriptor 2008-03-07 16:07:49 -05:00
hw.h ath5k: struct ath5k_desc cleanups 2008-03-07 16:07:49 -05:00
initvals.c ath5k: Add RF2413 initial settings 2008-03-07 16:02:57 -05:00
Kconfig ath5k: Port debug.c over to the new band API and enable as build option 2008-02-29 15:19:37 -05:00
Makefile ath5k: Port debug.c over to the new band API and enable as build option 2008-02-29 15:19:37 -05:00
phy.c ath5k: Remove RF5413 from rf gain optimization functions 2008-03-07 16:02:58 -05:00
reg.h ath5k: Identify RF2413 and deal with PHY_SPENDING 2008-03-07 16:02:58 -05:00
regdom.c [PATCH] Net: add ath5k wireless driver 2008-01-28 15:09:35 -08:00
regdom.h [PATCH] Net: add ath5k wireless driver 2008-01-28 15:09:35 -08:00