qcacmn: Add api to get dfs offload service bit in target_if
Add api to get dfs offload service bit in target_if. Change-Id: I771ae8a2194250769d6e6d609b0a1863012110ea CRs-Fixed: 2264477
这个提交包含在:
@@ -83,14 +83,6 @@ bool lmac_is_mode_offload(struct wlan_objmgr_pdev *pdev);
|
||||
*/
|
||||
uint16_t lmac_get_ah_devid(struct wlan_objmgr_pdev *pdev);
|
||||
|
||||
/**
|
||||
* lmac_is_mode_dfs_offload() - Check the DFS offload is enabled.
|
||||
* @psoc: Pointer to PSOC structure.
|
||||
*
|
||||
* returns true if DFS offload is enabled, otherwise returns false
|
||||
*/
|
||||
bool lmac_is_mode_dfs_offload(struct wlan_objmgr_psoc *psoc);
|
||||
|
||||
/**
|
||||
* lmac_get_ext_busy() - Get ext_busy.
|
||||
* @pdev: Pointer to PDEV structure.
|
||||
|
@@ -298,14 +298,12 @@ QDF_STATUS tgt_dfs_cac_complete(struct wlan_objmgr_pdev *pdev,
|
||||
/**
|
||||
* tgt_dfs_reg_ev_handler() - Register dfs events.
|
||||
* @psoc: Pointer to psoc.
|
||||
* @dfs_offload: phy err processing offloaded to firmware.
|
||||
*
|
||||
* Register dfs events.
|
||||
*
|
||||
* Return: QDF_STATUS.
|
||||
*/
|
||||
QDF_STATUS tgt_dfs_reg_ev_handler(struct wlan_objmgr_psoc *psoc,
|
||||
bool dfs_offload);
|
||||
QDF_STATUS tgt_dfs_reg_ev_handler(struct wlan_objmgr_psoc *psoc);
|
||||
|
||||
/**
|
||||
* tgt_dfs_stop() - Clear dfs timers.
|
||||
|
@@ -337,9 +337,16 @@ QDF_STATUS wlan_dfs_pdev_obj_create_notification(struct wlan_objmgr_pdev *pdev,
|
||||
global_dfs_to_mlme.pdev_component_obj_attach(pdev,
|
||||
WLAN_UMAC_COMP_DFS, (void *)dfs, QDF_STATUS_SUCCESS);
|
||||
dfs->dfs_pdev_obj = pdev;
|
||||
dfs->dfs_is_offload_enabled = lmac_is_mode_dfs_offload(psoc);
|
||||
|
||||
if (!dfs_tx_ops->dfs_is_tgt_offload) {
|
||||
dfs_err(dfs, WLAN_DEBUG_DFS_ALWAYS,
|
||||
"dfs_is_tgt_offload is null");
|
||||
return QDF_STATUS_E_FAILURE;
|
||||
}
|
||||
|
||||
dfs->dfs_is_offload_enabled = dfs_tx_ops->dfs_is_tgt_offload(psoc);
|
||||
dfs_info(dfs, WLAN_DEBUG_DFS_ALWAYS, "dfs_offload %d",
|
||||
dfs->dfs_is_offload_enabled);
|
||||
dfs->dfs_is_offload_enabled);
|
||||
|
||||
dfs = wlan_pdev_get_dfs_obj(pdev);
|
||||
if (dfs_attach(dfs) == 1) {
|
||||
@@ -441,12 +448,8 @@ static void dfs_scan_serialization_comp_info_cb(
|
||||
QDF_STATUS wifi_dfs_psoc_enable(struct wlan_objmgr_psoc *psoc)
|
||||
{
|
||||
QDF_STATUS status;
|
||||
bool dfs_offload;
|
||||
|
||||
dfs_offload = lmac_is_mode_dfs_offload(psoc);
|
||||
dfs_info(NULL, WLAN_DEBUG_DFS_ALWAYS, "dfs_offload %d", dfs_offload);
|
||||
|
||||
status = tgt_dfs_reg_ev_handler(psoc, dfs_offload);
|
||||
status = tgt_dfs_reg_ev_handler(psoc);
|
||||
if (status != QDF_STATUS_SUCCESS) {
|
||||
dfs_err(NULL, WLAN_DEBUG_DFS_ALWAYS, "tgt_dfs_reg_ev_handler failed");
|
||||
return QDF_STATUS_E_FAILURE;
|
||||
|
@@ -133,19 +133,6 @@ uint16_t lmac_get_ah_devid(struct wlan_objmgr_pdev *pdev)
|
||||
return devid;
|
||||
}
|
||||
|
||||
bool lmac_is_mode_dfs_offload(struct wlan_objmgr_psoc *psoc)
|
||||
{
|
||||
struct wlan_lmac_if_dfs_tx_ops *dfs_tx_ops;
|
||||
bool is_offload = false;
|
||||
|
||||
dfs_tx_ops = &psoc->soc_cb.tx_ops.dfs_tx_ops;
|
||||
|
||||
if (dfs_tx_ops->dfs_is_tgt_offload)
|
||||
dfs_tx_ops->dfs_is_tgt_offload(psoc, &is_offload);
|
||||
|
||||
return is_offload;
|
||||
}
|
||||
|
||||
uint32_t lmac_get_ext_busy(struct wlan_objmgr_pdev *pdev)
|
||||
{
|
||||
struct wlan_objmgr_psoc *psoc;
|
||||
|
@@ -367,8 +367,7 @@ QDF_STATUS tgt_dfs_cac_complete(struct wlan_objmgr_pdev *pdev, uint32_t vdev_id)
|
||||
#endif
|
||||
qdf_export_symbol(tgt_dfs_cac_complete);
|
||||
|
||||
QDF_STATUS tgt_dfs_reg_ev_handler(struct wlan_objmgr_psoc *psoc,
|
||||
bool dfs_offload)
|
||||
QDF_STATUS tgt_dfs_reg_ev_handler(struct wlan_objmgr_psoc *psoc)
|
||||
{
|
||||
struct wlan_lmac_if_dfs_tx_ops *dfs_tx_ops;
|
||||
|
||||
@@ -384,7 +383,7 @@ QDF_STATUS tgt_dfs_reg_ev_handler(struct wlan_objmgr_psoc *psoc,
|
||||
}
|
||||
|
||||
if (dfs_tx_ops->dfs_reg_ev_handler)
|
||||
return dfs_tx_ops->dfs_reg_ev_handler(psoc, dfs_offload);
|
||||
return dfs_tx_ops->dfs_reg_ev_handler(psoc);
|
||||
|
||||
return QDF_STATUS_E_FAILURE;
|
||||
}
|
||||
|
在新工单中引用
屏蔽一个用户