|
@@ -1284,7 +1284,7 @@ void htt_t2h_stats_handler(void *context)
|
|
|
*/
|
|
|
#ifdef FEATURE_PERPKT_INFO
|
|
|
static uint8_t dp_get_ppdu_info_user_index(struct dp_pdev *pdev,
|
|
|
- uint32_t peer_id)
|
|
|
+ uint16_t peer_id)
|
|
|
{
|
|
|
uint8_t user_index = 0;
|
|
|
struct cdp_tx_completion_ppdu *ppdu_desc;
|
|
@@ -1293,18 +1293,23 @@ static uint8_t dp_get_ppdu_info_user_index(struct dp_pdev *pdev,
|
|
|
ppdu_desc =
|
|
|
(struct cdp_tx_completion_ppdu *)qdf_nbuf_data(pdev->tx_ppdu_info.buf);
|
|
|
|
|
|
-
|
|
|
while ((user_index + 1) <= pdev->tx_ppdu_info.last_user) {
|
|
|
ppdu_user_desc = &ppdu_desc->user[user_index];
|
|
|
if (ppdu_user_desc->peer_id != peer_id) {
|
|
|
user_index++;
|
|
|
continue;
|
|
|
} else {
|
|
|
+ /* Max users possible is 8 so user array index should
|
|
|
+ * not exceed 7
|
|
|
+ */
|
|
|
+ qdf_assert_always(user_index <= CDP_MU_MAX_USER_INDEX);
|
|
|
return user_index;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
pdev->tx_ppdu_info.last_user++;
|
|
|
+ /* Max users possible is 8 so last user should not exceed 8 */
|
|
|
+ qdf_assert_always(pdev->tx_ppdu_info.last_user <= CDP_MU_MAX_USERS);
|
|
|
return pdev->tx_ppdu_info.last_user - 1;
|
|
|
}
|
|
|
#endif
|
|
@@ -1359,7 +1364,7 @@ static void dp_process_ppdu_stats_common_tlv(struct dp_pdev *pdev,
|
|
|
static void dp_process_ppdu_stats_user_common_tlv(
|
|
|
struct dp_pdev *pdev, uint32_t *tag_buf)
|
|
|
{
|
|
|
- uint32_t peer_id;
|
|
|
+ uint16_t peer_id;
|
|
|
struct dp_peer *peer;
|
|
|
struct cdp_tx_completion_ppdu *ppdu_desc;
|
|
|
struct cdp_tx_completion_ppdu_user *ppdu_user_desc;
|
|
@@ -1374,6 +1379,7 @@ static void dp_process_ppdu_stats_user_common_tlv(
|
|
|
|
|
|
if (!peer)
|
|
|
return;
|
|
|
+
|
|
|
curr_user_index = dp_get_ppdu_info_user_index(pdev, peer_id);
|
|
|
ppdu_user_desc = &ppdu_desc->user[curr_user_index];
|
|
|
|
|
@@ -1407,7 +1413,7 @@ static void dp_process_ppdu_stats_user_common_tlv(
|
|
|
static void dp_process_ppdu_stats_user_rate_tlv(struct dp_pdev *pdev,
|
|
|
uint32_t *tag_buf)
|
|
|
{
|
|
|
- uint32_t peer_id;
|
|
|
+ uint16_t peer_id;
|
|
|
struct dp_peer *peer;
|
|
|
struct cdp_tx_completion_ppdu *ppdu_desc;
|
|
|
struct cdp_tx_completion_ppdu_user *ppdu_user_desc;
|
|
@@ -1478,7 +1484,7 @@ static void dp_process_ppdu_stats_enq_mpdu_bitmap_64_tlv(
|
|
|
struct cdp_tx_completion_ppdu *ppdu_desc;
|
|
|
struct cdp_tx_completion_ppdu_user *ppdu_user_desc;
|
|
|
uint8_t curr_user_index = 0;
|
|
|
- uint32_t peer_id;
|
|
|
+ uint16_t peer_id;
|
|
|
struct dp_peer *peer;
|
|
|
|
|
|
ppdu_desc =
|
|
@@ -1487,7 +1493,7 @@ static void dp_process_ppdu_stats_enq_mpdu_bitmap_64_tlv(
|
|
|
tag_buf++;
|
|
|
|
|
|
peer_id =
|
|
|
- HTT_PPDU_STATS_USER_CMPLTN_BA_BITMAP_TLV_SW_PEER_ID_GET(*tag_buf);
|
|
|
+ HTT_PPDU_STATS_ENQ_MPDU_BITMAP_TLV_SW_PEER_ID_GET(*tag_buf);
|
|
|
|
|
|
peer = dp_peer_find_by_id(pdev->soc, peer_id);
|
|
|
|
|
@@ -1497,6 +1503,7 @@ static void dp_process_ppdu_stats_enq_mpdu_bitmap_64_tlv(
|
|
|
curr_user_index = dp_get_ppdu_info_user_index(pdev, peer_id);
|
|
|
|
|
|
ppdu_user_desc = &ppdu_desc->user[curr_user_index];
|
|
|
+ ppdu_user_desc->peer_id = peer_id;
|
|
|
|
|
|
ppdu_user_desc->start_seq = dp_stats_buf->start_seq;
|
|
|
qdf_mem_copy(&ppdu_user_desc->enq_bitmap, &dp_stats_buf->enq_bitmap,
|
|
@@ -1522,7 +1529,7 @@ static void dp_process_ppdu_stats_enq_mpdu_bitmap_256_tlv(
|
|
|
struct cdp_tx_completion_ppdu *ppdu_desc;
|
|
|
struct cdp_tx_completion_ppdu_user *ppdu_user_desc;
|
|
|
uint8_t curr_user_index = 0;
|
|
|
- uint32_t peer_id;
|
|
|
+ uint16_t peer_id;
|
|
|
struct dp_peer *peer;
|
|
|
|
|
|
ppdu_desc =
|
|
@@ -1531,7 +1538,7 @@ static void dp_process_ppdu_stats_enq_mpdu_bitmap_256_tlv(
|
|
|
tag_buf++;
|
|
|
|
|
|
peer_id =
|
|
|
- HTT_PPDU_STATS_USER_CMPLTN_BA_BITMAP_TLV_SW_PEER_ID_GET(*tag_buf);
|
|
|
+ HTT_PPDU_STATS_ENQ_MPDU_BITMAP_TLV_SW_PEER_ID_GET(*tag_buf);
|
|
|
|
|
|
peer = dp_peer_find_by_id(pdev->soc, peer_id);
|
|
|
|
|
@@ -1541,6 +1548,7 @@ static void dp_process_ppdu_stats_enq_mpdu_bitmap_256_tlv(
|
|
|
curr_user_index = dp_get_ppdu_info_user_index(pdev, peer_id);
|
|
|
|
|
|
ppdu_user_desc = &ppdu_desc->user[curr_user_index];
|
|
|
+ ppdu_user_desc->peer_id = peer_id;
|
|
|
|
|
|
ppdu_user_desc->start_seq = dp_stats_buf->start_seq;
|
|
|
qdf_mem_copy(&ppdu_user_desc->enq_bitmap, &dp_stats_buf->enq_bitmap,
|
|
@@ -1560,7 +1568,7 @@ static void dp_process_ppdu_stats_enq_mpdu_bitmap_256_tlv(
|
|
|
static void dp_process_ppdu_stats_user_cmpltn_common_tlv(
|
|
|
struct dp_pdev *pdev, uint32_t *tag_buf)
|
|
|
{
|
|
|
- uint32_t peer_id;
|
|
|
+ uint16_t peer_id;
|
|
|
struct dp_peer *peer;
|
|
|
struct cdp_tx_completion_ppdu *ppdu_desc;
|
|
|
struct cdp_tx_completion_ppdu_user *ppdu_user_desc;
|
|
@@ -1630,7 +1638,7 @@ static void dp_process_ppdu_stats_user_compltn_ba_bitmap_64_tlv(
|
|
|
struct cdp_tx_completion_ppdu_user *ppdu_user_desc;
|
|
|
struct cdp_tx_completion_ppdu *ppdu_desc;
|
|
|
uint8_t curr_user_index = 0;
|
|
|
- uint32_t peer_id;
|
|
|
+ uint16_t peer_id;
|
|
|
struct dp_peer *peer;
|
|
|
|
|
|
ppdu_desc =
|
|
@@ -1649,6 +1657,7 @@ static void dp_process_ppdu_stats_user_compltn_ba_bitmap_64_tlv(
|
|
|
curr_user_index = dp_get_ppdu_info_user_index(pdev, peer_id);
|
|
|
|
|
|
ppdu_user_desc = &ppdu_desc->user[curr_user_index];
|
|
|
+ ppdu_user_desc->peer_id = peer_id;
|
|
|
|
|
|
ppdu_user_desc->ba_seq_no = dp_stats_buf->ba_seq_no;
|
|
|
qdf_mem_copy(&ppdu_user_desc->ba_bitmap, &dp_stats_buf->ba_bitmap,
|
|
@@ -1673,7 +1682,7 @@ static void dp_process_ppdu_stats_user_compltn_ba_bitmap_256_tlv(
|
|
|
struct cdp_tx_completion_ppdu_user *ppdu_user_desc;
|
|
|
struct cdp_tx_completion_ppdu *ppdu_desc;
|
|
|
uint8_t curr_user_index = 0;
|
|
|
- uint32_t peer_id;
|
|
|
+ uint16_t peer_id;
|
|
|
struct dp_peer *peer;
|
|
|
|
|
|
ppdu_desc =
|
|
@@ -1692,6 +1701,7 @@ static void dp_process_ppdu_stats_user_compltn_ba_bitmap_256_tlv(
|
|
|
curr_user_index = dp_get_ppdu_info_user_index(pdev, peer_id);
|
|
|
|
|
|
ppdu_user_desc = &ppdu_desc->user[curr_user_index];
|
|
|
+ ppdu_user_desc->peer_id = peer_id;
|
|
|
|
|
|
ppdu_user_desc->ba_seq_no = dp_stats_buf->ba_seq_no;
|
|
|
qdf_mem_copy(&ppdu_user_desc->ba_bitmap, &dp_stats_buf->ba_bitmap,
|
|
@@ -1711,7 +1721,7 @@ static void dp_process_ppdu_stats_user_compltn_ba_bitmap_256_tlv(
|
|
|
static void dp_process_ppdu_stats_user_compltn_ack_ba_status_tlv(
|
|
|
struct dp_pdev *pdev, uint32_t *tag_buf)
|
|
|
{
|
|
|
- uint32_t peer_id;
|
|
|
+ uint16_t peer_id;
|
|
|
struct dp_peer *peer;
|
|
|
struct cdp_tx_completion_ppdu *ppdu_desc;
|
|
|
struct cdp_tx_completion_ppdu_user *ppdu_user_desc;
|
|
@@ -1732,6 +1742,7 @@ static void dp_process_ppdu_stats_user_compltn_ack_ba_status_tlv(
|
|
|
curr_user_index = dp_get_ppdu_info_user_index(pdev, peer_id);
|
|
|
|
|
|
ppdu_user_desc = &ppdu_desc->user[curr_user_index];
|
|
|
+ ppdu_user_desc->peer_id = peer_id;
|
|
|
|
|
|
tag_buf += 2;
|
|
|
ppdu_user_desc->num_mpdu =
|