diff options
author | Dmitry Tarnyagin <dmitry.tarnyagin@stericsson.com> | 2012-02-29 15:15:23 +0100 |
---|---|---|
committer | Philippe Langlais <philippe.langlais@linaro.org> | 2012-03-19 09:02:09 +0100 |
commit | 85c901a0913114a1812337250ebf6047f60522cf (patch) | |
tree | 15f9ffbf9ca6194dc4543c9216508485f4cd4c3d /drivers/staging/cw1200/cw1200.h | |
parent | 5acc59be20870343bf45156d99b89a0189feca6d (diff) |
cw1200: Dynamic BA.
Patch implements enabling of block ACK only if valuable
data traffic is detected on the interface. BA is disabled
for small packets (in assumption of voice/video) and
low-thoughput data traffic.
ST-Ericsson ID: 405634, 407777
ST-Ericsson FOSS-OUT ID: NA
Change-Id: Ic30b65a5b8ea83fe6c865866209a786f26d00c18
Signed-off-by: Dmitry Tarnyagin <dmitry.tarnyagin@stericsson.com>
Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/41129
Reviewed-by: Bartosz MARKOWSKI <bartosz.markowski@tieto.com>
Tested-by: Bartosz MARKOWSKI <bartosz.markowski@tieto.com>
Diffstat (limited to 'drivers/staging/cw1200/cw1200.h')
-rw-r--r-- | drivers/staging/cw1200/cw1200.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/drivers/staging/cw1200/cw1200.h b/drivers/staging/cw1200/cw1200.h index ff69098c8a7..3ae1b915566 100644 --- a/drivers/staging/cw1200/cw1200.h +++ b/drivers/staging/cw1200/cw1200.h @@ -52,6 +52,11 @@ #define CW1200_MAX_TID (8) +#define CW1200_BLOCK_ACK_CNT (30) +#define CW1200_BLOCK_ACK_THLD (800) +#define CW1200_BLOCK_ACK_HIST (3) +#define CW1200_BLOCK_ACK_INTERVAL (1 * HZ / CW1200_BLOCK_ACK_HIST) + /* Please keep order */ enum cw1200_join_status { CW1200_JOIN_STATUS_PASSIVE = 0, @@ -156,6 +161,13 @@ struct cw1200_common { bool disable_beacon_filter; struct work_struct update_filtering_work; u8 ba_tid_mask; + int ba_acc; + int ba_cnt; + int ba_hist; + struct timer_list ba_timer; + spinlock_t ba_lock; + bool ba_ena; + struct work_struct ba_work; struct cw1200_pm_state pm_state; struct wsm_p2p_ps_modeinfo p2p_ps_modeinfo; struct wsm_uapsd_info uapsd_info; |