qcacmn: Update self link address also after roaming

When updating the AP link address and channel info after
roaming, update the self link address also to the link switch
context on each vdev. This information will be fetched while
sending roam + auth event to userspace after roaming.

Change-Id: I363a5ee8d65bb21d84c15879996369f4e397f2a6
CRs-Fixed: 3589401
This commit is contained in:
Pragaspathi Thilagaraj
2023-08-21 19:50:30 +05:30
committed by Rahul Choudhary
부모 5f864ea874
커밋 7f18f6e441
3개의 변경된 파일33개의 추가작업 그리고 72개의 파일을 삭제

파일 보기

@@ -192,21 +192,6 @@ mlo_mgr_update_link_info_mac_addr(struct wlan_objmgr_vdev *vdev,
*/
void mlo_mgr_update_link_info_reset(struct wlan_mlo_dev_context *ml_dev);
/**
* mlo_mgr_roam_update_ap_link_info() - Update AP links information
* @vdev: Object Manager vdev
* @link_id: Link id of the AP MLD link
* @ap_link_addr: AP link addresses
* @channel: wlan channel information of the link
*
* Update AP link information for each link of AP MLD
* Return: void
*/
void mlo_mgr_roam_update_ap_link_info(struct wlan_objmgr_vdev *vdev,
uint8_t link_id,
uint8_t *ap_link_addr,
struct wlan_channel channel);
/**
* mlo_mgr_update_ap_link_info() - Update AP links information
* @vdev: Object Manager vdev

파일 보기

@@ -55,34 +55,6 @@ void mlo_mgr_update_link_info_mac_addr(struct wlan_objmgr_vdev *vdev,
}
}
void mlo_mgr_roam_update_ap_link_info(struct wlan_objmgr_vdev *vdev,
uint8_t link_id, uint8_t *ap_link_addr,
struct wlan_channel channel)
{
struct mlo_link_info *link_info;
uint8_t iter;
if (!vdev || !vdev->mlo_dev_ctx || !vdev->mlo_dev_ctx->link_ctx ||
!ap_link_addr)
return;
for (iter = 0; iter < WLAN_MAX_ML_BSS_LINKS; iter++) {
link_info = &vdev->mlo_dev_ctx->link_ctx->links_info[iter];
if (link_id == link_info->link_id)
break;
}
if (iter == WLAN_MAX_ML_BSS_LINKS)
return;
qdf_mem_copy(&link_info->ap_link_addr, ap_link_addr, QDF_MAC_ADDR_SIZE);
qdf_mem_copy(link_info->link_chan_info, &channel, sizeof(channel));
mlo_debug("Update AP Link info for link_id: %d, vdev_id:%d, link_addr:" QDF_MAC_ADDR_FMT,
link_info->link_id, link_info->vdev_id,
QDF_MAC_ADDR_REF(link_info->ap_link_addr.bytes));
}
void mlo_mgr_update_ap_link_info(struct wlan_objmgr_vdev *vdev, uint8_t link_id,
uint8_t *ap_link_addr,
struct wlan_channel channel)