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
这个提交包含在:
Arif Hussain
2018-06-01 15:57:51 -07:00
提交者 nshrivas
父节点 a173a184ae
当前提交 ecef5a4024
修改 9 个文件,包含 24 行新增133 行删除

查看文件

@@ -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;
}