qcacmn: add MLME changes for ML reconfig

1) add op flags to indicate Link removal in progress
2) update API to include link removal check for ML peer create
3) add API to check whether all link peers to be deleted.

CRs-Fixed: 3341256
Change-Id: I8fabd19d3321315eb13d874a7e9b2e93392a7886
这个提交包含在:
Srinivas Pitla
2022-11-28 19:19:14 -08:00
提交者 Madan Koyyalamudi
父节点 9c289d3485
当前提交 3bae1f975c
修改 11 个文件,包含 190 行新增32 行删除

查看文件

@@ -235,10 +235,11 @@ QDF_STATUS wlan_vdev_is_mlo_peer_create_allowed(struct wlan_objmgr_vdev *vdev)
enum wlan_vdev_state substate;
bool acs_in_progress;
QDF_STATUS ret;
QDF_STATUS status = QDF_STATUS_E_FAILURE;
if (!vdev) {
mlme_err("vdev is null");
return QDF_STATUS_E_FAILURE;
return status;
}
state = wlan_vdev_mlme_get_state(vdev);
@@ -248,7 +249,7 @@ QDF_STATUS wlan_vdev_is_mlo_peer_create_allowed(struct wlan_objmgr_vdev *vdev)
ret = mlme_ext_hdl_get_acs_in_progress(vdev, &acs_in_progress);
if (ret != QDF_STATUS_SUCCESS) {
mlme_err("Unable to get ACS in progress status");
return QDF_STATUS_E_FAILURE;
return status;
}
if (!acs_in_progress)
@@ -256,9 +257,15 @@ QDF_STATUS wlan_vdev_is_mlo_peer_create_allowed(struct wlan_objmgr_vdev *vdev)
((state == WLAN_VDEV_S_SUSPEND) &&
(substate == WLAN_VDEV_SS_SUSPEND_CSA_RESTART)) ||
(state == WLAN_VDEV_S_DFS_CAC_WAIT))
return QDF_STATUS_SUCCESS;
status = QDF_STATUS_SUCCESS;
return QDF_STATUS_E_FAILURE;
/* with link rejection feature, this check can be removed */
if (wlan_vdev_mlme_op_flags_get(vdev, WLAN_VDEV_OP_MLO_STOP_LINK_DEL) ||
wlan_vdev_mlme_op_flags_get(vdev,
WLAN_VDEV_OP_MLO_LINK_TBTT_COMPLETE))
status = QDF_STATUS_E_FAILURE;
return status;
}
QDF_STATUS wlan_vdev_is_restart_progress(struct wlan_objmgr_vdev *vdev)