diff --git a/components/mlme/dispatcher/inc/wlan_mlme_public_struct.h b/components/mlme/dispatcher/inc/wlan_mlme_public_struct.h index 59cd3f8fbd..148a7d33ae 100644 --- a/components/mlme/dispatcher/inc/wlan_mlme_public_struct.h +++ b/components/mlme/dispatcher/inc/wlan_mlme_public_struct.h @@ -1938,6 +1938,7 @@ struct wlan_mlme_wmm_params { * @oce_wan_weightage: OCE WAN metrics weightage * @oce_ap_tx_pwr_weightage: weightage based on ap tx power * @oce_subnet_id_weightage: weightage based on subnet id + * @sae_pk_ap_weightage:SAE-PK AP weightage */ struct wlan_mlme_weight_config { uint8_t rssi_weightage; @@ -1953,6 +1954,7 @@ struct wlan_mlme_weight_config { uint8_t oce_wan_weightage; uint8_t oce_ap_tx_pwr_weightage; uint8_t oce_subnet_id_weightage; + uint8_t sae_pk_ap_weightage; }; /** diff --git a/components/umac/mlme/connection_mgr/dispatcher/inc/wlan_cm_roam_public_struct.h b/components/umac/mlme/connection_mgr/dispatcher/inc/wlan_cm_roam_public_struct.h index 4e72d74521..a7a9a3e6de 100644 --- a/components/umac/mlme/connection_mgr/dispatcher/inc/wlan_cm_roam_public_struct.h +++ b/components/umac/mlme/connection_mgr/dispatcher/inc/wlan_cm_roam_public_struct.h @@ -215,6 +215,7 @@ struct ap_profile { * @oce_wan_weightage OCE WAN metrics weightage out of total score in %. * @oce_ap_tx_pwr_weightage: OCE AP TX power score in % * @oce_subnet_id_weightage: OCE subnet id score in % + * @sae_pk_ap_weightage: SAE-PK AP score in % * @bw_index_score: channel BW scoring percentage information. * BITS 0-7 :- It contains scoring percentage of 20MHz BW * BITS 8-15 :- It contains scoring percentage of 40MHz BW @@ -259,6 +260,7 @@ struct scoring_param { int32_t oce_wan_weightage; uint32_t oce_ap_tx_pwr_weightage; uint32_t oce_subnet_id_weightage; + uint32_t sae_pk_ap_weightage; uint32_t bw_index_score; uint32_t band_index_score; uint32_t nss_index_score; diff --git a/components/wmi/src/wmi_unified_roam_tlv.c b/components/wmi/src/wmi_unified_roam_tlv.c index d415fa8d49..73fa38c2bf 100644 --- a/components/wmi/src/wmi_unified_roam_tlv.c +++ b/components/wmi/src/wmi_unified_roam_tlv.c @@ -3012,8 +3012,10 @@ send_roam_scan_offload_ap_profile_cmd_tlv(wmi_unified_t wmi_handle, ap_profile->param.oce_subnet_id_weightage; score_param->vendor_roam_score_algorithm_id = ap_profile->param.vendor_roam_score_algorithm; + score_param->sae_pk_ap_weightage_pcnt = + ap_profile->param.sae_pk_ap_weightage; - WMI_LOGD("Score params weightage: disable_bitmap %x rssi %d ht %d vht %d he %d BW %d band %d NSS %d ESP %d BF %d PCL %d OCE WAN %d APTX %d roam score algo %d subnet id %d", + WMI_LOGD("Score params weightage: disable_bitmap %x rssi %d ht %d vht %d he %d BW %d band %d NSS %d ESP %d BF %d PCL %d OCE WAN %d APTX %d roam score algo %d subnet id %d sae-pk %d", score_param->disable_bitmap, score_param->rssi_weightage_pcnt, score_param->ht_weightage_pcnt, score_param->vht_weightage_pcnt, @@ -3026,7 +3028,8 @@ send_roam_scan_offload_ap_profile_cmd_tlv(wmi_unified_t wmi_handle, score_param->oce_wan_weightage_pcnt, score_param->oce_ap_tx_pwr_weightage_pcnt, score_param->vendor_roam_score_algorithm_id, - score_param->oce_ap_subnet_id_weightage_pcnt); + score_param->oce_ap_subnet_id_weightage_pcnt, + score_param->sae_pk_ap_weightage_pcnt); score_param->bw_scoring.score_pcnt = ap_profile->param.bw_index_score; score_param->band_scoring.score_pcnt = diff --git a/core/sme/src/csr/csr_api_roam.c b/core/sme/src/csr/csr_api_roam.c index 4bc5831a7f..8575daf83c 100644 --- a/core/sme/src/csr/csr_api_roam.c +++ b/core/sme/src/csr/csr_api_roam.c @@ -18713,6 +18713,8 @@ static void csr_update_score_params(struct mac_context *mac_ctx, weight_config->oce_ap_tx_pwr_weightage; req_score_params->oce_subnet_id_weightage = weight_config->oce_subnet_id_weightage; + req_score_params->sae_pk_ap_weightage = + weight_config->sae_pk_ap_weightage; req_score_params->bw_index_score = score_config->bandwidth_weight_per_index;