rt2x00: Fix beacon skew in rt2800pci
authorHelmut Schaa <helmut.schaa@googlemail.com>
Fri, 9 Mar 2012 14:31:50 +0000 (15:31 +0100)
committerJohn W. Linville <linville@tuxdriver.com>
Mon, 12 Mar 2012 18:21:49 +0000 (14:21 -0400)
commit290d60891eb659e52204ec209e08cc0cabc5b99f
treefcca74bae4b2431424bcb49f5d57bf01fa1bad13
parente9219779f943dfa1010ccbb63de14d49a47c43ee
rt2x00: Fix beacon skew in rt2800pci

rt2800pci is suffering from beacon skew in AP mode. Some powersaving
clients (like VOIP phones) are getting into trouble after some time
when the beacon skew is getting too big.

The ralink legacy drivers contain a function that indicates that the
beacon timer is off by 1us per tbtt. And this function works around
that by reducing the beacon interval for every 64th beacon transmission
by 64us (the smallest possible value). Do the same in rt2800pci.

This allows proper powersaving when rt2800pci is used in AP mode.

Signed-off-by: Helmut Schaa <helmut.schaa@googlemail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/rt2x00/rt2800.h
drivers/net/wireless/rt2x00/rt2800pci.c