• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 ******************************************************************************/
19 #ifndef _TSTYPE_H_
20 #define _TSTYPE_H_
21 #include "rtl819x_Qos.h"
22 #define TS_SETUP_TIMEOUT	60
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 
29 enum tr_select {
30 	TX_DIR = 0,
31 	RX_DIR = 1,
32 };
33 
34 struct ts_common_info {
35 	struct list_head		List;
36 	struct timer_list		SetupTimer;
37 	struct timer_list		InactTimer;
38 	u8				Addr[6];
39 	union tspec_body TSpec;
40 	union qos_tclas TClass[TCLAS_NUM];
41 	u8				TClasProc;
42 	u8				TClasNum;
43 };
44 
45 struct tx_ts_record {
46 	struct ts_common_info TsCommonInfo;
47 	u16				TxCurSeq;
48 	struct ba_record TxPendingBARecord;
49 	struct ba_record TxAdmittedBARecord;
50 	u8				bAddBaReqInProgress;
51 	u8				bAddBaReqDelayed;
52 	u8				bUsingBa;
53 	u8				bDisable_AddBa;
54 	struct timer_list		TsAddBaTimer;
55 	u8				num;
56 };
57 
58 struct rx_ts_record {
59 	struct ts_common_info TsCommonInfo;
60 	u16				RxIndicateSeq;
61 	u16				RxTimeoutIndicateSeq;
62 	struct list_head		RxPendingPktList;
63 	struct timer_list		RxPktPendingTimer;
64 	struct ba_record RxAdmittedBARecord;
65 	u16				RxLastSeqNum;
66 	u8				RxLastFragNum;
67 	u8				num;
68 };
69 
70 void _setup_timer(struct timer_list *, void *, unsigned long);
71 
72 
73 #endif
74