Ver código fonte

qcacld-3.0: Don't send roam init for P2P vdev

Roam offload init command should be sent to firmware only
for STA mode. For P2P vdev, if roam init command is sent,
it causes abnormal target behavior.

Don't send roam init command if the vdev opmode is not
Station.

Change-Id: I0bfc3c6b4bc2eef7459b092101bc4d72c68761e5
CRs-Fixed: 2924563
Pragaspathi Thilagaraj 3 anos atrás
pai
commit
3073bb1391

+ 5 - 0
components/umac/mlme/connection_mgr/dispatcher/src/wlan_cm_tgt_if_tx_api.c

@@ -171,6 +171,11 @@ QDF_STATUS wlan_cm_tgt_send_roam_offload_init(struct wlan_objmgr_psoc *psoc,
 	if (!vdev)
 		return QDF_STATUS_E_INVAL;
 
+	if (wlan_vdev_mlme_get_opmode(vdev) != QDF_STA_MODE) {
+		wlan_objmgr_vdev_release_ref(vdev, WLAN_MLME_NB_ID);
+		return QDF_STATUS_E_INVAL;
+	}
+
 	roam_tx_ops = wlan_cm_roam_get_tx_ops_from_vdev(vdev);
 	if (!roam_tx_ops || !roam_tx_ops->send_roam_offload_init_req) {
 		mlme_err("CM_RSO: vdev%d send_roam_offload_init_req is NULL",