From 73d452f3d2d2575d7e1f9ce1214bffd626f371ae Mon Sep 17 00:00:00 2001 From: Aditya Sathish Date: Fri, 8 Feb 2019 17:21:34 +0530 Subject: [PATCH] qcacmn: Add support for UL_RU26 WMI service Add support for UL_RU26 WMI service which will notify the host if the target has allowed UL_RU26 Change-Id: I639c0872f541cf30776c9f76b87c4b950c1e17f4 CRs-Fixed: 2390350 --- target_if/init_deinit/src/init_event_handler.c | 3 +++ umac/cmn_services/obj_mgr/inc/wlan_objmgr_psoc_obj.h | 2 ++ wmi/inc/wmi_unified_param.h | 1 + wmi/src/wmi_unified_tlv.c | 1 + 4 files changed, 7 insertions(+) diff --git a/target_if/init_deinit/src/init_event_handler.c b/target_if/init_deinit/src/init_event_handler.c index 8be80deab9b2..6b6280524d5d 100644 --- a/target_if/init_deinit/src/init_event_handler.c +++ b/target_if/init_deinit/src/init_event_handler.c @@ -110,6 +110,9 @@ static int init_deinit_service_ready_event_handler(ol_scn_t scn_handle, if (wmi_service_enabled(wmi_handle, wmi_service_bss_color_offload)) target_if_debug(" BSS COLOR OFFLOAD supported"); + if (wmi_service_enabled(wmi_handle, wmi_service_ul_ru26_allowed)) + wlan_psoc_nif_fw_ext_cap_set(psoc, WLAN_SOC_CEXT_OBSS_NBW_RU); + 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 7335ef92af12..e5ff1122c116 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 @@ -127,6 +127,8 @@ #define WLAN_SOC_CEXT_TWT_RESPONDER 0x00004000 /* HW DB2DBM CAPABLE */ #define WLAN_SOC_CEXT_HW_DB2DBM 0x00008000 + /* OBSS Narrow Bandwidth RU Tolerance */ +#define WLAN_SOC_CEXT_OBSS_NBW_RU 0x00010000 /* feature_flags */ /* CONF: ATH FF enabled */ diff --git a/wmi/inc/wmi_unified_param.h b/wmi/inc/wmi_unified_param.h index 5e8ff2a0f7eb..62c0245a9cec 100644 --- a/wmi/inc/wmi_unified_param.h +++ b/wmi/inc/wmi_unified_param.h @@ -5196,6 +5196,7 @@ typedef enum { wmi_service_nan_disable_support, wmi_service_hw_db2dbm_support, wmi_service_wlm_stats_support, + wmi_service_ul_ru26_allowed, 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 c8b1b0ac3b70..42b672379945 100644 --- a/wmi/src/wmi_unified_tlv.c +++ b/wmi/src/wmi_unified_tlv.c @@ -11691,6 +11691,7 @@ static void populate_tlv_service(uint32_t *wmi_service) WMI_SERVICE_HW_DB2DBM_CONVERSION_SUPPORT; wmi_service[wmi_service_wlm_stats_support] = WMI_SERVICE_WLM_STATS_REQUEST; + wmi_service[wmi_service_ul_ru26_allowed] = WMI_SERVICE_UL_RU26_ALLOWED; } #ifndef CONFIG_MCL