qcacmn: Add changes to update band info in nbuf cb

Add changes to update band info into nbuf cb for
connectivity logging.

Change-Id: Iec5e91fe6b39a9a0f8a7a37d4945914d7a9e748f
CRs-Fixed: 3571823
This commit is contained in:
Amit Mehta
2023-08-16 09:44:30 +05:30
committed by Rahul Choudhary
parent 6f26807730
commit fcf4ae51f3
6 changed files with 55 additions and 0 deletions

View File

@@ -585,6 +585,8 @@ done:
link_id = 0; link_id = 0;
} }
dp_rx_set_nbuf_band(nbuf, txrx_peer, link_id);
/* when hlos tid override is enabled, save tid in /* when hlos tid override is enabled, save tid in
* skb->priority * skb->priority
*/ */

View File

@@ -2438,12 +2438,33 @@ dp_rx_nbuf_set_link_id_from_tlv(struct dp_soc *soc, uint8_t *tlv_hdr,
if (soc->arch_ops.dp_rx_peer_set_link_id) if (soc->arch_ops.dp_rx_peer_set_link_id)
soc->arch_ops.dp_rx_peer_set_link_id(nbuf, peer_metadata); soc->arch_ops.dp_rx_peer_set_link_id(nbuf, peer_metadata);
} }
/**
* dp_rx_set_nbuf_band() - Set band info in nbuf cb
* @nbuf: nbuf pointer
* @txrx_peer: txrx_peer pointer
* @link_id: Peer Link ID
*
* Returen: None
*/
static inline void
dp_rx_set_nbuf_band(qdf_nbuf_t nbuf, struct dp_txrx_peer *txrx_peer,
uint8_t link_id)
{
qdf_nbuf_rx_set_band(nbuf, txrx_peer->band[link_id]);
}
#else #else
static inline void static inline void
dp_rx_nbuf_set_link_id_from_tlv(struct dp_soc *soc, uint8_t *tlv_hdr, dp_rx_nbuf_set_link_id_from_tlv(struct dp_soc *soc, uint8_t *tlv_hdr,
qdf_nbuf_t nbuf) qdf_nbuf_t nbuf)
{ {
} }
static inline void
dp_rx_set_nbuf_band(qdf_nbuf_t nbuf, struct dp_txrx_peer *txrx_peer,
uint8_t link_id)
{
}
#endif #endif
/** /**

View File

@@ -1217,6 +1217,9 @@ more_msdu_link_desc:
txrx_peer); txrx_peer);
} }
if (txrx_peer)
dp_rx_set_nbuf_band(nbuf, txrx_peer, link_id);
switch (err_code) { switch (err_code) {
case HAL_REO_ERR_REGULAR_FRAME_2K_JUMP: case HAL_REO_ERR_REGULAR_FRAME_2K_JUMP:
case HAL_REO_ERR_2K_ERROR_HANDLING_FLAG_SET: case HAL_REO_ERR_2K_ERROR_HANDLING_FLAG_SET:

View File

@@ -5357,6 +5357,8 @@ void dp_tx_comp_process_tx_status(struct dp_soc *soc,
link_id = dp_tx_get_link_id_from_ppdu_id(soc, ts, txrx_peer, vdev); link_id = dp_tx_get_link_id_from_ppdu_id(soc, ts, txrx_peer, vdev);
dp_tx_set_nbuf_band(nbuf, txrx_peer, link_id);
op_mode = vdev->qdf_opmode; op_mode = vdev->qdf_opmode;
dp_tx_update_connectivity_stats(soc, vdev, tx_desc, ts->status); dp_tx_update_connectivity_stats(soc, vdev, tx_desc, ts->status);
dp_tx_update_uplink_delay(soc, vdev, ts); dp_tx_update_uplink_delay(soc, vdev, ts);

View File

@@ -2203,4 +2203,26 @@ static inline int dp_get_rtpm_tput_policy_requirement(struct dp_soc *soc)
return 0; return 0;
} }
#endif #endif
#if defined WLAN_FEATURE_11BE_MLO && defined DP_MLO_LINK_STATS_SUPPORT
/**
* dp_tx_set_nbuf_band() - Set band info in nbuf cb
* @nbuf: nbuf pointer
* @txrx_peer: txrx_peer pointer
* @link_id: Peer Link ID
*
* Returen: None
*/
static inline void
dp_tx_set_nbuf_band(qdf_nbuf_t nbuf, struct dp_txrx_peer *txrx_peer,
uint8_t link_id)
{
qdf_nbuf_tx_set_band(nbuf, txrx_peer->band[link_id]);
}
#else
static inline void
dp_tx_set_nbuf_band(qdf_nbuf_t nbuf, struct dp_txrx_peer *txrx_peer,
uint8_t link_id)
{
}
#endif
#endif #endif

View File

@@ -4799,6 +4799,7 @@ struct dp_peer_stats {
* @sawf_stats: * @sawf_stats:
* @bw: bandwidth of peer connection * @bw: bandwidth of peer connection
* @mpdu_retry_threshold: MPDU retry threshold to increment tx bad count * @mpdu_retry_threshold: MPDU retry threshold to increment tx bad count
* @band: Link ID to band mapping
* @stats_arr_size: peer stats array size * @stats_arr_size: peer stats array size
* @stats: Peer link and mld statistics * @stats: Peer link and mld statistics
*/ */
@@ -4848,6 +4849,10 @@ struct dp_txrx_peer {
#ifdef DP_PEER_EXTENDED_API #ifdef DP_PEER_EXTENDED_API
enum cdp_peer_bw bw; enum cdp_peer_bw bw;
uint8_t mpdu_retry_threshold; uint8_t mpdu_retry_threshold;
#endif
#if defined WLAN_FEATURE_11BE_MLO && defined DP_MLO_LINK_STATS_SUPPORT
/* Link ID to band mapping, (1 MLD + DP_MAX_MLO_LINKS) */
uint8_t band[DP_MAX_MLO_LINKS + 1];
#endif #endif
uint8_t stats_arr_size; uint8_t stats_arr_size;