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 short_data; |
24 | struct { |
25 | u16 frag_num:4; |
26 | u16 seq_num:12; |
27 | } field; |
28 | }; |
29 | |
30 | union ba_param_set { |
31 | u8 char_data[2]; |
32 | u16 short_data; |
33 | struct { |
34 | u16 amsdu_support:1; |
35 | u16 ba_policy:1; |
36 | u16 tid:4; |
37 | u16 buffer_size:10; |
38 | } field; |
39 | }; |
40 | |
41 | union delba_param_set { |
42 | u8 char_data[2]; |
43 | u16 short_data; |
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 b_valid; |
54 | u8 dialog_token; |
55 | union ba_param_set ba_param_set; |
56 | u16 ba_timeout_value; |
57 | union sequence_control ba_start_seq_ctrl; |
58 | }; |
59 | |
60 | #endif |
61 | |