qcacmn: Add usenol support for full offload

In fulloffload mode, based on the value of the usenol variable decide
whether to add the channel to NOL or not. In future, we need to merge
this code with non-full offload. That will remove redundant code.

Change-Id: I2bb403c3983a4a1eac906e6c13a3ec6a13fdc436
CRs-fixed: 2102829
This commit is contained in:
Shaakir Mohamed
2017-09-15 15:52:21 -07:00
کامیت شده توسط snandini
والد 42978fd43f
کامیت 6f35bb0636
8فایلهای تغییر یافته به همراه80 افزوده شده و 47 حذف شده

مشاهده پرونده

@@ -228,15 +228,15 @@ QDF_STATUS utils_dfs_get_update_nol_flag(struct wlan_objmgr_pdev *pdev,
bool *nol_flag);
/**
* utils_dfs_get_rn_use_nol() - Get usenol.
* utils_dfs_get_dfs_use_nol() - Get usenol.
* @pdev: Pointer to DFS pdev object.
* @rn_use_nol: Pointer to rn_use_nol.
* @dfs_use_nol: Pointer to dfs_use_nol.
*
* wrapper function for dfs_get_rn_use_nol(). this
* wrapper function for dfs_get_dfs_use_nol(). this
* function called from outside of dfs component.
*/
QDF_STATUS utils_dfs_get_rn_use_nol(struct wlan_objmgr_pdev *pdev,
int *rn_use_nol);
QDF_STATUS utils_dfs_get_dfs_use_nol(struct wlan_objmgr_pdev *pdev,
int *dfs_use_nol);
/**
* utils_dfs_get_nol_timeout() - Get NOL timeout.

مشاهده پرونده

@@ -233,12 +233,34 @@ QDF_STATUS tgt_dfs_process_radar_ind(struct wlan_objmgr_pdev *pdev,
return QDF_STATUS_E_FAILURE;
}
dfs_process_radar_found_indication(dfs, radar_found);
dfs_mlme_mark_dfs(pdev, dfs->dfs_curchan->dfs_ch_ieee,
dfs->dfs_curchan->dfs_ch_freq,
dfs->dfs_curchan->dfs_ch_vhtop_ch_freq_seg2,
dfs->dfs_curchan->dfs_ch_flags);
/*
* Check if the current channel is a non DFS channel
*/
if (!(IEEE80211_IS_CHAN_DFS(dfs->dfs_curchan) ||
((IEEE80211_IS_CHAN_11AC_VHT160(dfs->dfs_curchan) ||
IEEE80211_IS_CHAN_11AC_VHT80_80(dfs->dfs_curchan)) &&
IEEE80211_IS_CHAN_DFS_CFREQ2(dfs->dfs_curchan)))) {
dfs_err(dfs, WLAN_DEBUG_DFS_ALWAYS, "radar event on a non-DFS channel");
return QDF_STATUS_E_FAILURE;
}
if (dfs->dfs_use_nol) {
dfs_process_radar_found_indication(dfs, radar_found);
dfs_mlme_mark_dfs(pdev, dfs->dfs_curchan->dfs_ch_ieee,
dfs->dfs_curchan->dfs_ch_freq,
dfs->dfs_curchan->dfs_ch_vhtop_ch_freq_seg2,
dfs->dfs_curchan->dfs_ch_flags);
} else{
/* We are in test mode and should send a CSA back
* to same channel.
*/
qdf_timer_stop(&dfs->wlan_dfstesttimer);
dfs->wlan_dfstest = 1;
dfs->wlan_dfstest_ieeechan = dfs->dfs_curchan->dfs_ch_ieee;
dfs->wlan_dfstesttime = 1; /* 1ms */
qdf_timer_mod(&dfs->wlan_dfstesttimer, dfs->wlan_dfstesttime);
}
return QDF_STATUS_SUCCESS;
}
EXPORT_SYMBOL(tgt_dfs_process_radar_ind);

مشاهده پرونده

@@ -193,7 +193,7 @@ QDF_STATUS utils_dfs_get_usenol(struct wlan_objmgr_pdev *pdev, uint16_t *usenol)
if (!dfs)
return QDF_STATUS_E_FAILURE;
*usenol = dfs_get_usenol(dfs);
*usenol = dfs_get_use_nol(dfs);
return QDF_STATUS_SUCCESS;
}
@@ -243,8 +243,8 @@ QDF_STATUS utils_dfs_get_update_nol_flag(struct wlan_objmgr_pdev *pdev,
}
EXPORT_SYMBOL(utils_dfs_get_update_nol_flag);
QDF_STATUS utils_dfs_get_rn_use_nol(struct wlan_objmgr_pdev *pdev,
int *rn_use_nol)
QDF_STATUS utils_dfs_get_dfs_use_nol(struct wlan_objmgr_pdev *pdev,
int *dfs_use_nol)
{
struct wlan_dfs *dfs;
@@ -252,11 +252,11 @@ QDF_STATUS utils_dfs_get_rn_use_nol(struct wlan_objmgr_pdev *pdev,
if (!dfs)
return QDF_STATUS_E_FAILURE;
*rn_use_nol = dfs_get_rn_use_nol(dfs);
*dfs_use_nol = dfs_get_use_nol(dfs);
return QDF_STATUS_SUCCESS;
}
EXPORT_SYMBOL(utils_dfs_get_rn_use_nol);
EXPORT_SYMBOL(utils_dfs_get_dfs_use_nol);
QDF_STATUS utils_dfs_get_nol_timeout(struct wlan_objmgr_pdev *pdev,
int *dfs_nol_timeout)