qcacmn: Allow MLO sta connetion with single link
For single link MLO connection, there is no partner peer creation, so wlan_mlo_link_peer_attach is not triggered. wlan_mlo_peer_create is good enough to trigger mlo_mlme_peer_assoc_resp. Change-Id: Ia76503e146a07d15d7b263aa36f9e8c4d110fc6e CRs-Fixed: 3168623
This commit is contained in:

committed by
Madan Koyyalamudi

parent
65dd63b576
commit
67df961d63
@@ -745,6 +745,7 @@ QDF_STATUS wlan_mlo_peer_create(struct wlan_objmgr_vdev *vdev,
|
|||||||
struct wlan_objmgr_vdev *vdev_link;
|
struct wlan_objmgr_vdev *vdev_link;
|
||||||
QDF_STATUS status;
|
QDF_STATUS status;
|
||||||
uint16_t i;
|
uint16_t i;
|
||||||
|
struct wlan_objmgr_peer *assoc_peer;
|
||||||
|
|
||||||
/* get ML VDEV from VDEV */
|
/* get ML VDEV from VDEV */
|
||||||
ml_dev = vdev->mlo_dev_ctx;
|
ml_dev = vdev->mlo_dev_ctx;
|
||||||
@@ -894,6 +895,20 @@ QDF_STATUS wlan_mlo_peer_create(struct wlan_objmgr_vdev *vdev,
|
|||||||
ml_dev->mld_id,
|
ml_dev->mld_id,
|
||||||
QDF_MAC_ADDR_REF(ml_peer->peer_mld_addr.bytes),
|
QDF_MAC_ADDR_REF(ml_peer->peer_mld_addr.bytes),
|
||||||
ml_peer);
|
ml_peer);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* wlan_mlo_peer_create() is trigggered after getting peer
|
||||||
|
* assoc confirm from FW. For single link MLO connection, it is
|
||||||
|
* OK to trigger assoc response from here.
|
||||||
|
*/
|
||||||
|
if (wlan_vdev_mlme_get_opmode(vdev) == QDF_SAP_MODE) {
|
||||||
|
if (ml_peer->max_links == ml_peer->link_peer_cnt) {
|
||||||
|
assoc_peer = ml_peer->peer_list[0].link_peer;
|
||||||
|
if (assoc_peer)
|
||||||
|
mlo_mlme_peer_assoc_resp(assoc_peer);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return QDF_STATUS_SUCCESS;
|
return QDF_STATUS_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user