qcacld-3.0: Abort any ongoing p2p scans while enabling NAN
Framework disables p2p before enabling NAN as P2P+NAN concurrency is not supported. NAN operations happens through wifihal and p2p operations happen through wpa_supplicant which are two different userspace components. Wifihal call to enable NAN may come to host driver before disabling p2p through wpa_supplicant. There are high chances for p2p scan to be in running state while NAN enable is received. Firmware NAN state machine goes to inconsistent state and disables NAN as p2p scan is running in such cases. So, stop the ongoing p2p scan before enabling NAN as P2P+NAN concurrency is not supported currently. Also, forward the pdev to NAN component inorder to iterate through all P2P vdevs. Change-Id: Ibe30a5ebe90514aee4f6721cdc5476570524cad8 CRs-Fixed: 3054576
This commit is contained in:

committed by
Madan Koyyalamudi

parent
c7c5e7e32e
commit
3d0e41cad1
@@ -677,7 +677,7 @@ QDF_STATUS ucfg_nan_discovery_req(void *in_req, uint32_t req_type)
|
||||
return status;
|
||||
}
|
||||
|
||||
status = nan_discovery_pre_enable(psoc,
|
||||
status = nan_discovery_pre_enable(req->pdev,
|
||||
req->social_chan_2g_freq);
|
||||
if (QDF_IS_STATUS_SUCCESS(status)) {
|
||||
len = sizeof(struct nan_enable_req) +
|
||||
@@ -1190,6 +1190,7 @@ QDF_STATUS ucfg_disable_nan_discovery(struct wlan_objmgr_psoc *psoc,
|
||||
nan_req = qdf_mem_malloc(sizeof(*nan_req) + data_len);
|
||||
if (!nan_req)
|
||||
return -ENOMEM;
|
||||
qdf_mem_zero(nan_req, sizeof(*nan_req) + data_len);
|
||||
|
||||
nan_req->psoc = psoc;
|
||||
nan_req->disable_2g_discovery = true;
|
||||
|
Reference in New Issue
Block a user