qcacld-3.0: Introduce new ini for dual sta roaming
Add new ini enable_dual_sta_roam_offload to enable/disable dual sta romaing feature. Enabling this ini will allow firmware to roam on both the vdev if firmware supports dual sta roaming and the hw is dbs capable. This ini will be checked in the dual sta roaming offload state machine to enable roaming on both the STA or to fallback to the current implementation where first connected sta will have rso enabled. Change-Id: I04f141ac31e0f168b6f19fe878bca219a36cfae7 CRs-Fixed: 2709036
This commit is contained in:

committad av
nshrivas

förälder
1f299f5e53
incheckning
3bbb4610b6
@@ -459,6 +459,11 @@ wlan_mlme_update_cfg_with_tgt_caps(struct wlan_objmgr_psoc *psoc,
|
||||
mlme_obj->cfg.gen.bigtk_support = tgt_caps->bigtk_support;
|
||||
mlme_obj->cfg.gen.stop_all_host_scan_support =
|
||||
tgt_caps->stop_all_host_scan_support;
|
||||
mlme_obj->cfg.gen.peer_create_conf_support =
|
||||
tgt_caps->peer_create_conf_support;
|
||||
mlme_obj->cfg.gen.dual_sta_roam_fw_support =
|
||||
tgt_caps->dual_sta_roam_fw_support;
|
||||
|
||||
}
|
||||
|
||||
#ifdef WLAN_FEATURE_11AX
|
||||
@@ -2071,6 +2076,26 @@ bool wlan_mlme_get_host_scan_abort_support(struct wlan_objmgr_psoc *psoc)
|
||||
return mlme_obj->cfg.gen.stop_all_host_scan_support;
|
||||
}
|
||||
|
||||
bool wlan_mlme_get_peer_create_conf_support(struct wlan_objmgr_psoc *psoc)
|
||||
{
|
||||
struct wlan_mlme_psoc_ext_obj *mlme_obj = mlme_get_psoc_ext_obj(psoc);
|
||||
|
||||
if (!mlme_obj)
|
||||
return false;
|
||||
|
||||
return mlme_obj->cfg.gen.peer_create_conf_support;
|
||||
}
|
||||
|
||||
bool wlan_mlme_get_dual_sta_roam_support(struct wlan_objmgr_psoc *psoc)
|
||||
{
|
||||
struct wlan_mlme_psoc_ext_obj *mlme_obj = mlme_get_psoc_ext_obj(psoc);
|
||||
|
||||
if (!mlme_obj)
|
||||
return false;
|
||||
|
||||
return mlme_obj->cfg.gen.dual_sta_roam_fw_support;
|
||||
}
|
||||
|
||||
QDF_STATUS wlan_mlme_get_oce_sta_enabled_info(struct wlan_objmgr_psoc *psoc,
|
||||
bool *value)
|
||||
{
|
||||
@@ -3902,3 +3927,25 @@ wlan_mlme_get_dfs_chan_ageout_time(struct wlan_objmgr_psoc *psoc,
|
||||
|
||||
return QDF_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
#ifdef WLAN_FEATURE_ROAM_OFFLOAD
|
||||
bool
|
||||
wlan_mlme_get_dual_sta_roaming_enabled(struct wlan_objmgr_psoc *psoc)
|
||||
{
|
||||
struct wlan_mlme_psoc_ext_obj *mlme_obj;
|
||||
bool dual_sta_roaming_enabled;
|
||||
|
||||
mlme_obj = mlme_get_psoc_ext_obj(psoc);
|
||||
|
||||
if (!mlme_obj)
|
||||
return cfg_default(CFG_ENABLE_DUAL_STA_ROAM_OFFLOAD);
|
||||
|
||||
dual_sta_roaming_enabled =
|
||||
mlme_obj->cfg.lfr.lfr3_roaming_offload &&
|
||||
mlme_obj->cfg.lfr.lfr3_dual_sta_roaming_enabled &&
|
||||
wlan_mlme_get_dual_sta_roam_support(psoc) &&
|
||||
policy_mgr_is_hw_dbs_capable(psoc);
|
||||
|
||||
return dual_sta_roaming_enabled;
|
||||
}
|
||||
#endif
|
||||
|
Referens i nytt ärende
Block a user