qcacmn: Add API to get link peer assoc req buffer
Add API to get link peer assoc req buffer Change-Id: I293a86f8eaaaf5a2e02802388960386848201a2c
This commit is contained in:

committed by
Madan Koyyalamudi

parent
ff8ee42eac
commit
b981e05832
@@ -208,6 +208,16 @@ void mlo_mlme_peer_delete(struct wlan_objmgr_peer *peer);
|
||||
*/
|
||||
void mlo_mlme_peer_assoc_resp(struct wlan_objmgr_peer *peer);
|
||||
|
||||
/**
|
||||
* mlo_mlme_get_link_assoc_req() - API to get link assoc req buffer
|
||||
* @peer: Object manager peer
|
||||
* @link_ix: link id of vdev
|
||||
*
|
||||
* Return: assoc req buffer
|
||||
*/
|
||||
qdf_nbuf_t mlo_mlme_get_link_assoc_req(struct wlan_objmgr_peer *peer,
|
||||
uint8_t link_ix);
|
||||
|
||||
/**
|
||||
* mlo_get_link_vdev_ix() - Get index of link VDEV in MLD
|
||||
* @ml_dev: ML device context
|
||||
|
@@ -257,6 +257,17 @@ QDF_STATUS wlan_mlo_link_peer_attach(struct wlan_mlo_peer_context *ml_peer,
|
||||
*/
|
||||
QDF_STATUS wlan_mlo_link_peer_delete(struct wlan_objmgr_peer *peer);
|
||||
|
||||
/**
|
||||
* mlo_peer_get_link_peer_assoc_req_buf() - API to get link assoc req buffer
|
||||
* @peer: Object manager peer
|
||||
* @link_ix: link id of vdev
|
||||
*
|
||||
* Return: assoc req buffer
|
||||
*/
|
||||
qdf_nbuf_t mlo_peer_get_link_peer_assoc_req_buf(
|
||||
struct wlan_mlo_peer_context *ml_peer,
|
||||
uint8_t link_ix);
|
||||
|
||||
/**
|
||||
** APIs to operations on ML peer object
|
||||
*/
|
||||
|
@@ -293,6 +293,7 @@ struct mlo_partner_info {
|
||||
* @mlo_mlme_ext_peer_assoc_fail: Callback to notify peer assoc failure
|
||||
* @mlo_mlme_ext_peer_delete: Callback to initiate link peer delete
|
||||
* @mlo_mlme_ext_assoc_resp: Callback to initiate assoc resp
|
||||
* @mlo_mlme_get_link_assoc_req: Calback to get link assoc req buffer
|
||||
*/
|
||||
struct mlo_mlme_ext_ops {
|
||||
QDF_STATUS (*mlo_mlme_ext_validate_conn_req)(
|
||||
@@ -307,5 +308,7 @@ struct mlo_mlme_ext_ops {
|
||||
void (*mlo_mlme_ext_peer_assoc_fail)(struct wlan_objmgr_peer *peer);
|
||||
void (*mlo_mlme_ext_peer_delete)(struct wlan_objmgr_peer *peer);
|
||||
void (*mlo_mlme_ext_assoc_resp)(struct wlan_objmgr_peer *peer);
|
||||
qdf_nbuf_t (*mlo_mlme_get_link_assoc_req)(struct wlan_objmgr_peer *peer,
|
||||
uint8_t link_ix);
|
||||
};
|
||||
#endif
|
||||
|
@@ -195,6 +195,18 @@ void mlo_mlme_peer_assoc_resp(struct wlan_objmgr_peer *peer)
|
||||
mlo_ctx->mlme_ops->mlo_mlme_ext_assoc_resp(peer);
|
||||
}
|
||||
|
||||
qdf_nbuf_t mlo_mlme_get_link_assoc_req(struct wlan_objmgr_peer *peer,
|
||||
uint8_t link_ix)
|
||||
{
|
||||
struct mlo_mgr_context *mlo_ctx = wlan_objmgr_get_mlo_ctx();
|
||||
|
||||
if (!mlo_ctx || !mlo_ctx->mlme_ops ||
|
||||
!mlo_ctx->mlme_ops->mlo_mlme_get_link_assoc_req)
|
||||
return NULL;
|
||||
|
||||
return mlo_ctx->mlme_ops->mlo_mlme_get_link_assoc_req(peer, link_ix);
|
||||
}
|
||||
|
||||
uint8_t mlo_get_link_vdev_ix(struct wlan_mlo_dev_context *ml_dev,
|
||||
struct wlan_objmgr_vdev *vdev)
|
||||
{
|
||||
|
@@ -643,3 +643,21 @@ QDF_STATUS wlan_mlo_link_peer_delete(struct wlan_objmgr_peer *peer)
|
||||
|
||||
return QDF_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
qdf_export_symbol(wlan_mlo_link_peer_delete);
|
||||
|
||||
qdf_nbuf_t mlo_peer_get_link_peer_assoc_req_buf(
|
||||
struct wlan_mlo_peer_context *ml_peer,
|
||||
uint8_t link_ix)
|
||||
{
|
||||
struct wlan_objmgr_peer *peer = NULL;
|
||||
qdf_nbuf_t assocbuf = NULL;
|
||||
|
||||
peer = wlan_mlo_peer_get_assoc_peer(ml_peer);
|
||||
if (!peer)
|
||||
return NULL;
|
||||
|
||||
assocbuf = mlo_mlme_get_link_assoc_req(peer, link_ix);
|
||||
|
||||
return assocbuf;
|
||||
}
|
||||
|
Reference in New Issue
Block a user