These changes are the raw update to linux-4.4.6-rt14. Kernel sources
[kvmfornfv.git] / kernel / drivers / staging / rtl8192e / rtl819x_TS.h
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  * The full GNU General Public License is included in this distribution in the
10  * file called LICENSE.
11  *
12  * Contact Information:
13  * wlanfae <wlanfae@realtek.com>
14 ******************************************************************************/
15 #ifndef _TSTYPE_H_
16 #define _TSTYPE_H_
17 #include "rtl819x_Qos.h"
18 #define TS_ADDBA_DELAY          60
19
20 #define TOTAL_TS_NUM            16
21 #define TCLAS_NUM               4
22
23 enum tr_select {
24         TX_DIR = 0,
25         RX_DIR = 1,
26 };
27
28 struct ts_common_info {
29         struct list_head                List;
30         struct timer_list               SetupTimer;
31         struct timer_list               InactTimer;
32         u8                              Addr[ETH_ALEN];
33         union tspec_body TSpec;
34         union qos_tclas TClass[TCLAS_NUM];
35         u8                              TClasProc;
36         u8                              TClasNum;
37 };
38
39 struct tx_ts_record {
40         struct ts_common_info TsCommonInfo;
41         u16                             TxCurSeq;
42         struct ba_record TxPendingBARecord;
43         struct ba_record TxAdmittedBARecord;
44         u8                              bAddBaReqInProgress;
45         u8                              bAddBaReqDelayed;
46         u8                              bUsingBa;
47         u8                              bDisable_AddBa;
48         struct timer_list               TsAddBaTimer;
49         u8                              num;
50 };
51
52 struct rx_ts_record {
53         struct ts_common_info TsCommonInfo;
54         u16                             RxIndicateSeq;
55         u16                             RxTimeoutIndicateSeq;
56         struct list_head                RxPendingPktList;
57         struct timer_list               RxPktPendingTimer;
58         struct ba_record RxAdmittedBARecord;
59         u16                             RxLastSeqNum;
60         u8                              RxLastFragNum;
61         u8                              num;
62 };
63
64
65
66 #endif