diff --git a/target_if/init_deinit/src/init_event_handler.c b/target_if/init_deinit/src/init_event_handler.c index 0ea66fdae1..22f3f1aa24 100644 --- a/target_if/init_deinit/src/init_event_handler.c +++ b/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), diff --git a/umac/cmn_services/obj_mgr/inc/wlan_objmgr_psoc_obj.h b/umac/cmn_services/obj_mgr/inc/wlan_objmgr_psoc_obj.h index de0c800539..9a5164d694 100644 --- a/umac/cmn_services/obj_mgr/inc/wlan_objmgr_psoc_obj.h +++ b/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 */ diff --git a/wmi/inc/wmi_unified_param.h b/wmi/inc/wmi_unified_param.h index 86492c9912..b4c4463f1a 100644 --- a/wmi/inc/wmi_unified_param.h +++ b/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 diff --git a/wmi/src/wmi_unified_tlv.c b/wmi/src/wmi_unified_tlv.c index 15fc7b0557..74760b9848 100644 --- a/wmi/src/wmi_unified_tlv.c +++ b/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; } /**