qcacld-3.0: Add support for SAE-PK roam scoring

SAE Public Key (SAE-PK) authentication is an extension of SAE. Host adds
support for SAE-PK APs roam score which host uses to select AP for initial
connection and roaming.

Change-Id: Id8c420950bb8c1d11db5a26aa860e280bcb672d1
CRs-Fixed: 2769372
This commit is contained in:
Abhishek Ambure 2020-09-03 18:05:48 +05:30 committed by snandini
parent 387298825a
commit 2813eaa802
4 changed files with 11 additions and 2 deletions

View File

@ -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;
};
/**

View File

@ -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;

View File

@ -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 =

View File

@ -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;