Selaa lähdekoodia

qcacmn: Read AP initiator burst and staggered service bits

Check the below service bits and set in psoc if the service is supported
by  FW.

WMI_SERVICE_RTT_AP_INITIATOR_STAGGERED_MODE_SUPPORTED
WMI_SERVICE_RTT_AP_INITIATOR_BURSTED_MODE_SUPPORTED

Change-Id: I13504958bf31b2d645d915b4db20719bdc9a4133
CRs-Fixed: 2969195
Shashikala Prabhu 4 vuotta sitten
vanhempi
sitoutus
ea157e3a14

+ 10 - 0
target_if/init_deinit/src/init_event_handler.c

@@ -140,6 +140,16 @@ static int init_deinit_service_ready_event_handler(ol_scn_t scn_handle,
 		wlan_psoc_nif_fw_ext_cap_set(
 				psoc, WLAN_SOC_NSS_RATIO_TO_HOST_SUPPORT);
 
+	if (wmi_service_enabled(wmi_handle,
+				wmi_service_rtt_ap_initiator_staggered_mode_supported))
+		wlan_psoc_nif_fw_ext_cap_set(
+				psoc, WLAN_SOC_RTT_AP_INITIATOR_STAGGERED_MODE_SUPPORTED);
+
+	if (wmi_service_enabled(wmi_handle,
+				wmi_service_rtt_ap_initiator_bursted_mode_supported))
+		wlan_psoc_nif_fw_ext_cap_set(
+				psoc, WLAN_SOC_RTT_AP_INITIATOR_BURSTED_MODE_SUPPORTED);
+
 	target_if_debug(" TT support %d, Wide BW Scan %d, SW cal %d",
 		wlan_psoc_nif_fw_ext_cap_get(psoc, WLAN_SOC_CEXT_TT_SUPPORT),
 		wlan_psoc_nif_fw_ext_cap_get(psoc, WLAN_SOC_CEXT_WIDEBAND_SCAN),

+ 4 - 0
umac/cmn_services/obj_mgr/inc/wlan_objmgr_psoc_obj.h

@@ -146,6 +146,10 @@
 #define WLAN_SOC_CEXT_SCAN_PER_CH_CONFIG    0x01000000
 	/* CAPABILITY: csa offload in case of AP */
 #define WLAN_SOC_CEXT_CSA_TX_OFFLOAD      0x02000000
+	/* AP initiator mode supported in staggered beacon mode */
+#define WLAN_SOC_RTT_AP_INITIATOR_STAGGERED_MODE_SUPPORTED 0x04000000
+	/* AP initiator mode supported in burst beacon mode */
+#define WLAN_SOC_RTT_AP_INITIATOR_BURSTED_MODE_SUPPORTED 0x08000000
 
 /* feature_flags */
 	/* CONF: ATH FF enabled */

+ 2 - 0
wmi/inc/wmi_unified_param.h

@@ -5265,6 +5265,8 @@ typedef enum {
 	wmi_service_sae_eapol_offload_support,
 	wmi_service_ampdu_tx_buf_size_256_support,
 	wmi_service_halphy_cal_status,
+	wmi_service_rtt_ap_initiator_staggered_mode_supported,
+	wmi_service_rtt_ap_initiator_bursted_mode_supported,
 	wmi_services_max,
 } wmi_conv_service_ids;
 #define WMI_SERVICE_UNAVAILABLE 0xFFFF

+ 4 - 0
wmi/src/wmi_unified_tlv.c

@@ -16445,6 +16445,10 @@ static void populate_tlv_service(uint32_t *wmi_service)
 			WMI_SERVICE_AMPDU_TX_BUF_SIZE_256_SUPPORT;
 	wmi_service[wmi_service_halphy_cal_status] =
 			WMI_SERVICE_HALPHY_CAL_STATUS;
+	wmi_service[wmi_service_rtt_ap_initiator_staggered_mode_supported] =
+			WMI_SERVICE_RTT_AP_INITIATOR_STAGGERED_MODE_SUPPORTED;
+	wmi_service[wmi_service_rtt_ap_initiator_bursted_mode_supported] =
+			WMI_SERVICE_RTT_AP_INITIATOR_BURSTED_MODE_SUPPORTED;
 }
 
 /**