qcacmn: Define an API to check if any MLO link is disconnecting
Add an MLO API to check connection manager state machine if any MLO link is in disconnecting. Change-Id: I411ed9c9ab7cc0378147b5a4cf930b43cd3f7814 CRs-Fixed: 3628519
Este cometimento está contido em:

cometido por
Rahul Choudhary

ascendente
379833c37a
cometimento
fa6e3838d9
@@ -1175,6 +1175,15 @@ void mlo_defer_set_keys(struct wlan_objmgr_vdev *vdev,
|
||||
bool mlo_is_set_key_defered(struct wlan_objmgr_vdev *vdev,
|
||||
uint8_t link_id);
|
||||
|
||||
/**
|
||||
* mlo_is_any_link_disconnecting: Check if any ML link is disconnecting
|
||||
* @vdev: vdev obj
|
||||
*
|
||||
* Check connection manager state machine if any ML link is disconnecting
|
||||
*
|
||||
* Return: boolean value true or false
|
||||
*/
|
||||
bool mlo_is_any_link_disconnecting(struct wlan_objmgr_vdev *vdev);
|
||||
#else
|
||||
static inline
|
||||
void mlo_defer_set_keys(struct wlan_objmgr_vdev *vdev,
|
||||
@@ -1188,5 +1197,11 @@ bool mlo_is_set_key_defered(struct wlan_objmgr_vdev *vdev,
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
static inline
|
||||
bool mlo_is_any_link_disconnecting(struct wlan_objmgr_vdev *vdev)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
#endif
|
||||
#endif
|
||||
|
@@ -2783,4 +2783,25 @@ wlan_mlo_send_vdev_pause(struct wlan_objmgr_psoc *psoc,
|
||||
if (QDF_IS_STATUS_ERROR(status))
|
||||
mlo_err("Failed to send vdev pause to FW");
|
||||
}
|
||||
|
||||
#ifdef WLAN_FEATURE_11BE_MLO_ADV_FEATURE
|
||||
bool mlo_is_any_link_disconnecting(struct wlan_objmgr_vdev *vdev)
|
||||
{
|
||||
struct wlan_objmgr_vdev *wlan_vdev_list[WLAN_UMAC_MLO_MAX_VDEVS];
|
||||
uint16_t vdev_count = 0, i;
|
||||
bool status = false;
|
||||
|
||||
if (!vdev)
|
||||
return status;
|
||||
|
||||
mlo_sta_get_vdev_list(vdev, &vdev_count, wlan_vdev_list);
|
||||
for (i = 0; i < vdev_count; i++) {
|
||||
if (!status && wlan_cm_is_vdev_disconnecting(wlan_vdev_list[i]))
|
||||
status = true;
|
||||
mlo_release_vdev_ref(wlan_vdev_list[i]);
|
||||
}
|
||||
|
||||
return status;
|
||||
}
|
||||
#endif
|
||||
#endif
|
||||
|
Criar uma nova questão referindo esta
Bloquear um utilizador