diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2018-08-18 11:00:00 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2018-08-18 11:00:00 -0700 |
commit | 2475c515d4031c494ff452508a8bf8c281ec6e56 (patch) | |
tree | 0303935bbd919ec522bf0fe02066f09b391d2b57 /drivers/staging/rtl8192u/ieee80211/rtl819x_TS.h | |
parent | 336722eb9d9732c5a497fb6299bf38cde413592b (diff) | |
parent | e4f6a44c4aeca9eda153302abb0c14d053914f72 (diff) |
Merge tag 'staging-4.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging
Pull staging and IIO updates from Greg KH:
"Here are the big staging/iio patches for 4.19-rc1.
Lots of churn here, with tons of cleanups happening in staging
drivers, a removal of an old crypto driver that no one was using
(skein), and the addition of some new IIO drivers. Also added was a
"gasket" driver from Google that needs loads of work and the erofs
filesystem.
Even with adding all of the new drivers and a new filesystem, we are
only adding about 1000 lines overall to the kernel linecount, which
shows just how much cleanup happened, and how big the unused crypto
driver was.
All of these have been in the linux-next tree for a while now with no
reported issues"
* tag 'staging-4.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging: (903 commits)
staging:rtl8192u: Remove unused macro definitions - Style
staging:rtl8192u: Add spaces around '+' operator - Style
staging:rtl8192u: Remove stale comment - Style
staging: rtl8188eu: remove unused mp_custom_oid.h
staging: fbtft: Add spaces around / - Style
staging: fbtft: Erases some repetitive usage of function name - Style
staging: fbtft: Adjust some empty-line problems - Style
staging: fbtft: Removes one nesting level to help readability - Style
staging: fbtft: Changes gamma table to define.
staging: fbtft: A bit more information on dev_err.
staging: fbtft: Fixes some alignment issues - Style
staging: fbtft: Puts macro arguments in parenthesis to avoid precedence issues - Style
staging: rtl8188eu: remove unused array dB_Invert_Table
staging: rtl8188eu: remove whitespace, add missing blank line
staging: rtl8188eu: use is_multicast_ether_addr in rtw_sta_mgt.c
staging: rtl8188eu: remove whitespace - style
staging: rtl8188eu: cleanup block comment - style
staging: rtl8188eu: use is_multicast_ether_addr in rtl8188eu_xmit.c
staging: rtl8188eu: use is_multicast_ether_addr in recv_linux.c
staging: rtlwifi: refactor rtl_get_tcb_desc
...
Diffstat (limited to 'drivers/staging/rtl8192u/ieee80211/rtl819x_TS.h')
-rw-r--r-- | drivers/staging/rtl8192u/ieee80211/rtl819x_TS.h | 126 |
1 files changed, 86 insertions, 40 deletions
diff --git a/drivers/staging/rtl8192u/ieee80211/rtl819x_TS.h b/drivers/staging/rtl8192u/ieee80211/rtl819x_TS.h index 3a0ff08c687a..924d4b373099 100644 --- a/drivers/staging/rtl8192u/ieee80211/rtl819x_TS.h +++ b/drivers/staging/rtl8192u/ieee80211/rtl819x_TS.h @@ -2,55 +2,101 @@ #ifndef _TSTYPE_H_ #define _TSTYPE_H_ #include "rtl819x_Qos.h" -#define TS_SETUP_TIMEOUT 60 /* In millisecond */ -#define TS_INACT_TIMEOUT 60 + #define TS_ADDBA_DELAY 60 #define TOTAL_TS_NUM 16 #define TCLAS_NUM 4 /* This define the Tx/Rx directions */ -typedef enum _TR_SELECT { +enum tr_select { TX_DIR = 0, RX_DIR = 1, -} TR_SELECT, *PTR_SELECT; - -typedef struct _TS_COMMON_INFO { - struct list_head List; - struct timer_list SetupTimer; - struct timer_list InactTimer; - u8 Addr[6]; - TSPEC_BODY TSpec; - QOS_TCLAS TClass[TCLAS_NUM]; - u8 TClasProc; - u8 TClasNum; -} TS_COMMON_INFO, *PTS_COMMON_INFO; - -typedef struct _TX_TS_RECORD { - TS_COMMON_INFO TsCommonInfo; - u16 TxCurSeq; - BA_RECORD TxPendingBARecord; /* For BA Originator */ - BA_RECORD TxAdmittedBARecord; /* For BA Originator */ -/* QOS_DL_RECORD DLRecord; */ - u8 bAddBaReqInProgress; - u8 bAddBaReqDelayed; - u8 bUsingBa; - struct timer_list TsAddBaTimer; - u8 num; -} TX_TS_RECORD, *PTX_TS_RECORD; - -typedef struct _RX_TS_RECORD { - TS_COMMON_INFO TsCommonInfo; - u16 RxIndicateSeq; - u16 RxTimeoutIndicateSeq; - struct list_head RxPendingPktList; - struct timer_list RxPktPendingTimer; - BA_RECORD RxAdmittedBARecord; /* For BA Recipient */ - u16 RxLastSeqNum; - u8 RxLastFragNum; +}; + +union qos_tclas { + struct type_general { + u8 priority; + u8 classifier_type; + u8 mask; + } type_general; + + struct type0_eth { + u8 priority; + u8 classifier_type; + u8 mask; + u8 src_addr[6]; + u8 dst_addr[6]; + u16 type; + } type0_eth; + + struct type1_ipv4 { + u8 priority; + u8 classifier_type; + u8 mask; + u8 version; + u8 src_ip[4]; + u8 dst_ip[4]; + u16 src_port; + u16 dst_port; + u8 dscp; + u8 protocol; + u8 reserved; + } type1_ipv4; + + struct type1_ipv6 { + u8 priority; + u8 classifier_type; + u8 mask; + u8 version; + u8 src_ip[16]; + u8 dst_ip[16]; + u16 src_port; + u16 dst_port; + u8 flow_label[3]; + } type1_ipv6; + + struct type2_8021q { + u8 priority; + u8 classifier_type; + u8 mask; + u16 tag_type; + } type2_8021q; +}; + +struct ts_common_info { + struct list_head list; + struct timer_list setup_timer; + struct timer_list inact_timer; + u8 addr[6]; + struct tspec_body t_spec; + union qos_tclas t_class[TCLAS_NUM]; + u8 t_clas_proc; + u8 t_clas_num; +}; + +struct tx_ts_record { + struct ts_common_info ts_common_info; + u16 tx_cur_seq; + BA_RECORD tx_pending_ba_record; + BA_RECORD tx_admitted_ba_record; + u8 add_ba_req_in_progress; + u8 add_ba_req_delayed; + u8 using_ba; + struct timer_list ts_add_ba_timer; u8 num; -/* QOS_DL_RECORD DLRecord; */ -} RX_TS_RECORD, *PRX_TS_RECORD; +}; +struct rx_ts_record { + struct ts_common_info ts_common_info; + u16 rx_indicate_seq; + u16 rx_timeout_indicate_seq; + struct list_head rx_pending_pkt_list; + struct timer_list rx_pkt_pending_timer; + BA_RECORD rx_admitted_ba_record; + u16 rx_last_seq_num; + u8 rx_last_frag_num; + u8 num; +}; #endif |