qcacld-3.0: Add logic to control WIFI standard per vdev

With these APIs, vdev connection is effected by the
WIFI standard version. For example, if wifi_std is
wifi6, then the connection will not use 11be feature.

Change-Id: I8f762f9cf16d876d5cf2847561b61c11a23e97b5
CRs-Fixed: 3554305
This commit is contained in:
Paul Zhang
2023-07-09 23:01:14 -07:00
committed by Rahul Choudhary
parent 4a022b4acd
commit 39dcbc8810
6 changed files with 81 additions and 2 deletions

View File

@@ -786,6 +786,7 @@ if_mgr_get_conc_ext_flags(struct wlan_objmgr_vdev *vdev,
}
static void if_mgr_update_candidate(struct wlan_objmgr_psoc *psoc,
struct wlan_objmgr_vdev *vdev,
struct validate_bss_data *candidate_info)
{
struct scan_cache_entry *scan_entry = candidate_info->scan_entry;
@@ -796,8 +797,10 @@ static void if_mgr_update_candidate(struct wlan_objmgr_psoc *psoc,
if (mlme_get_bss_11be_allowed(psoc, &candidate_info->peer_addr,
util_scan_entry_ie_data(scan_entry),
util_scan_entry_ie_len(scan_entry)))
util_scan_entry_ie_len(scan_entry)) &&
(!wlan_vdev_mlme_get_user_dis_eht_flag(vdev)))
return;
scan_entry->ie_list.multi_link_bv = NULL;
scan_entry->ie_list.ehtcap = NULL;
scan_entry->ie_list.ehtop = NULL;
@@ -813,6 +816,7 @@ if_mgr_get_conc_ext_flags(struct wlan_objmgr_vdev *vdev,
}
static void if_mgr_update_candidate(struct wlan_objmgr_psoc *psoc,
struct wlan_objmgr_vdev *vdev,
struct validate_bss_data *candidate_info)
{
}
@@ -841,7 +845,7 @@ QDF_STATUS if_mgr_validate_candidate(struct wlan_objmgr_vdev *vdev,
if (!psoc)
return QDF_STATUS_E_FAILURE;
if_mgr_update_candidate(psoc, candidate_info);
if_mgr_update_candidate(psoc, vdev, candidate_info);
/*
* Do not allow STA to connect on 6Ghz or indoor channel for non dbs
* hardware if SAP and skip_6g_and_indoor_freq_scan ini are present