ath9k_hw: Abort transmission for sleeping station
authorRajkumar Manoharan <rmanohar@qti.qualcomm.com>
Mon, 19 May 2014 06:14:37 +0000 (11:44 +0530)
committerJohn W. Linville <linville@tuxdriver.com>
Mon, 19 May 2014 20:42:15 +0000 (16:42 -0400)
commit08232bf94949eabaabfcc2987025aed378aa13ae
tree02620e03af5ce05e23dc4d319c26d62f93a42baa
parent1db10595c6c7274930de3d2ed525e0f6bd817b9d
ath9k_hw: Abort transmission for sleeping station

The data transmission to the power save station should be aborted
immediately, whenever the station informs sleep state. Right now
the frames queued into into hardware are being transmitted until
the hardware detects the power save station based excessive retries
of the data frames due to unacknowlegdement. Then remaining frames
are returned with filetered status and might be retried later by
driver or mac80211.

Per WFA certification testing, AP should not send out more than two
frames after processing nullfunc with PM bit set from associated
station. To speed up tx filtering, the pending frames in hardware
queues for given station will be aborted immediately via tx filter
registers. This transmit filters can be ignored if the descriptor
is having invalid destination index or clear destination mask set.

Signed-off-by: Rajkumar Manoharan <rmanohar@qti.qualcomm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/ath/ath9k/mac.c
drivers/net/wireless/ath/ath9k/mac.h
drivers/net/wireless/ath/ath9k/main.c
drivers/net/wireless/ath/ath9k/reg.h