Эх сурвалжийг харах

qcacld-3.0: Abort P2P ROC request before BSS start

Currently, supplicant sends roc request and hostapd sends
vdev start request to host driver. After processing these
request, host driver sends it to firmware.
But for ROC request having long dwell time, firmware can not
handle vdev start req as it waits for ROC request completed
(timeout occurs). This is leads to crash in firmware.

So, to fix this issue, host driver aborts p2p roc request
before starting BSS (sending vdev start request).

Change-Id: I956428cf94015ac6c4ff7063ef9b060146e4377b
CRs-Fixed: 3270079
Rahul Gusain 2 жил өмнө
parent
commit
e7b08c495d

+ 4 - 0
components/cmn_services/interface_mgr/src/wlan_if_mgr_sap.c

@@ -29,6 +29,7 @@
 #include "wlan_tdls_api.h"
 #include "wlan_p2p_api.h"
 #include "wlan_mlme_vdev_mgr_interface.h"
+#include "wlan_p2p_ucfg_api.h"
 
 QDF_STATUS if_mgr_ap_start_bss(struct wlan_objmgr_vdev *vdev,
 			       struct if_mgr_event_data *event_data)
@@ -62,6 +63,9 @@ QDF_STATUS if_mgr_ap_start_bss(struct wlan_objmgr_vdev *vdev,
 		/* Disable Roaming on all vdev's before starting bss */
 		if_mgr_disable_roaming(pdev, vdev, RSO_START_BSS);
 
+	/* abort p2p roc before starting the BSS for sync event */
+	ucfg_p2p_cleanup_roc_by_psoc(psoc);
+
 	return QDF_STATUS_SUCCESS;
 }