qcacmn: update the bridge vap in partner list
update the bridge vap in partner list Change-Id: I232314d4a91768bc5bbade3285ab925dd834d03f CRs-Fixed: 3550189
This commit is contained in:

gecommit door
Rahul Choudhary

bovenliggende
fe14b1901b
commit
2876ec5043
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Copyright (c) 2019-2021 The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2021-2022 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
* Copyright (c) 2021-2023 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for
|
||||
* any purpose with or without fee is hereby granted, provided that the
|
||||
@@ -55,12 +55,35 @@ wlan_vdev_mgr_fill_mlo_params(struct cdp_vdev_info *vdev_info,
|
||||
{
|
||||
vdev_info->mld_mac_addr = param->mlo_mac;
|
||||
}
|
||||
|
||||
#ifdef WLAN_MLO_MULTI_CHIP
|
||||
static inline void
|
||||
wlan_vdev_mgr_fill_mlo_bridge_vap_params(struct cdp_vdev_info *vdev_info,
|
||||
struct wlan_objmgr_vdev *vdev)
|
||||
{
|
||||
vdev_info->is_bridge_vap = vdev->vdev_objmgr.mlo_bridge_vdev;
|
||||
}
|
||||
#else
|
||||
|
||||
static inline void
|
||||
wlan_vdev_mgr_fill_mlo_bridge_vap_params(struct cdp_vdev_info *vdev_info,
|
||||
struct wlan_objmgr_vdev *vdev)
|
||||
{
|
||||
}
|
||||
#endif
|
||||
|
||||
#else
|
||||
static inline void
|
||||
wlan_vdev_mgr_fill_mlo_params(struct cdp_vdev_info *vdev_info,
|
||||
struct vdev_create_params *param)
|
||||
{
|
||||
}
|
||||
|
||||
static inline void
|
||||
wlan_vdev_mgr_fill_mlo_bridge_vap_params(struct cdp_vdev_info *vdev_info,
|
||||
struct wlan_objmgr_vdev *vdev)
|
||||
{
|
||||
}
|
||||
#endif
|
||||
|
||||
QDF_STATUS tgt_vdev_mgr_create_send(
|
||||
@@ -108,6 +131,7 @@ QDF_STATUS tgt_vdev_mgr_create_send(
|
||||
vdev_info.op_mode = wlan_util_vdev_get_cdp_txrx_opmode(vdev);
|
||||
vdev_info.subtype = wlan_util_vdev_get_cdp_txrx_subtype(vdev);
|
||||
vdev_info.qdf_opmode = wlan_vdev_mlme_get_opmode(vdev);
|
||||
wlan_vdev_mgr_fill_mlo_bridge_vap_params(&vdev_info, vdev);
|
||||
wlan_vdev_mgr_fill_mlo_params(&vdev_info, param);
|
||||
pdev = wlan_vdev_get_pdev(vdev);
|
||||
|
||||
|
@@ -71,6 +71,24 @@ bool mlo_ap_vdev_attach(struct wlan_objmgr_vdev *vdev,
|
||||
wlan_vdev_get_id(vdev));
|
||||
}
|
||||
|
||||
/* reset the vdev id list */
|
||||
for (i = 0; i < WLAN_UMAC_MLO_MAX_VDEVS; i++)
|
||||
pr_vdev_ids[i] = CDP_INVALID_VDEV_ID;
|
||||
|
||||
/* update the bridge vaps in partner list*/
|
||||
for (i = 0; i < WLAN_UMAC_MLO_MAX_BRIDGE_VDEVS; i++) {
|
||||
if (dev_ctx->wlan_bridge_vdev_list[i])
|
||||
pr_vdev_ids[i] = wlan_vdev_get_id(
|
||||
dev_ctx->wlan_bridge_vdev_list[i]);
|
||||
}
|
||||
|
||||
if (cdp_update_mlo_ptnr_list(
|
||||
wlan_psoc_get_dp_handle(psoc),
|
||||
pr_vdev_ids, WLAN_UMAC_MLO_MAX_VDEVS,
|
||||
wlan_vdev_get_id(vdev)) != QDF_STATUS_SUCCESS) {
|
||||
mlo_debug("Failed to add vdev to partner vdev list, vdev id:%d",
|
||||
wlan_vdev_get_id(vdev));
|
||||
}
|
||||
return true;
|
||||
}
|
||||
#else
|
||||
|
Verwijs in nieuw issue
Block a user