diff --git a/core/hdd/src/wlan_hdd_cfg80211.c b/core/hdd/src/wlan_hdd_cfg80211.c index 1e07e2e47e2f..f1d379f90811 100644 --- a/core/hdd/src/wlan_hdd_cfg80211.c +++ b/core/hdd/src/wlan_hdd_cfg80211.c @@ -20839,6 +20839,7 @@ static int wlan_hdd_cfg80211_set_ie(struct hdd_adapter *adapter, assoc_add_ie->addIEdata; roam_profile->nAddIEAssocLength = assoc_add_ie->length; + roam_profile->is_hs_20_ap = true; } /* Appending OSEN Information Element in Assiciation Request */ else if ((0 == memcmp(&genie[0], OSEN_OUI_TYPE, diff --git a/core/sme/inc/csr_api.h b/core/sme/inc/csr_api.h index 702339e5f222..133896da4386 100644 --- a/core/sme/inc/csr_api.h +++ b/core/sme/inc/csr_api.h @@ -726,6 +726,7 @@ struct csr_roam_profile { struct wlan_fils_connection_info *fils_con_info; #endif bool force_rsne_override; + bool is_hs_20_ap; }; #ifdef FEATURE_WLAN_MCC_TO_SCC_SWITCH diff --git a/core/sme/src/csr/csr_api_roam.c b/core/sme/src/csr/csr_api_roam.c index b187a7aa42e0..7a3b00c5916e 100644 --- a/core/sme/src/csr/csr_api_roam.c +++ b/core/sme/src/csr/csr_api_roam.c @@ -7665,6 +7665,7 @@ QDF_STATUS csr_roam_copy_profile(struct mac_context *mac, pDstProfile->chan_switch_hostapd_rate_enabled = pSrcProfile->chan_switch_hostapd_rate_enabled; pDstProfile->force_rsne_override = pSrcProfile->force_rsne_override; + pDstProfile->is_hs_20_ap = pSrcProfile->is_hs_20_ap; end: if (!QDF_IS_STATUS_SUCCESS(status)) { csr_release_profile(mac, pDstProfile); @@ -17045,7 +17046,9 @@ static void csr_update_btm_offload_config(struct mac_context *mac_ctx, return; /* For RSO Stop Disable BTM offload to firmware */ - if (command == ROAM_SCAN_OFFLOAD_STOP) { + if (command == ROAM_SCAN_OFFLOAD_STOP || + session->pCurRoamProfile->is_hs_20_ap) { + sme_debug("RSO cmd: %d", command); *btm_offload_config = 0; return; }