Merge tag 's390-5.11-2' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux
[linux-2.6-microblaze.git] / drivers / staging / rtl8192e / rtl819x_BA.h
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  * Copyright(c) 2008 - 2010 Realtek Corporation. All rights reserved.
4  *
5  * Contact Information: wlanfae <wlanfae@realtek.com>
6  */
7 #ifndef _BATYPE_H_
8 #define _BATYPE_H_
9
10 #define BA_SETUP_TIMEOUT        200
11
12 #define BA_POLICY_DELAYED               0
13 #define BA_POLICY_IMMEDIATE     1
14
15 #define ADDBA_STATUS_SUCCESS                    0
16 #define ADDBA_STATUS_REFUSED            37
17 #define ADDBA_STATUS_INVALID_PARAM      38
18
19 #define DELBA_REASON_END_BA                     37
20 #define DELBA_REASON_UNKNOWN_BA 38
21 #define DELBA_REASON_TIMEOUT                    39
22 union sequence_control {
23         u16 ShortData;
24         struct {
25                 u16     FragNum:4;
26                 u16     SeqNum:12;
27         } field;
28 };
29
30 union ba_param_set {
31         u8 charData[2];
32         u16 shortData;
33         struct {
34                 u16 AMSDU_Support:1;
35                 u16 BAPolicy:1;
36                 u16 TID:4;
37                 u16 BufferSize:10;
38         } field;
39 };
40
41 union delba_param_set {
42         u8 charData[2];
43         u16 shortData;
44         struct {
45                 u16 Reserved:11;
46                 u16 Initiator:1;
47                 u16 TID:4;
48         } field;
49 };
50
51 struct ba_record {
52         struct timer_list               Timer;
53         u8                              bValid;
54         u8                              DialogToken;
55         union ba_param_set BaParamSet;
56         u16                             BaTimeoutValue;
57         union sequence_control BaStartSeqCtrl;
58 };
59
60 #endif