7#ifndef __HMAC_TX_DATA_H__
8#define __HMAC_TX_DATA_H__
22#define THIS_FILE_ID OAM_FILE_ID_HMAC_TX_DATA_H
27#define WLAN_BA_CNT_INTERVAL 100
103 for (netbuf_index = 0; netbuf_index < netbuf_num; netbuf_index++) {
104 next_buf = oal_netbuf_list_next(next_buf);
127 for (netbuf_index = 0; netbuf_index < netbuf_num; netbuf_index++) {
128 buf_next = oal_netbuf_list_next(buf_tmp);
129 oal_netbuf_add_to_list_tail(buf_tmp, head);
148 to_ds = mac_hdr_get_to_ds((
osal_u8 *)hdr);
149 from_ds = mac_hdr_get_from_ds((
osal_u8 *)hdr);
150 if ((to_ds == 1) && (from_ds == 0)) {
154 }
else if ((to_ds == 0) && (from_ds == 0)) {
158 }
else if ((to_ds == 1) && (from_ds == 1)) {
213 hdr_addr4->qos_frame_addr4.qc_eosp = 0;
216 hdr_addr4->qos_frame_addr4.qos_control.qc_txop_limit = 0;
291 action_args.
arg1 = tidno;
#define mac_get_cb_is_4address(_pst_tx_ctrl)
Definition dmac_ext_if_hcm.h:101
#define mac_get_cb_is_amsdu(_pst_tx_ctrl)
Definition dmac_ext_if_hcm.h:102
#define mac_get_cb_wme_tid_type(_pst_tx_ctrl)
Definition dmac_ext_if_hcm.h:140
#define mac_get_cb_ack_polacy(_pst_tx_ctrl)
Definition dmac_ext_if_hcm.h:136
#define mac_get_cb_frame_header_length(_pst_tx_ctrl)
Definition dmac_ext_if_hcm.h:135
#define OAL_INLINE
Definition driver_soc_common.h:47
osal_u32 hmac_mgmt_tx_action_etc(hmac_vap_stru *hmac_vap, hmac_user_stru *hmac_user, mac_action_mgmt_args_stru *action_args)
OAL_STATIC OAL_INLINE osal_void hmac_tx_get_addr(mac_ieee80211_qos_htc_frame_addr4_stru *hdr, osal_u8 *saddr, osal_u8 *daddr)
Definition hmac_tx_data.h:141
WIFI_HMAC_TCM_TEXT OAL_STATIC OAL_INLINE oal_bool_enum_uint8 hmac_tid_ba_is_setup(const hmac_user_stru *hmac_user, osal_u8 tidno)
Definition hmac_tx_data.h:250
OAL_STATIC OAL_INLINE osal_void hmac_tx_set_cb_header_len(osal_u32 qos, mac_tx_ctl_stru *tx_ctl)
Definition hmac_tx_data.h:169
osal_void hmac_tx_set_vip_tid(mac_tx_ctl_stru *tx_ctl, osal_u8 type, osal_u8 subtype, osal_u8 is_retry, osal_u8 *tid_out)
osal_void hmac_tx_ba_setup_etc(hmac_vap_stru *hmac_vap, hmac_user_stru *hmac_user, osal_u8 tidno)
OAL_STATIC OAL_INLINE osal_void hmac_tx_set_frame_ctrl(osal_u32 qos, mac_tx_ctl_stru *tx_ctl, mac_ieee80211_qos_htc_frame_addr4_stru *hdr_addr4)
Definition hmac_tx_data.h:193
oal_bool_enum_uint8 hmac_tid_need_ba_session(hmac_vap_stru *hmac_vap, hmac_user_stru *hmac_user, osal_u8 tidno, oal_netbuf_stru *netbuf)
OAL_STATIC OAL_INLINE osal_void hmac_tx_netbuf_list_enqueue(oal_netbuf_head_stru *head, oal_netbuf_stru *buf, osal_u8 netbuf_num)
Definition hmac_tx_data.h:116
OAL_STATIC OAL_INLINE oal_bool_enum_uint8 hmac_vap_ba_is_setup(const hmac_user_stru *hmac_user)
Definition hmac_tx_data.h:267
osal_u32 hmac_tx_ucast_process_etc(hmac_vap_stru *hmac_vap, oal_netbuf_stru *netbuf, hmac_user_stru *hmac_user, mac_tx_ctl_stru *tx_ctl)
hmac_tx_bss_qos_type_enum
Definition hmac_tx_data.h:32
@ HMAC_TX_BSS_QOS_BUTT
Definition hmac_tx_data.h:36
@ HMAC_TX_BSS_QOS
Definition hmac_tx_data.h:34
@ HMAC_TX_BSS_NOQOS
Definition hmac_tx_data.h:33
OAL_STATIC OAL_INLINE osal_void hmac_tx_ba_del(hmac_vap_stru *hmac_vap, hmac_user_stru *hmac_user, osal_u8 tidno)
Definition hmac_tx_data.h:284
OAL_STATIC OAL_INLINE osal_void hmac_tx_set_frame_htc(mac_tx_ctl_stru *tx_ctl, mac_ieee80211_qos_htc_frame_addr4_stru *hdr_addr4)
Definition hmac_tx_data.h:226
OAL_STATIC OAL_INLINE oal_netbuf_stru * hmac_tx_get_next_mpdu(oal_netbuf_stru *buf, osal_u8 netbuf_num)
Definition hmac_tx_data.h:93
#define MAC_80211_QOS_HTC_4ADDR_FRAME_LEN
Definition mac_frame.h:56
#define MAC_80211_4ADDR_FRAME_LEN
Definition mac_frame.h:52
#define MAC_80211_QOS_HTC_FRAME_LEN
Definition mac_frame.h:54
#define HTC_INVALID_VALUE
Definition mac_frame.h:31
#define MAC_80211_QOS_4ADDR_FRAME_LEN
Definition mac_frame.h:55
#define MAC_80211_FRAME_LEN
Definition mac_frame_common_rom.h:27
@ MAC_ORIGINATOR_DELBA
Definition mac_frame_common_rom.h:230
@ MAC_BA_ACTION_DELBA
Definition mac_frame_common_rom.h:258
@ MAC_UNSPEC_REASON
Definition mac_frame_common_rom.h:266
#define MAC_80211_QOS_FRAME_LEN
Definition mac_frame_common_rom.h:42
@ MAC_ACTION_CATEGORY_BA
Definition mac_frame_common_rom.h:74
@ HMAC_BA_COMPLETE
Definition mac_user_ext.h:85
osal_u8 qos
Definition oal_net.h:4
osal_u8 type
Definition oal_net.h:0
#define OAL_UNLIKELY(_expr)
Definition oal_plat_type.h:43
osal_u8 oal_bool_enum_uint8
Definition oal_types_device_rom.h:45
@ OAL_FALSE
Definition oal_types_device_rom.h:41
@ OAL_TRUE
Definition oal_types_device_rom.h:42
#define OAL_PTR_NULL
Definition oal_types_device_rom.h:30
#define WIFI_HMAC_TCM_TEXT
Definition oal_util_hcm.h:68
unsigned char osal_u8
Definition osal_types.h:11
void osal_void
Definition osal_types.h:29
unsigned int osal_u32
Definition osal_types.h:13
#define OAL_STATIC
Definition soc_wifi_service_api.c:30
hmac_ba_conn_status_enum_uint8 ba_status
Definition mac_user_ext.h:411
hmac_ba_tx_stru ba_tx_info
Definition mac_user_ext.h:486
Definition hmac_tx_data.h:56
osal_u32 start_time
Definition hmac_tx_data.h:59
osal_u32 pkt_len
Definition hmac_tx_data.h:57
osal_u32 snd_pkts
Definition hmac_tx_data.h:58
Definition mac_user_ext.h:519
hmac_tid_stru tx_tid_queue[WLAN_TID_MAX_NUM]
Definition mac_user_ext.h:657
osal_u8 user_mac_addr[WLAN_MAC_ADDR_LEN]
Definition mac_user_ext.h:529
Definition mac_vap_ext.h:2019
Definition mac_frame.h:1513
osal_u32 arg1
Definition mac_frame.h:1517
osal_u8 * arg5
Definition mac_frame.h:1521
osal_u32 arg2
Definition mac_frame.h:1518
osal_u8 action
Definition mac_frame.h:1515
osal_u8 category
Definition mac_frame.h:1514
osal_u32 arg3
Definition mac_frame.h:1519
osal_u8 address2[WLAN_MAC_ADDR_LEN]
Definition mac_frame.h:698
osal_u8 address3[WLAN_MAC_ADDR_LEN]
Definition mac_frame.h:699
osal_u8 address1[WLAN_MAC_ADDR_LEN]
Definition mac_frame.h:697
osal_u8 address4[WLAN_MAC_ADDR_LEN]
Definition mac_frame.h:702
mac_header_frame_control_stru frame_control
Definition mac_frame.h:694
Definition mac_frame.h:719
mac_ieee80211_qos_frame_addr4_stru qos_frame_addr4
Definition mac_frame.h:720
osal_u32 htc
Definition mac_frame.h:721
Definition mac_frame_common_rom.h:623
osal_u8 qc_eosp
Definition mac_frame_common_rom.h:633
mac_header_frame_control_stru frame_control
Definition mac_frame_common_rom.h:624
union mac_ieee80211_qos_htc_frame::@447 qos_control
osal_u8 qc_txop_limit
Definition mac_frame_common_rom.h:637
osal_u8 qc_ack_polocy
Definition mac_frame_common_rom.h:634
osal_u8 qc_tid
Definition mac_frame_common_rom.h:632
osal_u8 qc_amsdu
Definition mac_frame_common_rom.h:635
osal_u32 htc
Definition mac_frame_common_rom.h:644
Definition dmac_ext_if_device_rom.h:98
Definition oal_skbuff.h:73
Definition oal_skbuff.h:82
unsigned int uintptr_t
Definition td_type.h:65
#define WLAN_FC0_SUBTYPE_QOS
Definition wlan_types.h:100
#define WLAN_FC0_TYPE_DATA
Definition wlan_types.h:61
#define WLAN_TID_MAX_NUM
Definition wlan_types.h:389
#define WLAN_FC0_SUBTYPE_DATA
Definition wlan_types.h:92