qcacmn: Add a cdp api to stop the ppe ds
Add a cdp api to stop the ppe direct switch from control path Change-Id: Id1c5d5c0e2b80d6fa0fa7b907fac133f815f9627 CRs-Fixed: 3356472
This commit is contained in:

committed by
Madan Koyyalamudi

parent
ea0e2133b3
commit
3548804a60
@@ -1717,6 +1717,25 @@ static inline void cdp_txrx_intr_detach(ol_txrx_soc_handle soc)
|
||||
soc->ops->cmn_drv_ops->txrx_intr_detach(soc);
|
||||
}
|
||||
|
||||
/**
|
||||
* cdp_txrx_ppeds_stop(): function to stop ppeds
|
||||
* @soc: soc handle
|
||||
*/
|
||||
static inline void cdp_txrx_ppeds_stop(ol_txrx_soc_handle soc)
|
||||
{
|
||||
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_ppeds_stop)
|
||||
return;
|
||||
|
||||
soc->ops->cmn_drv_ops->txrx_ppeds_stop(soc);
|
||||
}
|
||||
|
||||
/**
|
||||
* cdp_txrx_umac_reset_deinit(): De-initialize UMAC HW reset module
|
||||
* @soc: soc handle
|
||||
|
@@ -531,6 +531,7 @@ struct cdp_cmn_ops {
|
||||
|
||||
QDF_STATUS (*txrx_intr_attach)(struct cdp_soc_t *soc_handle);
|
||||
void (*txrx_intr_detach)(struct cdp_soc_t *soc_handle);
|
||||
void (*txrx_ppeds_stop)(struct cdp_soc_t *soc_handle);
|
||||
QDF_STATUS (*set_pn_check)(struct cdp_soc_t *soc_handle,
|
||||
uint8_t vdev_id, uint8_t *peermac,
|
||||
enum cdp_sec_type sec_type,
|
||||
|
@@ -309,7 +309,8 @@ struct dp_soc_be {
|
||||
struct dp_hw_cookie_conversion_t tx_cc_ctx[MAX_TXDESC_POOLS];
|
||||
struct dp_hw_cookie_conversion_t rx_cc_ctx[MAX_RXDESC_POOLS];
|
||||
#ifdef WLAN_SUPPORT_PPEDS
|
||||
bool ppeds_int_mode_enabled;
|
||||
uint8_t ppeds_int_mode_enabled:1,
|
||||
ppeds_stopped:1;
|
||||
struct dp_srng reo2ppe_ring;
|
||||
struct dp_srng ppe2tcl_ring;
|
||||
struct dp_srng ppe_release_ring;
|
||||
|
@@ -3481,6 +3481,20 @@ static inline bool dp_skip_rx_mon_ring_mask_set(struct dp_soc *soc)
|
||||
}
|
||||
#endif
|
||||
|
||||
/*
|
||||
* dp_soc_ppeds_stop() - Stop PPE DS processing
|
||||
* @txrx_soc: DP SOC handle
|
||||
*
|
||||
* Return: none
|
||||
*/
|
||||
static void dp_soc_ppeds_stop(struct cdp_soc_t *soc_handle)
|
||||
{
|
||||
struct dp_soc *soc = (struct dp_soc *)soc_handle;
|
||||
|
||||
if (soc->arch_ops.txrx_soc_ppeds_stop)
|
||||
soc->arch_ops.txrx_soc_ppeds_stop(soc);
|
||||
}
|
||||
|
||||
/*
|
||||
* dp_soc_interrupt_detach() - Deregister any allocations done for interrupts
|
||||
* @txrx_soc: DP SOC handle
|
||||
@@ -13969,6 +13983,7 @@ static struct cdp_cmn_ops dp_ops_cmn = {
|
||||
.display_stats = dp_txrx_dump_stats,
|
||||
.txrx_intr_attach = dp_soc_interrupt_attach_wrapper,
|
||||
.txrx_intr_detach = dp_soc_interrupt_detach,
|
||||
.txrx_ppeds_stop = dp_soc_ppeds_stop,
|
||||
.set_pn_check = dp_set_pn_check_wifi3,
|
||||
.set_key_sec_type = dp_set_key_sec_type_wifi3,
|
||||
.update_config_parameters = dp_update_config_parameters,
|
||||
|
Reference in New Issue
Block a user