qcacmn: Add API to flush peers in recovery case
Add cdp wrapper API to flush the peers in recovery case. CRs-Fixed: 3153535 Change-Id: I58869bf118f0aea487e63865300ba8e7462651ac
This commit is contained in:

committed by
Madan Koyyalamudi

parent
ba015feedc
commit
d7046ba026
@@ -242,6 +242,24 @@ cdp_vdev_detach(ol_txrx_soc_handle soc, uint8_t vdev_id,
|
||||
callback, cb_context);
|
||||
}
|
||||
|
||||
#if defined(WLAN_FEATURE_11BE_MLO) && defined(WLAN_MLO_MULTI_CHIP)
|
||||
static inline void
|
||||
cdp_vdev_recovery_flush_peers(ol_txrx_soc_handle soc, uint8_t vdev_id)
|
||||
{
|
||||
if (!soc || !soc->ops) {
|
||||
dp_cdp_debug("Invalid Instance:");
|
||||
QDF_BUG(0);
|
||||
return;
|
||||
}
|
||||
|
||||
if (!soc->ops->cmn_drv_ops ||
|
||||
!soc->ops->cmn_drv_ops->txrx_recovery_vdev_flush_peers)
|
||||
return;
|
||||
|
||||
soc->ops->cmn_drv_ops->txrx_recovery_vdev_flush_peers(soc, vdev_id);
|
||||
}
|
||||
#endif
|
||||
|
||||
static inline int
|
||||
cdp_pdev_attach_target(ol_txrx_soc_handle soc, uint8_t pdev_id)
|
||||
{
|
||||
|
@@ -613,6 +613,11 @@ struct cdp_cmn_ops {
|
||||
#ifdef FEATURE_RUNTIME_PM
|
||||
void (*set_rtpm_tput_policy)(struct cdp_soc_t *soc, bool val);
|
||||
#endif
|
||||
|
||||
#if defined(WLAN_FEATURE_11BE_MLO) && defined(WLAN_MLO_MULTI_CHIP)
|
||||
void (*txrx_recovery_vdev_flush_peers)(struct cdp_soc_t *soc,
|
||||
uint8_t vdev_id);
|
||||
#endif
|
||||
};
|
||||
|
||||
struct cdp_ctrl_ops {
|
||||
|
@@ -12376,6 +12376,23 @@ dp_check_vdev_tx_delay_stats_enabled(struct cdp_soc_t *soc_hdl,
|
||||
}
|
||||
#endif
|
||||
|
||||
#if defined(WLAN_FEATURE_11BE_MLO) && defined(WLAN_MLO_MULTI_CHIP)
|
||||
static void
|
||||
dp_recovery_vdev_flush_peers(struct cdp_soc_t *cdp_soc, uint8_t vdev_id)
|
||||
{
|
||||
struct dp_soc *soc = (struct dp_soc *)cdp_soc;
|
||||
struct dp_vdev *vdev;
|
||||
|
||||
vdev = dp_vdev_get_ref_by_id(soc, vdev_id, DP_MOD_ID_CDP);
|
||||
|
||||
if (!vdev)
|
||||
return;
|
||||
|
||||
dp_vdev_flush_peers((struct cdp_vdev *)vdev, false);
|
||||
dp_vdev_unref_delete(soc, vdev, DP_MOD_ID_CDP);
|
||||
}
|
||||
#endif
|
||||
|
||||
static struct cdp_cmn_ops dp_ops_cmn = {
|
||||
.txrx_soc_attach_target = dp_soc_attach_target_wifi3,
|
||||
.txrx_vdev_attach = dp_vdev_attach_wifi3,
|
||||
@@ -12488,6 +12505,9 @@ static struct cdp_cmn_ops dp_ops_cmn = {
|
||||
#ifdef WLAN_FEATURE_PKT_CAPTURE_V2
|
||||
.set_pkt_capture_mode = dp_set_pkt_capture_mode,
|
||||
#endif
|
||||
#if defined(WLAN_FEATURE_11BE_MLO) && defined(WLAN_MLO_MULTI_CHIP)
|
||||
.txrx_recovery_vdev_flush_peers = dp_recovery_vdev_flush_peers,
|
||||
#endif
|
||||
};
|
||||
|
||||
static struct cdp_ctrl_ops dp_ops_ctrl = {
|
||||
|
Reference in New Issue
Block a user