diff options
author | Marc Yang <yangyang@marvell.com> | 2014-10-29 18:14:34 +0100 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2014-10-30 20:00:22 +0100 |
commit | 3a8fede115f12f7b90524d1ba4e709ce398ce8c6 (patch) | |
tree | 76101a7f096d9fdd1fff695011f29e8f6106f537 /drivers/net/wireless/mwifiex/11n_rxreorder.h | |
parent | ath9k: fix some debugfs output (diff) | |
download | linux-3a8fede115f12f7b90524d1ba4e709ce398ce8c6.tar.xz linux-3a8fede115f12f7b90524d1ba4e709ce398ce8c6.zip |
mwifiex: restart rxreorder timer correctly
During 11n RX reordering, if there is a hole in RX table,
driver will not send packets to kernel until the rxreorder
timer expires or the table is full.
However, currently driver always restarts rxreorder timer when
receiving a packet, which causes the timer hardly to expire.
So while connected with to 11n AP in a busy environment,
ping packets may get blocked for about 30 seconds.
This patch fixes this timer restarting by ensuring rxreorder timer
would only be restarted either timer is not set or start_win
has changed.
Signed-off-by: Chin-Ran Lo <crlo@marvell.com>
Signed-off-by: Plus Chen <pchen@marvell.com>
Signed-off-by: Marc Yang <yangyang@marvell.com>
Signed-off-by: Cathy Luo <cluo@marvell.com>
Signed-off-by: Avinash Patil <patila@marvell.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/mwifiex/11n_rxreorder.h')
-rw-r--r-- | drivers/net/wireless/mwifiex/11n_rxreorder.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/wireless/mwifiex/11n_rxreorder.h b/drivers/net/wireless/mwifiex/11n_rxreorder.h index 3a87bb0e3a62..63ecea89b4ab 100644 --- a/drivers/net/wireless/mwifiex/11n_rxreorder.h +++ b/drivers/net/wireless/mwifiex/11n_rxreorder.h @@ -21,6 +21,8 @@ #define _MWIFIEX_11N_RXREORDER_H_ #define MIN_FLUSH_TIMER_MS 50 +#define MIN_FLUSH_TIMER_15_MS 15 +#define MWIFIEX_BA_WIN_SIZE_32 32 #define PKT_TYPE_BAR 0xE7 #define MAX_TID_VALUE (2 << 11) |