From 5132bc6b0b5c1d606fb3867f7a9bf45d46b475f5 Mon Sep 17 00:00:00 2001 From: Pragaspathi Thilagaraj Date: Thu, 25 Apr 2019 17:30:11 +0530 Subject: [PATCH] qcacmn: Add adaptive 11r target service capability support The target advertises adaptive 11r service capability over WMI_SERVICE_ADAPTIVE_11R_ROAM. Enable RSO for adaptive 11r connection only if firmware advertises this service capability. Change-Id: Iea78b63d19d1177fe092fc9916ddc5280d00de4b CRs-Fixed: 2441975 --- wmi/inc/wmi_unified_param.h | 2 ++ wmi/src/wmi_unified_roam_tlv.c | 2 ++ wmi/src/wmi_unified_tlv.c | 2 ++ 3 files changed, 6 insertions(+) diff --git a/wmi/inc/wmi_unified_param.h b/wmi/inc/wmi_unified_param.h index aa1901833090..afd156124efa 100644 --- a/wmi/inc/wmi_unified_param.h +++ b/wmi/inc/wmi_unified_param.h @@ -1991,6 +1991,7 @@ struct roam_offload_scan_params { bool fw_okc; bool fw_pmksa_cache; uint32_t rct_validity_timer; + bool is_adaptive_11r; #endif uint32_t min_delay_btw_roam_scans; uint32_t roam_trigger_reason_bitmask; @@ -5315,6 +5316,7 @@ typedef enum { wmi_service_wpa3_ft_sae_support, wmi_service_wpa3_ft_suite_b_support, wmi_service_ft_fils, + wmi_service_adaptive_11r_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 01192d734b90..86f9f2740e55 100644 --- a/wmi/src/wmi_unified_roam_tlv.c +++ b/wmi/src/wmi_unified_roam_tlv.c @@ -1285,6 +1285,8 @@ send_roam_scan_offload_mode_cmd_tlv(wmi_unified_t wmi_handle, roam_req->mdid.mdie_present; roam_offload_11r->mdid = roam_req->mdid.mobility_domain; + roam_offload_11r->adaptive_11r = + roam_req->is_adaptive_11r; if (auth_mode == WMI_AUTH_OPEN) { /* If FT-Open ensure pmk length and r0khid len are zero */ diff --git a/wmi/src/wmi_unified_tlv.c b/wmi/src/wmi_unified_tlv.c index 0032510354ed..b13ddf542ac8 100644 --- a/wmi/src/wmi_unified_tlv.c +++ b/wmi/src/wmi_unified_tlv.c @@ -12142,6 +12142,8 @@ static void populate_tlv_service(uint32_t *wmi_service) WMI_SERVICE_WPA3_FT_SUITE_B_SUPPORT; wmi_service[wmi_service_ft_fils] = WMI_SERVICE_WPA3_FT_FILS; + wmi_service[wmi_service_adaptive_11r_support] = + WMI_SERVICE_ADAPTIVE_11R_ROAM; } /**