From cceae87cf8f00f732cb0f156923300015b8ebf8b Mon Sep 17 00:00:00 2001 From: jiad Date: Tue, 20 Nov 2018 16:55:51 +0800 Subject: [PATCH] qcacmn: Properly featurize NAN When CONFIG_MOBILE_ROUTER is enabled there are build failures due to improper featurization of NAN, so fix the featurization. Change-Id: I6bc11fb82394c2d32b328cb5d50ff974051755e1 CRs-Fixed: 2353170 --- .../lmac_if/inc/wlan_lmac_if_def.h | 2 -- wmi/inc/wmi_unified_priv.h | 14 ++++++++++++++ wmi/inc/wmi_unified_sta_api.h | 2 ++ wmi/src/wmi_unified_sta_api.c | 2 ++ wmi/src/wmi_unified_sta_tlv.c | 11 ++++++++++- 5 files changed, 28 insertions(+), 3 deletions(-) diff --git a/umac/global_umac_dispatcher/lmac_if/inc/wlan_lmac_if_def.h b/umac/global_umac_dispatcher/lmac_if/inc/wlan_lmac_if_def.h index b19548626f..6d7ded97ce 100644 --- a/umac/global_umac_dispatcher/lmac_if/inc/wlan_lmac_if_def.h +++ b/umac/global_umac_dispatcher/lmac_if/inc/wlan_lmac_if_def.h @@ -64,9 +64,7 @@ struct oem_data_rsp; struct direct_buf_rx_data; #endif -#ifdef WLAN_FEATURE_NAN_CONVERGENCE struct scheduler_msg; -#endif #ifdef CONVERGED_TDLS_ENABLE #include "wlan_tdls_public_structs.h" diff --git a/wmi/inc/wmi_unified_priv.h b/wmi/inc/wmi_unified_priv.h index 470e118f65..1d430bf3f0 100644 --- a/wmi/inc/wmi_unified_priv.h +++ b/wmi/inc/wmi_unified_priv.h @@ -2224,6 +2224,20 @@ static inline void wmi_sta_attach_tlv(struct wmi_unified *wmi_handle) } #endif +#ifdef WLAN_FEATURE_NAN +/** + * wmi_nan_feature_attach_tlv() - set NAN feature wmi callback + * @wmi_handle: wmi handle + * + * Return: none + */ +void wmi_nan_feature_attach_tlv(struct wmi_unified *wmi_handle); +#else +static inline void wmi_nan_feature_attach_tlv(struct wmi_unified *wmi_handle) +{ +} +#endif + /** * wmi_align() - provides word aligned parameter * @param: parameter to be aligned diff --git a/wmi/inc/wmi_unified_sta_api.h b/wmi/inc/wmi_unified_sta_api.h index fb38e704b2..c7c6a22e1a 100644 --- a/wmi/inc/wmi_unified_sta_api.h +++ b/wmi/inc/wmi_unified_sta_api.h @@ -146,6 +146,7 @@ QDF_STATUS wmi_unified_nat_keepalive_en_cmd(void *wmi_hdl, uint8_t vdev_id); QDF_STATUS wmi_unified_wlm_latency_level_cmd(void *wmi_hdl, struct wlm_latency_level_param *param); +#ifdef WLAN_FEATURE_NAN /** * wmi_unified_nan_req_cmd() - to send nan request to target * @wmi_handle: wmi handle @@ -155,6 +156,7 @@ QDF_STATUS wmi_unified_wlm_latency_level_cmd(void *wmi_hdl, */ QDF_STATUS wmi_unified_nan_req_cmd(void *wmi_hdl, struct nan_req_params *nan_req); +#endif /** * wmi_unified_process_set_ie_info_cmd() - Function to send IE info to firmware diff --git a/wmi/src/wmi_unified_sta_api.c b/wmi/src/wmi_unified_sta_api.c index 3c95da91fa..9a85bea1f6 100644 --- a/wmi/src/wmi_unified_sta_api.c +++ b/wmi/src/wmi_unified_sta_api.c @@ -123,6 +123,7 @@ QDF_STATUS wmi_unified_wlm_latency_level_cmd(void *wmi_hdl, return QDF_STATUS_E_FAILURE; } +#ifdef WLAN_FEATURE_NAN QDF_STATUS wmi_unified_nan_req_cmd(void *wmi_hdl, struct nan_req_params *nan_req) { @@ -134,6 +135,7 @@ QDF_STATUS wmi_unified_nan_req_cmd(void *wmi_hdl, return QDF_STATUS_E_FAILURE; } +#endif QDF_STATUS wmi_unified_process_set_ie_info_cmd(void *wmi_hdl, struct vdev_ie_info_param *ie_info) diff --git a/wmi/src/wmi_unified_sta_tlv.c b/wmi/src/wmi_unified_sta_tlv.c index 2a812bc7f7..cbe7926b78 100644 --- a/wmi/src/wmi_unified_sta_tlv.c +++ b/wmi/src/wmi_unified_sta_tlv.c @@ -502,6 +502,7 @@ static QDF_STATUS send_wlm_latency_level_cmd_tlv(wmi_unified_t wmi_handle, return 0; } +#ifdef WLAN_FEATURE_NAN /** * send_nan_req_cmd_tlv() - to send nan request to target * @wmi_handle: wmi handle @@ -574,6 +575,14 @@ static QDF_STATUS send_nan_req_cmd_tlv(wmi_unified_t wmi_handle, return ret; } +void wmi_nan_feature_attach_tlv(struct wmi_unified *wmi_handle) +{ + struct wmi_ops *ops = wmi_handle->ops; + + ops->send_nan_req_cmd = send_nan_req_cmd_tlv; +} +#endif /* WLAN_FEATURE_NAN */ + #ifdef CONVERGED_TDLS_ENABLE /** * tdls_get_wmi_offchannel_mode - Get WMI tdls off channel mode @@ -2471,7 +2480,6 @@ void wmi_sta_attach_tlv(wmi_unified_t wmi_handle) ops->send_fw_profiling_cmd = send_fw_profiling_cmd_tlv; ops->send_nat_keepalive_en_cmd = send_nat_keepalive_en_cmd_tlv; ops->send_wlm_latency_level_cmd = send_wlm_latency_level_cmd_tlv; - ops->send_nan_req_cmd = send_nan_req_cmd_tlv; ops->send_process_set_ie_info_cmd = send_process_set_ie_info_cmd_tlv; ops->send_set_base_macaddr_indicate_cmd = send_set_base_macaddr_indicate_cmd_tlv; @@ -2504,5 +2512,6 @@ void wmi_sta_attach_tlv(wmi_unified_t wmi_handle) wmi_tdls_attach_tlv(wmi_handle); wmi_disa_attach_tlv(wmi_handle); wmi_policy_mgr_attach_tlv(wmi_handle); + wmi_nan_feature_attach_tlv(wmi_handle); }