mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-12 07:37:31 -04:00
qcacmn: Add support for WPA3 SuiteB roaming
This commit enables support for SuiteB roaming wmi service based on the WPA3 SuiteB roam service capability advertisement received from Firmware. In SuiteB the PMK length is greater than the existing PMK length, added the extended PMK parameters to fill in the remaining bytes of PMK in the RSO command. Change-Id: Ia630580bba050513800e3acac875baf937ec8d14 CRs-Fixed: 2685993
This commit is contained in:
parent
b57a6d5bd6
commit
8a8ee00543
3 changed files with 17 additions and 5 deletions
|
|
@ -5224,6 +5224,7 @@ typedef enum {
|
|||
wmi_service_ema_ap_support,
|
||||
wmi_support_extend_address,
|
||||
wmi_service_srg_srp_spatial_reuse_support,
|
||||
wmi_service_suiteb_roam_support,
|
||||
wmi_services_max,
|
||||
} wmi_conv_service_ids;
|
||||
#define WMI_SERVICE_UNAVAILABLE 0xFFFF
|
||||
|
|
|
|||
|
|
@ -1376,6 +1376,18 @@ send_roam_scan_offload_mode_cmd_tlv(wmi_unified_t wmi_handle,
|
|||
roam_req->psk_pmk,
|
||||
roam_offload_11i->pmk_len);
|
||||
|
||||
if (auth_mode ==
|
||||
WMI_AUTH_RSNA_SUITE_B_8021X_SHA384) {
|
||||
roam_offload_11i->pmk_ext_len =
|
||||
(roam_req->pmk_len -
|
||||
ROAM_OFFLOAD_PMK_BYTES);
|
||||
qdf_mem_copy(roam_offload_11i->pmk_ext,
|
||||
&roam_req->psk_pmk[
|
||||
ROAM_OFFLOAD_PMK_BYTES],
|
||||
roam_offload_11i->
|
||||
pmk_ext_len);
|
||||
}
|
||||
|
||||
WMITLV_SET_HDR(&roam_offload_11i->tlv_header,
|
||||
WMITLV_TAG_STRUC_wmi_roam_11i_offload_tlv_param,
|
||||
WMITLV_GET_STRUCT_TLVLEN
|
||||
|
|
@ -1390,11 +1402,8 @@ send_roam_scan_offload_mode_cmd_tlv(wmi_unified_t wmi_handle,
|
|||
buf_ptr += WMI_TLV_HDR_SIZE;
|
||||
WMI_LOGD("pmk_len = %d",
|
||||
roam_offload_11i->pmk_len);
|
||||
if (roam_offload_11i->pmk_len)
|
||||
QDF_TRACE_HEX_DUMP(QDF_MODULE_ID_WMI,
|
||||
QDF_TRACE_LEVEL_DEBUG,
|
||||
roam_offload_11i->pmk,
|
||||
roam_offload_11i->pmk_len);
|
||||
WMI_LOGD("pmk_ext_len = %d",
|
||||
roam_offload_11i->pmk_ext_len);
|
||||
}
|
||||
} else {
|
||||
WMITLV_SET_HDR(buf_ptr, WMITLV_TAG_ARRAY_STRUC,
|
||||
|
|
|
|||
|
|
@ -15041,6 +15041,8 @@ static void populate_tlv_service(uint32_t *wmi_service)
|
|||
WMI_SERVICE_SUPPORT_EXTEND_ADDRESS;
|
||||
wmi_service[wmi_service_srg_srp_spatial_reuse_support] =
|
||||
WMI_SERVICE_SRG_SRP_SPATIAL_REUSE_SUPPORT;
|
||||
wmi_service[wmi_service_suiteb_roam_support] =
|
||||
WMI_SERVICE_WPA3_SUITEB_ROAM_SUPPORT;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
Loading…
Reference in a new issue