qca-wifi: Fix RTS and CTS duration in tx capture
This change updates correct timestamp for self gen RTS/CTS frames Change-Id: I934de171f7d78288a91b57581c9cdb0ff48b9067 CRs-Fixed: 2632369
This commit is contained in:

committed by
Gerrit - the friendly Code Review server

parent
bcc9fe307b
commit
e13d2f6375
@@ -1900,7 +1900,7 @@ QDF_STATUS dp_send_dummy_mpdu_info_to_stack(struct dp_pdev *pdev,
|
|||||||
frame_ctrl_le =
|
frame_ctrl_le =
|
||||||
qdf_cpu_to_le16(mpdu_info->frame_ctrl);
|
qdf_cpu_to_le16(mpdu_info->frame_ctrl);
|
||||||
duration_le =
|
duration_le =
|
||||||
qdf_cpu_to_le16(ppdu_desc->bar_tx_duration);
|
qdf_cpu_to_le16(mpdu_info->tx_duration);
|
||||||
wh_min->i_fc[1] = (frame_ctrl_le & 0xFF00) >> 8;
|
wh_min->i_fc[1] = (frame_ctrl_le & 0xFF00) >> 8;
|
||||||
wh_min->i_fc[0] = (frame_ctrl_le & 0xFF);
|
wh_min->i_fc[0] = (frame_ctrl_le & 0xFF);
|
||||||
wh_min->i_aidordur[1] = (duration_le & 0xFF00) >> 8;
|
wh_min->i_aidordur[1] = (duration_le & 0xFF00) >> 8;
|
||||||
@@ -1991,6 +1991,7 @@ void dp_send_dummy_rts_cts_frame(struct dp_pdev *pdev,
|
|||||||
cur_ppdu_desc->ppdu_start_timestamp;
|
cur_ppdu_desc->ppdu_start_timestamp;
|
||||||
ppdu_desc->ppdu_end_timestamp =
|
ppdu_desc->ppdu_end_timestamp =
|
||||||
cur_ppdu_desc->ppdu_end_timestamp;
|
cur_ppdu_desc->ppdu_end_timestamp;
|
||||||
|
ppdu_desc->tx_duration = cur_ppdu_desc->tx_duration;
|
||||||
ppdu_desc->user[0].peer_id = cur_ppdu_desc->user[0].peer_id;
|
ppdu_desc->user[0].peer_id = cur_ppdu_desc->user[0].peer_id;
|
||||||
ppdu_desc->frame_ctrl = (IEEE80211_FC0_SUBTYPE_RTS |
|
ppdu_desc->frame_ctrl = (IEEE80211_FC0_SUBTYPE_RTS |
|
||||||
IEEE80211_FC0_TYPE_CTL);
|
IEEE80211_FC0_TYPE_CTL);
|
||||||
@@ -2015,6 +2016,8 @@ void dp_send_dummy_rts_cts_frame(struct dp_pdev *pdev,
|
|||||||
cur_ppdu_desc->ppdu_start_timestamp;
|
cur_ppdu_desc->ppdu_start_timestamp;
|
||||||
ppdu_desc->ppdu_end_timestamp =
|
ppdu_desc->ppdu_end_timestamp =
|
||||||
cur_ppdu_desc->ppdu_end_timestamp;
|
cur_ppdu_desc->ppdu_end_timestamp;
|
||||||
|
ppdu_desc->tx_duration = cur_ppdu_desc->tx_duration -
|
||||||
|
(RTS_INTERVAL + SIFS_INTERVAL);
|
||||||
ppdu_desc->user[0].peer_id = peer_id;
|
ppdu_desc->user[0].peer_id = peer_id;
|
||||||
peer = dp_tx_cap_peer_find_by_id(pdev->soc, peer_id);
|
peer = dp_tx_cap_peer_find_by_id(pdev->soc, peer_id);
|
||||||
if (peer) {
|
if (peer) {
|
||||||
|
@@ -37,6 +37,8 @@ struct dp_tx_desc_s;
|
|||||||
|
|
||||||
#define SIFS_INTERVAL 16
|
#define SIFS_INTERVAL 16
|
||||||
|
|
||||||
|
#define RTS_INTERVAL 40
|
||||||
|
|
||||||
#define MAX_MGMT_PEER_FILTER 16
|
#define MAX_MGMT_PEER_FILTER 16
|
||||||
struct dp_peer_mgmt_list {
|
struct dp_peer_mgmt_list {
|
||||||
uint8_t mac_addr[QDF_MAC_ADDR_SIZE];
|
uint8_t mac_addr[QDF_MAC_ADDR_SIZE];
|
||||||
|
Reference in New Issue
Block a user