qcacmn: Gets vdev by id in spectral component

It starts spectral scan without vdev object, and uses the first vdev
as current vdev. which cause vdev mismatch in some platforms. So pass
vdev object or id when finding current vdev.

Change-Id: Iab55afbe2c98906021a008918f186d3d2dce5871
CRS-Fixed: 2716460
This commit is contained in:
Wu Gao
2020-06-23 11:13:08 +08:00
committed by snandini
parent ee26d03b10
commit b43c68dedf
13 changed files with 154 additions and 57 deletions

View File

@@ -421,11 +421,13 @@ struct spectral_scan_dma_debug_request {
* be atomic.
* @ss_mode: Spectral scan mode
* @req_id: Request identifier
* @vdev_id: VDEV id
* @dma_debug_req: Spectral DMA debug request
*/
struct spectral_cp_request {
enum spectral_scan_mode ss_mode;
uint8_t req_id;
uint8_t vdev_id;
union {
struct spectral_scan_config_request config_req;
struct spectral_scan_action_request action_req;

View File

@@ -127,6 +127,7 @@ QDF_STATUS tgt_get_spectral_config(struct wlan_objmgr_pdev *pdev,
/**
* tgt_start_spectral_scan() - Start spectral scan
* @pdev: Pointer to pdev object
* @vdev_id: VDEV id
* @smode: Spectral scan mode
* @err: Spectral control path error code
*
@@ -135,6 +136,7 @@ QDF_STATUS tgt_get_spectral_config(struct wlan_objmgr_pdev *pdev,
* Return: QDF_STATUS_SUCCESS on success, else QDF_STATUS_E_FAILURE
*/
QDF_STATUS tgt_start_spectral_scan(struct wlan_objmgr_pdev *pdev,
uint8_t vdev_id,
enum spectral_scan_mode smode,
enum spectral_cp_error_code *err);

View File

@@ -197,6 +197,7 @@ tgt_get_spectral_config(struct wlan_objmgr_pdev *pdev,
QDF_STATUS
tgt_start_spectral_scan(struct wlan_objmgr_pdev *pdev,
uint8_t vdev_id,
enum spectral_scan_mode smode,
enum spectral_cp_error_code *err)
{
@@ -210,8 +211,8 @@ tgt_start_spectral_scan(struct wlan_objmgr_pdev *pdev,
return QDF_STATUS_E_FAILURE;
}
return tx_ops->sptrl_tx_ops.sptrlto_start_spectral_scan(pdev, smode,
err);
return tx_ops->sptrl_tx_ops.sptrlto_start_spectral_scan(pdev, vdev_id,
smode, err);
}
QDF_STATUS