qcacmn: Add cdp API to enable/disable SWLM
Add CDP APIs to enable or disable the Software latency manager. Change-Id: I1ec182e97a245ec5848660fa912eebe83cfba2fc CRs-Fixed: 2769030
此提交包含在:
@@ -9855,6 +9855,43 @@ dp_vdev_inform_ll_conn(struct cdp_soc_t *soc_hdl, uint8_t vdev_id,
|
||||
return QDF_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
#ifdef WLAN_DP_FEATURE_SW_LATENCY_MGR
|
||||
/**
|
||||
* dp_soc_set_swlm_enable() - Enable/Disable SWLM if initialized.
|
||||
* @soc_hdl: CDP Soc handle
|
||||
* @value: Enable/Disable value
|
||||
*
|
||||
* Returns: QDF_STATUS
|
||||
*/
|
||||
static QDF_STATUS dp_soc_set_swlm_enable(struct cdp_soc_t *soc_hdl,
|
||||
uint8_t value)
|
||||
{
|
||||
struct dp_soc *soc = cdp_soc_t_to_dp_soc(soc_hdl);
|
||||
|
||||
if (!soc->swlm.is_init) {
|
||||
dp_err("SWLM is not initialized");
|
||||
return QDF_STATUS_E_FAILURE;
|
||||
}
|
||||
|
||||
soc->swlm.is_enabled = !!value;
|
||||
|
||||
return QDF_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
/**
|
||||
* dp_soc_is_swlm_enabled() - Check if SWLM is enabled.
|
||||
* @soc_hdl: CDP Soc handle
|
||||
*
|
||||
* Returns: QDF_STATUS
|
||||
*/
|
||||
static uint8_t dp_soc_is_swlm_enabled(struct cdp_soc_t *soc_hdl)
|
||||
{
|
||||
struct dp_soc *soc = cdp_soc_t_to_dp_soc(soc_hdl);
|
||||
|
||||
return soc->swlm.is_enabled;
|
||||
}
|
||||
#endif
|
||||
|
||||
/**
|
||||
* dp_soc_get_dp_txrx_handle() - get context for external-dp from dp soc
|
||||
* @soc_handle: datapath soc handle
|
||||
@@ -11224,6 +11261,10 @@ static struct cdp_misc_ops dp_ops_misc = {
|
||||
.request_rx_hw_stats = dp_request_rx_hw_stats,
|
||||
#endif /* WLAN_FEATURE_STATS_EXT */
|
||||
.vdev_inform_ll_conn = dp_vdev_inform_ll_conn,
|
||||
#ifdef WLAN_DP_FEATURE_SW_LATENCY_MGR
|
||||
.set_swlm_enable = dp_soc_set_swlm_enable,
|
||||
.is_swlm_enabled = dp_soc_is_swlm_enabled,
|
||||
#endif
|
||||
};
|
||||
#endif
|
||||
|
||||
|
新增問題並參考
封鎖使用者