Browse Source

qcacmn: Fix MLO mgr notify miss on VDEV repurpose completion

MLO manager will change the VDEV MLO flags on start of VDEV repurpose
and need to reset the flags on end of VDEV repurpose. Currently MLO
manager callback is not called after end of VDEV repurpose and flags
are not reset.

Always call MLO manager to reset the flags on VDEV repurpose completion.

Change-Id: Ie2d323888a01e4f19c439619b5ed267e43f0ce0c
CRs-Fixed: 3798911
Vinod Kumar Pirla 1 năm trước cách đây
mục cha
commit
70ef35de9d
1 tập tin đã thay đổi với 5 bổ sung9 xóa
  1. 5 9
      umac/mlo_mgr/src/wlan_mlo_mgr_link_switch.c

+ 5 - 9
umac/mlo_mgr/src/wlan_mlo_mgr_link_switch.c

@@ -567,30 +567,26 @@ mlo_mgr_link_switch_notification(struct wlan_objmgr_vdev *vdev,
 	case MLO_LINK_SWITCH_NOTIFY_REASON_PRE_START_POST_SER:
 		if (!mlo_check_if_all_vdev_up(vdev)) {
 			mlo_debug("Not all VDEVs up");
-			status = QDF_STATUS_E_AGAIN;
-			break;
+			return QDF_STATUS_E_AGAIN;
 		}
 
 		if (mlo_is_chan_switch_in_progress(vdev)) {
 			mlo_debug("CSA is in progress on one of ML vdevs, abort link switch");
-			status = QDF_STATUS_E_AGAIN;
-			break;
+			return QDF_STATUS_E_AGAIN;
 		}
 
 		if (notify_reason ==
 		    MLO_LINK_SWITCH_NOTIFY_REASON_PRE_START_PRE_SER) {
-			status = QDF_STATUS_SUCCESS;
-			break;
+			return QDF_STATUS_SUCCESS;
 		}
 
-		status = mlo_mgr_link_switch_osif_notification(vdev,
-							       lswitch_req);
 		break;
 	default:
-		status = QDF_STATUS_SUCCESS;
 		break;
 	}
 
+	status = mlo_mgr_link_switch_osif_notification(vdev, lswitch_req);
+
 	return status;
 }