2019-04-02 10:31:58 +00:00
|
|
|
/* SPDX-License-Identifier: GPL-2.0 */
|
|
|
|
/*
|
2011-08-24 00:00:42 +00:00
|
|
|
* Copyright(c) 2008 - 2010 Realtek Corporation. All rights reserved.
|
|
|
|
*
|
2019-04-02 10:31:58 +00:00
|
|
|
* Contact Information: wlanfae <wlanfae@realtek.com>
|
|
|
|
*/
|
2009-08-04 22:57:55 +00:00
|
|
|
#ifndef _BATYPE_H_
|
|
|
|
#define _BATYPE_H_
|
|
|
|
|
|
|
|
#define BA_SETUP_TIMEOUT 200
|
|
|
|
|
|
|
|
#define BA_POLICY_DELAYED 0
|
|
|
|
#define BA_POLICY_IMMEDIATE 1
|
|
|
|
|
|
|
|
#define ADDBA_STATUS_SUCCESS 0
|
|
|
|
#define ADDBA_STATUS_REFUSED 37
|
|
|
|
#define ADDBA_STATUS_INVALID_PARAM 38
|
|
|
|
|
|
|
|
#define DELBA_REASON_END_BA 37
|
|
|
|
#define DELBA_REASON_UNKNOWN_BA 38
|
|
|
|
#define DELBA_REASON_TIMEOUT 39
|
2011-07-19 15:11:23 +00:00
|
|
|
union sequence_control {
|
2021-02-14 14:03:30 +00:00
|
|
|
u16 short_data;
|
2011-08-25 16:48:17 +00:00
|
|
|
struct {
|
2021-02-14 14:03:31 +00:00
|
|
|
u16 frag_num:4;
|
2021-02-14 14:03:32 +00:00
|
|
|
u16 seq_num:12;
|
2011-08-25 16:48:17 +00:00
|
|
|
} field;
|
2011-07-19 15:11:23 +00:00
|
|
|
};
|
2009-08-04 22:57:55 +00:00
|
|
|
|
2011-07-19 15:14:55 +00:00
|
|
|
union ba_param_set {
|
2021-02-19 10:12:01 +00:00
|
|
|
u8 char_data[2];
|
2021-02-19 10:12:02 +00:00
|
|
|
u16 short_data;
|
2009-08-04 22:57:55 +00:00
|
|
|
struct {
|
2021-02-19 10:12:05 +00:00
|
|
|
u16 amsdu_support:1;
|
2021-02-19 10:12:03 +00:00
|
|
|
u16 ba_policy:1;
|
2021-02-19 10:12:06 +00:00
|
|
|
u16 tid:4;
|
2021-02-19 10:12:04 +00:00
|
|
|
u16 buffer_size:10;
|
2009-08-04 22:57:55 +00:00
|
|
|
} field;
|
2011-07-19 15:14:55 +00:00
|
|
|
};
|
2009-08-04 22:57:55 +00:00
|
|
|
|
2011-07-19 15:17:01 +00:00
|
|
|
union delba_param_set {
|
2021-02-19 16:13:56 +00:00
|
|
|
u8 char_data[2];
|
2021-02-19 16:13:57 +00:00
|
|
|
u16 short_data;
|
2009-08-04 22:57:55 +00:00
|
|
|
struct {
|
2021-02-19 16:13:58 +00:00
|
|
|
u16 reserved:11;
|
2021-02-19 16:13:59 +00:00
|
|
|
u16 initiator:1;
|
2021-02-19 16:14:00 +00:00
|
|
|
u16 tid:4;
|
2009-08-04 22:57:55 +00:00
|
|
|
} field;
|
2011-07-19 15:17:01 +00:00
|
|
|
};
|
2009-08-04 22:57:55 +00:00
|
|
|
|
2011-07-19 02:03:22 +00:00
|
|
|
struct ba_record {
|
2021-02-19 23:11:28 +00:00
|
|
|
struct timer_list timer;
|
|
|
|
u8 b_valid;
|
|
|
|
u8 dialog_token;
|
2021-02-19 23:11:25 +00:00
|
|
|
union ba_param_set ba_param_set;
|
2021-02-19 23:11:28 +00:00
|
|
|
u16 ba_timeout_value;
|
2021-02-19 23:11:27 +00:00
|
|
|
union sequence_control ba_start_seq_ctrl;
|
2011-07-19 02:03:22 +00:00
|
|
|
};
|
2009-08-04 22:57:55 +00:00
|
|
|
|
2011-08-24 00:00:42 +00:00
|
|
|
#endif
|