diff --git a/components/mlme/dispatcher/inc/wlan_mlme_api.h b/components/mlme/dispatcher/inc/wlan_mlme_api.h index a3a24d4e94..5ac9b89c2d 100644 --- a/components/mlme/dispatcher/inc/wlan_mlme_api.h +++ b/components/mlme/dispatcher/inc/wlan_mlme_api.h @@ -2795,6 +2795,22 @@ QDF_STATUS wlan_mlme_get_roam_bmiss_first_bcnt(struct wlan_objmgr_psoc *psoc, uint8_t *val); +/** + * wlan_mlme_adaptive_11r_enabled() - check if adaptive 11r feature is enaled + * or not + * @psoc: pointer to psoc object + * + * Return: bool + */ +#ifdef WLAN_ADAPTIVE_11R +bool wlan_mlme_adaptive_11r_enabled(struct wlan_objmgr_psoc *psoc); +#else +static inline bool wlan_mlme_adaptive_11r_enabled(struct wlan_objmgr_psoc *psoc) +{ + return false; +} +#endif + /** * wlan_mlme_get_mawc_enabled() - Get mawc enabled status * @psoc: pointer to psoc object diff --git a/components/mlme/dispatcher/src/wlan_mlme_api.c b/components/mlme/dispatcher/src/wlan_mlme_api.c index c7bb2fd1f2..d31ccb31eb 100644 --- a/components/mlme/dispatcher/src/wlan_mlme_api.c +++ b/components/mlme/dispatcher/src/wlan_mlme_api.c @@ -4281,6 +4281,19 @@ wlan_mlme_get_roam_bmiss_first_bcnt(struct wlan_objmgr_psoc *psoc, return QDF_STATUS_SUCCESS; } +#ifdef WLAN_ADAPTIVE_11R +bool wlan_mlme_adaptive_11r_enabled(struct wlan_objmgr_psoc *psoc) +{ + struct wlan_mlme_psoc_ext_obj *mlme_obj; + + mlme_obj = mlme_get_psoc_ext_obj(psoc); + if (!mlme_obj) + return cfg_default(CFG_ADAPTIVE_11R); + + return mlme_obj->cfg.lfr.enable_adaptive_11r; +} +#endif + QDF_STATUS wlan_mlme_get_mawc_enabled(struct wlan_objmgr_psoc *psoc, bool *val) { diff --git a/core/sme/src/csr/csr_api_roam.c b/core/sme/src/csr/csr_api_roam.c index 6172ba80a6..01fc2e5375 100644 --- a/core/sme/src/csr/csr_api_roam.c +++ b/core/sme/src/csr/csr_api_roam.c @@ -11177,7 +11177,8 @@ csr_roam_get_scan_filter_from_profile(struct mac_context *mac_ctx, csr_update_fils_scan_filter(filter, profile); - csr_update_adaptive_11r_scan_filter(mac_ctx, filter); + filter->enable_adaptive_11r = + wlan_mlme_adaptive_11r_enabled(mac_ctx->psoc); csr_update_scan_filter_dot11mode(mac_ctx, filter); return QDF_STATUS_SUCCESS; diff --git a/core/sme/src/csr/csr_inside_api.h b/core/sme/src/csr/csr_inside_api.h index 2159b33cfb..5eb544c435 100644 --- a/core/sme/src/csr/csr_inside_api.h +++ b/core/sme/src/csr/csr_inside_api.h @@ -395,30 +395,6 @@ enum csr_cfgdot11mode csr_find_best_phy_mode(struct mac_context *mac, void csr_copy_ssids_from_roam_params(struct roam_ext_params *roam_params, struct scan_filter *filter); -#ifdef WLAN_ADAPTIVE_11R -/* - * csr_update_adaptive_11r_scan_filter() - fill adaptive 11r support in filter - * @mac_ctx: mac ctx - * @filter: scan filter - * - * Return void - */ -static inline void -csr_update_adaptive_11r_scan_filter(struct mac_context *mac_ctx, - struct scan_filter *filter) -{ - filter->enable_adaptive_11r = - mac_ctx->mlme_cfg->lfr.enable_adaptive_11r; -} -#else -static inline void -csr_update_adaptive_11r_scan_filter(struct mac_context *mac_ctx, - struct scan_filter *filter) -{ - filter->enable_adaptive_11r = false; -} -#endif - /* * csr_fill_filter_from_vdev_crypto() - fill scan filter crypto from vdev crypto * @mac_ctx: csr auth type diff --git a/core/sme/src/csr/csr_neighbor_roam.c b/core/sme/src/csr/csr_neighbor_roam.c index 8872202788..629dbde7c7 100644 --- a/core/sme/src/csr/csr_neighbor_roam.c +++ b/core/sme/src/csr/csr_neighbor_roam.c @@ -416,7 +416,8 @@ csr_neighbor_roam_get_scan_filter_from_profile(struct mac_context *mac, csr_update_pmf_cap_from_connected_profile(profile, filter); - csr_update_adaptive_11r_scan_filter(mac, filter); + filter->enable_adaptive_11r = + wlan_mlme_adaptive_11r_enabled(mac->psoc); csr_update_scan_filter_dot11mode(mac, filter); return QDF_STATUS_SUCCESS;