Merge tag 'staging-3.7-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh...
[GitHub/mt8127/android_kernel_alcatel_ttab.git] / drivers / staging / rtl8192e / rtl819x_TS.h
CommitLineData
94a79942
LF
1/******************************************************************************
2 * Copyright(c) 2008 - 2010 Realtek Corporation. All rights reserved.
3 *
4 * This program is distributed in the hope that it will be useful, but WITHOUT
5 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
6 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
7 * more details.
8 *
9 * You should have received a copy of the GNU General Public License along with
10 * this program; if not, write to the Free Software Foundation, Inc.,
11 * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA
12 *
13 * The full GNU General Public License is included in this distribution in the
14 * file called LICENSE.
15 *
16 * Contact Information:
17 * wlanfae <wlanfae@realtek.com>
18******************************************************************************/
ecdfa446
GKH
19#ifndef _TSTYPE_H_
20#define _TSTYPE_H_
21#include "rtl819x_Qos.h"
94a79942 22#define TS_SETUP_TIMEOUT 60
ecdfa446
GKH
23#define TS_INACT_TIMEOUT 60
24#define TS_ADDBA_DELAY 60
25
26#define TOTAL_TS_NUM 16
27#define TCLAS_NUM 4
28
39b2a4ae 29enum tr_select {
ecdfa446
GKH
30 TX_DIR = 0,
31 RX_DIR = 1,
39b2a4ae 32};
ecdfa446 33
74724de1 34struct ts_common_info {
ecdfa446
GKH
35 struct list_head List;
36 struct timer_list SetupTimer;
37 struct timer_list InactTimer;
38 u8 Addr[6];
ed306e48 39 union tspec_body TSpec;
626f951d 40 union qos_tclas TClass[TCLAS_NUM];
ecdfa446
GKH
41 u8 TClasProc;
42 u8 TClasNum;
74724de1 43};
ecdfa446 44
60554f2b 45struct tx_ts_record {
74724de1 46 struct ts_common_info TsCommonInfo;
ecdfa446 47 u16 TxCurSeq;
8cf33316
LF
48 struct ba_record TxPendingBARecord;
49 struct ba_record TxAdmittedBARecord;
ecdfa446
GKH
50 u8 bAddBaReqInProgress;
51 u8 bAddBaReqDelayed;
52 u8 bUsingBa;
94a79942 53 u8 bDisable_AddBa;
ecdfa446
GKH
54 struct timer_list TsAddBaTimer;
55 u8 num;
60554f2b 56};
ecdfa446 57
2c47ae28 58struct rx_ts_record {
74724de1 59 struct ts_common_info TsCommonInfo;
ecdfa446
GKH
60 u16 RxIndicateSeq;
61 u16 RxTimeoutIndicateSeq;
62 struct list_head RxPendingPktList;
63 struct timer_list RxPktPendingTimer;
8cf33316 64 struct ba_record RxAdmittedBARecord;
ecdfa446
GKH
65 u16 RxLastSeqNum;
66 u8 RxLastFragNum;
67 u8 num;
2c47ae28 68};
ecdfa446 69
f88ec6cb
LF
70void _setup_timer(struct timer_list *, void *, unsigned long);
71
ecdfa446
GKH
72
73#endif