|
@@ -5969,7 +5969,7 @@ target_if_start_spectral_scan(struct wlan_objmgr_pdev *pdev,
|
|
|
spectral->params_valid[smode] = true;
|
|
|
}
|
|
|
|
|
|
- qdf_spin_lock(&spectral->spectral_lock);
|
|
|
+ qdf_spin_lock_bh(&spectral->spectral_lock);
|
|
|
if (smode == SPECTRAL_SCAN_MODE_AGILE) {
|
|
|
QDF_STATUS status;
|
|
|
bool is_overlapping;
|
|
@@ -5985,7 +5985,7 @@ target_if_start_spectral_scan(struct wlan_objmgr_pdev *pdev,
|
|
|
(spectral, ch_width, spectral->params
|
|
|
[SPECTRAL_SCAN_MODE_AGILE].ss_frequency.cfreq2 > 0);
|
|
|
if (QDF_IS_STATUS_ERROR(status)) {
|
|
|
- qdf_spin_unlock(&spectral->spectral_lock);
|
|
|
+ qdf_spin_unlock_bh(&spectral->spectral_lock);
|
|
|
spectral_err("Failed to populate channel width");
|
|
|
return QDF_STATUS_E_FAILURE;
|
|
|
}
|
|
@@ -5994,13 +5994,13 @@ target_if_start_spectral_scan(struct wlan_objmgr_pdev *pdev,
|
|
|
|
|
|
if (!spectral->params[smode].ss_frequency.cfreq1) {
|
|
|
*err = SPECTRAL_SCAN_ERR_PARAM_NOT_INITIALIZED;
|
|
|
- qdf_spin_unlock(&spectral->spectral_lock);
|
|
|
+ qdf_spin_unlock_bh(&spectral->spectral_lock);
|
|
|
spectral_err("Agile Spectral cfreq1 is 0");
|
|
|
return QDF_STATUS_E_FAILURE;
|
|
|
} else if (agile_ch_width == CH_WIDTH_80P80MHZ &&
|
|
|
!spectral->params[smode].ss_frequency.cfreq2) {
|
|
|
*err = SPECTRAL_SCAN_ERR_PARAM_NOT_INITIALIZED;
|
|
|
- qdf_spin_unlock(&spectral->spectral_lock);
|
|
|
+ qdf_spin_unlock_bh(&spectral->spectral_lock);
|
|
|
spectral_err("Agile Spectral cfreq2 is 0");
|
|
|
return QDF_STATUS_E_FAILURE;
|
|
|
}
|
|
@@ -6010,13 +6010,13 @@ target_if_start_spectral_scan(struct wlan_objmgr_pdev *pdev,
|
|
|
&spectral->params[smode].ss_frequency,
|
|
|
&is_overlapping);
|
|
|
if (QDF_IS_STATUS_ERROR(status)) {
|
|
|
- qdf_spin_unlock(&spectral->spectral_lock);
|
|
|
+ qdf_spin_unlock_bh(&spectral->spectral_lock);
|
|
|
return QDF_STATUS_E_FAILURE;
|
|
|
}
|
|
|
|
|
|
if (is_overlapping) {
|
|
|
*err = SPECTRAL_SCAN_ERR_PARAM_INVALID_VALUE;
|
|
|
- qdf_spin_unlock(&spectral->spectral_lock);
|
|
|
+ qdf_spin_unlock_bh(&spectral->spectral_lock);
|
|
|
return QDF_STATUS_E_FAILURE;
|
|
|
}
|
|
|
}
|
|
@@ -6024,7 +6024,7 @@ target_if_start_spectral_scan(struct wlan_objmgr_pdev *pdev,
|
|
|
/* Populate detectot list first */
|
|
|
ret = target_if_spectral_detector_list_init(spectral);
|
|
|
if (QDF_IS_STATUS_ERROR(ret)) {
|
|
|
- qdf_spin_unlock(&spectral->spectral_lock);
|
|
|
+ qdf_spin_unlock_bh(&spectral->spectral_lock);
|
|
|
spectral_err("Failed to initialize detector list");
|
|
|
return ret;
|
|
|
}
|
|
@@ -6034,7 +6034,7 @@ target_if_start_spectral_scan(struct wlan_objmgr_pdev *pdev,
|
|
|
spectral->params[SPECTRAL_SCAN_MODE_AGILE].
|
|
|
ss_frequency.cfreq2 > 0);
|
|
|
if (QDF_IS_STATUS_ERROR(ret)) {
|
|
|
- qdf_spin_unlock(&spectral->spectral_lock);
|
|
|
+ qdf_spin_unlock_bh(&spectral->spectral_lock);
|
|
|
spectral_err("Failed to get channel widths");
|
|
|
return ret;
|
|
|
}
|
|
@@ -6043,7 +6043,7 @@ target_if_start_spectral_scan(struct wlan_objmgr_pdev *pdev,
|
|
|
spectral->pdev_obj,
|
|
|
&is_session_info_expected);
|
|
|
if (QDF_IS_STATUS_ERROR(ret)) {
|
|
|
- qdf_spin_unlock(&spectral->spectral_lock);
|
|
|
+ qdf_spin_unlock_bh(&spectral->spectral_lock);
|
|
|
spectral_err("Failed to check if session info is expected");
|
|
|
return ret;
|
|
|
}
|
|
@@ -6053,7 +6053,7 @@ target_if_start_spectral_scan(struct wlan_objmgr_pdev *pdev,
|
|
|
ret = target_if_spectral_populate_session_report_info(spectral,
|
|
|
smode);
|
|
|
if (QDF_IS_STATUS_ERROR(ret)) {
|
|
|
- qdf_spin_unlock(&spectral->spectral_lock);
|
|
|
+ qdf_spin_unlock_bh(&spectral->spectral_lock);
|
|
|
spectral_err("Failed to populate per-session report info");
|
|
|
return QDF_STATUS_E_FAILURE;
|
|
|
}
|
|
@@ -6061,7 +6061,7 @@ target_if_start_spectral_scan(struct wlan_objmgr_pdev *pdev,
|
|
|
ret = target_if_spectral_populate_session_det_host_info(
|
|
|
spectral, smode);
|
|
|
if (QDF_IS_STATUS_ERROR(ret)) {
|
|
|
- qdf_spin_unlock(&spectral->spectral_lock);
|
|
|
+ qdf_spin_unlock_bh(&spectral->spectral_lock);
|
|
|
spectral_err("Failed to populate per-session detector info");
|
|
|
return QDF_STATUS_E_FAILURE;
|
|
|
}
|
|
@@ -6072,7 +6072,7 @@ target_if_start_spectral_scan(struct wlan_objmgr_pdev *pdev,
|
|
|
err);
|
|
|
|
|
|
spectral->sscan_width_configured[smode] = false;
|
|
|
- qdf_spin_unlock(&spectral->spectral_lock);
|
|
|
+ qdf_spin_unlock_bh(&spectral->spectral_lock);
|
|
|
|
|
|
return QDF_STATUS_SUCCESS;
|
|
|
}
|
|
@@ -6116,7 +6116,7 @@ target_if_stop_spectral_scan(struct wlan_objmgr_pdev *pdev,
|
|
|
}
|
|
|
p_sops = GET_TARGET_IF_SPECTRAL_OPS(spectral);
|
|
|
|
|
|
- qdf_spin_lock(&spectral->spectral_lock);
|
|
|
+ qdf_spin_lock_bh(&spectral->spectral_lock);
|
|
|
p_sops->stop_spectral_scan(spectral, smode);
|
|
|
if (spectral->classify_scan) {
|
|
|
/* TODO : Check if this logic is necessary */
|
|
@@ -6141,7 +6141,7 @@ target_if_stop_spectral_scan(struct wlan_objmgr_pdev *pdev,
|
|
|
spectral->report_info[smode].valid = false;
|
|
|
qdf_spin_unlock_bh(&spectral->session_report_info_lock);
|
|
|
|
|
|
- qdf_spin_unlock(&spectral->spectral_lock);
|
|
|
+ qdf_spin_unlock_bh(&spectral->spectral_lock);
|
|
|
|
|
|
return QDF_STATUS_SUCCESS;
|
|
|
}
|