qcacmn: add partner vdev debug prints in TXRX_AST_STATS
add partner vdev debug prints in TXRX_AST_STATS Change-Id: Icf3cc557572519e43e3135e2b22ff457982a8d32 CRs-Fixed: 3571207
This commit is contained in:

committed by
Rahul Choudhary

parent
3ef9a59299
commit
59ec56d44f
@@ -2900,6 +2900,7 @@ void dp_initialize_arch_ops_be(struct dp_arch_ops *arch_ops)
|
|||||||
dp_initialize_arch_ops_be_mlo(arch_ops);
|
dp_initialize_arch_ops_be_mlo(arch_ops);
|
||||||
#ifdef WLAN_MLO_MULTI_CHIP
|
#ifdef WLAN_MLO_MULTI_CHIP
|
||||||
arch_ops->dp_get_soc_by_chip_id = dp_get_soc_by_chip_id_be;
|
arch_ops->dp_get_soc_by_chip_id = dp_get_soc_by_chip_id_be;
|
||||||
|
arch_ops->dp_mlo_print_ptnr_info = dp_mlo_debug_print_ptnr_info;
|
||||||
#endif
|
#endif
|
||||||
arch_ops->dp_soc_get_num_soc = dp_soc_get_num_soc_be;
|
arch_ops->dp_soc_get_num_soc = dp_soc_get_num_soc_be;
|
||||||
arch_ops->dp_peer_rx_reorder_queue_setup =
|
arch_ops->dp_peer_rx_reorder_queue_setup =
|
||||||
|
@@ -1237,6 +1237,24 @@ dp_soc_get_by_idle_bm_id(struct dp_soc *soc, uint8_t idle_bm_id)
|
|||||||
}
|
}
|
||||||
|
|
||||||
#ifdef WLAN_MLO_MULTI_CHIP
|
#ifdef WLAN_MLO_MULTI_CHIP
|
||||||
|
static void dp_print_mlo_partner_list(struct dp_vdev_be *be_vdev,
|
||||||
|
struct dp_vdev *partner_vdev,
|
||||||
|
void *arg)
|
||||||
|
{
|
||||||
|
struct dp_vdev_be *partner_vdev_be = NULL;
|
||||||
|
struct dp_soc_be *partner_soc_be = NULL;
|
||||||
|
|
||||||
|
partner_vdev_be = dp_get_be_vdev_from_dp_vdev(partner_vdev);
|
||||||
|
partner_soc_be = dp_get_be_soc_from_dp_soc(partner_vdev->pdev->soc);
|
||||||
|
|
||||||
|
DP_PRINT_STATS("is_bridge_vap = %s, mcast_primary = %s, vdev_id = %d, pdev_id = %d, chip_id = %d",
|
||||||
|
partner_vdev->is_bridge_vdev ? "true" : "false",
|
||||||
|
partner_vdev_be->mcast_primary ? "true" : "false",
|
||||||
|
partner_vdev->vdev_id,
|
||||||
|
partner_vdev->pdev->pdev_id,
|
||||||
|
partner_soc_be->mlo_chip_id);
|
||||||
|
}
|
||||||
|
|
||||||
void dp_mlo_iter_ptnr_vdev(struct dp_soc_be *be_soc,
|
void dp_mlo_iter_ptnr_vdev(struct dp_soc_be *be_soc,
|
||||||
struct dp_vdev_be *be_vdev,
|
struct dp_vdev_be *be_vdev,
|
||||||
dp_ptnr_vdev_iter_func func,
|
dp_ptnr_vdev_iter_func func,
|
||||||
@@ -1301,6 +1319,27 @@ void dp_mlo_iter_ptnr_vdev(struct dp_soc_be *be_soc,
|
|||||||
}
|
}
|
||||||
|
|
||||||
qdf_export_symbol(dp_mlo_iter_ptnr_vdev);
|
qdf_export_symbol(dp_mlo_iter_ptnr_vdev);
|
||||||
|
|
||||||
|
void dp_mlo_debug_print_ptnr_info(struct dp_vdev *vdev)
|
||||||
|
{
|
||||||
|
struct dp_vdev_be *be_vdev = NULL;
|
||||||
|
struct dp_soc_be *be_soc = NULL;
|
||||||
|
|
||||||
|
be_soc = dp_get_be_soc_from_dp_soc(vdev->pdev->soc);
|
||||||
|
be_vdev = dp_get_be_vdev_from_dp_vdev(vdev);
|
||||||
|
|
||||||
|
DP_PRINT_STATS("self vdev is_bridge_vap = %s, mcast_primary = %s, vdev = %d, pdev_id = %d, chip_id = %d",
|
||||||
|
vdev->is_bridge_vdev ? "true" : "false",
|
||||||
|
be_vdev->mcast_primary ? "true" : "false",
|
||||||
|
vdev->vdev_id,
|
||||||
|
vdev->pdev->pdev_id,
|
||||||
|
dp_mlo_get_chip_id(vdev->pdev->soc));
|
||||||
|
|
||||||
|
dp_mlo_iter_ptnr_vdev(be_soc, be_vdev,
|
||||||
|
dp_print_mlo_partner_list,
|
||||||
|
NULL, DP_MOD_ID_GENERIC_STATS,
|
||||||
|
DP_ALL_VDEV_ITER);
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef WLAN_MCAST_MLO
|
#ifdef WLAN_MCAST_MLO
|
||||||
|
@@ -217,4 +217,12 @@ int32_t dp_mlo_get_delta_tqm_wrt_mlo_offset(struct dp_soc *soc);
|
|||||||
QDF_STATUS
|
QDF_STATUS
|
||||||
dp_get_interface_stats_be(struct cdp_soc_t *soc_hdl, uint8_t vdev_id,
|
dp_get_interface_stats_be(struct cdp_soc_t *soc_hdl, uint8_t vdev_id,
|
||||||
void *buf, bool is_aggregate);
|
void *buf, bool is_aggregate);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* dp_mlo_debug_print_ptnr_info() - print partner info
|
||||||
|
* @vdev: DP VDEV
|
||||||
|
*
|
||||||
|
* Return: none
|
||||||
|
*/
|
||||||
|
void dp_mlo_debug_print_ptnr_info(struct dp_vdev *vdev);
|
||||||
#endif /* __DP_MLO_H */
|
#endif /* __DP_MLO_H */
|
||||||
|
@@ -6942,6 +6942,8 @@ dp_print_host_stats(struct dp_vdev *vdev,
|
|||||||
dp_print_ast_stats(pdev->soc);
|
dp_print_ast_stats(pdev->soc);
|
||||||
dp_print_mec_stats(pdev->soc);
|
dp_print_mec_stats(pdev->soc);
|
||||||
dp_print_peer_table(vdev);
|
dp_print_peer_table(vdev);
|
||||||
|
if (soc->arch_ops.dp_mlo_print_ptnr_info)
|
||||||
|
soc->arch_ops.dp_mlo_print_ptnr_info(vdev);
|
||||||
break;
|
break;
|
||||||
case TXRX_SRNG_PTR_STATS:
|
case TXRX_SRNG_PTR_STATS:
|
||||||
dp_print_ring_stats(pdev);
|
dp_print_ring_stats(pdev);
|
||||||
|
@@ -2248,6 +2248,7 @@ enum dp_context_type {
|
|||||||
* @dp_update_ring_hptp: Update rings hptp during suspend/resume
|
* @dp_update_ring_hptp: Update rings hptp during suspend/resume
|
||||||
* @dp_get_fst_cmem_base: Get CMEM base address for FISA
|
* @dp_get_fst_cmem_base: Get CMEM base address for FISA
|
||||||
* @dp_flush_tx_ring: Flush TCL ring HP
|
* @dp_flush_tx_ring: Flush TCL ring HP
|
||||||
|
* @dp_mlo_print_ptnr_info: print partner vdev info
|
||||||
*/
|
*/
|
||||||
struct dp_arch_ops {
|
struct dp_arch_ops {
|
||||||
/* INIT/DEINIT Arch Ops */
|
/* INIT/DEINIT Arch Ops */
|
||||||
@@ -2508,6 +2509,7 @@ struct dp_arch_ops {
|
|||||||
void (*dp_update_ring_hptp)(struct dp_soc *soc, bool force_flush_tx);
|
void (*dp_update_ring_hptp)(struct dp_soc *soc, bool force_flush_tx);
|
||||||
uint64_t (*dp_get_fst_cmem_base)(struct dp_soc *soc, uint64_t size);
|
uint64_t (*dp_get_fst_cmem_base)(struct dp_soc *soc, uint64_t size);
|
||||||
int (*dp_flush_tx_ring)(struct dp_pdev *pdev, int ring_id);
|
int (*dp_flush_tx_ring)(struct dp_pdev *pdev, int ring_id);
|
||||||
|
void (*dp_mlo_print_ptnr_info)(struct dp_vdev *vdev);
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Reference in New Issue
Block a user