diff --git a/wmi/inc/wmi_unified_param.h b/wmi/inc/wmi_unified_param.h index ce27d2b799d4..7ed5adb6ed34 100644 --- a/wmi/inc/wmi_unified_param.h +++ b/wmi/inc/wmi_unified_param.h @@ -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 diff --git a/wmi/src/wmi_unified_roam_tlv.c b/wmi/src/wmi_unified_roam_tlv.c index 08563dd50b19..44c2efce80fb 100644 --- a/wmi/src/wmi_unified_roam_tlv.c +++ b/wmi/src/wmi_unified_roam_tlv.c @@ -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, diff --git a/wmi/src/wmi_unified_tlv.c b/wmi/src/wmi_unified_tlv.c index 6cbc50acd2db..06002572da06 100644 --- a/wmi/src/wmi_unified_tlv.c +++ b/wmi/src/wmi_unified_tlv.c @@ -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; } /**