qcacmn: Populate MU-MIMO user pos and mu group id
populate TX OFDMA and TX MU MIMO information from user rate tlv and display the same in fc_peer_stats. Change-Id: If1dab15bbdf391fba00a701abd6024c420d1d8f7
This commit is contained in:
@@ -147,6 +147,44 @@ static void dp_tx_stats_update(struct dp_soc *soc, struct dp_peer *peer,
|
||||
if (soc->process_tx_status)
|
||||
return;
|
||||
|
||||
DP_STATS_INC(peer, tx.transmit_type[ppdu->ppdu_type], 1);
|
||||
|
||||
if (ppdu->mu_group_id <= MAX_MU_GROUP_ID && ppdu->ppdu_type != SU_TX) {
|
||||
if (unlikely(!(ppdu->mu_group_id & (MAX_MU_GROUP_ID - 1))))
|
||||
QDF_TRACE(QDF_MODULE_ID_TXRX, QDF_TRACE_LEVEL_ERROR,
|
||||
"mu_group_id out of bound!!\n");
|
||||
else
|
||||
DP_STATS_UPD(peer, tx.mu_group_id[ppdu->mu_group_id],
|
||||
(ppdu->user_pos + 1));
|
||||
}
|
||||
|
||||
if (ppdu->ppdu_type == MUMIMO_TX ||
|
||||
ppdu->ppdu_type == MUMIMO_OFDMA_TX) {
|
||||
DP_STATS_UPD(peer, tx.ru_tones, ppdu->ru_tones);
|
||||
DP_STATS_UPD(peer, tx.ru_start, ppdu->ru_start);
|
||||
switch (ppdu->ru_tones) {
|
||||
case RU_26:
|
||||
DP_STATS_INC(peer, tx.ru_loc[0], 1);
|
||||
break;
|
||||
case RU_52:
|
||||
DP_STATS_INC(peer, tx.ru_loc[1], 1);
|
||||
break;
|
||||
case RU_106:
|
||||
DP_STATS_INC(peer, tx.ru_loc[2], 1);
|
||||
break;
|
||||
case RU_242:
|
||||
DP_STATS_INC(peer, tx.ru_loc[3], 1);
|
||||
break;
|
||||
case RU_484:
|
||||
DP_STATS_INC(peer, tx.ru_loc[4], 1);
|
||||
break;
|
||||
case RU_996:
|
||||
DP_STATS_INC(peer, tx.ru_loc[5], 1);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
DP_STATS_INC(peer, tx.transmit_type[ppdu->ppdu_type], 1);
|
||||
DP_STATS_INC_PKT(peer, tx.comp_pkt,
|
||||
num_msdu, (ppdu->success_bytes +
|
||||
ppdu->retry_bytes + ppdu->failed_bytes));
|
||||
@@ -1889,8 +1927,17 @@ static void dp_process_ppdu_stats_user_rate_tlv(struct dp_pdev *pdev,
|
||||
ppdu_user_desc->tid =
|
||||
HTT_PPDU_STATS_USER_RATE_TLV_TID_NUM_GET(*tag_buf);
|
||||
|
||||
tag_buf += 2;
|
||||
tag_buf += 1;
|
||||
|
||||
ppdu_user_desc->user_pos =
|
||||
HTT_PPDU_STATS_USER_RATE_TLV_USER_POS_GET(*tag_buf);
|
||||
ppdu_user_desc->mu_group_id =
|
||||
HTT_PPDU_STATS_USER_RATE_TLV_MU_GROUPID_GET(*tag_buf);
|
||||
|
||||
tag_buf += 1;
|
||||
|
||||
ppdu_user_desc->ru_start =
|
||||
HTT_PPDU_STATS_USER_RATE_TLV_RU_START_GET(*tag_buf);
|
||||
ppdu_user_desc->ru_tones =
|
||||
(HTT_PPDU_STATS_USER_RATE_TLV_RU_END_GET(*tag_buf) -
|
||||
HTT_PPDU_STATS_USER_RATE_TLV_RU_START_GET(*tag_buf)) + 1;
|
||||
|
Reference in New Issue
Block a user