qcacmn: Featurize WMI APIs and TLVs that are specific to MCL
In the existing converged component, WMI TLV APIs are implemented in a generic manner without proper featurization. All the APIs exposed outside of WMI are implemented in wmi_unified_api.c and all the APIs forming the CMD or extracting the EVT is implemented in wmi_unified_tlv.c. Since WIN and MCL have a unified WMI layer in the converged component and there are features within WIN and MCL that are not common, there exists a good number of WMI APIs which are specific to WIN but compiled by MCL and vice-versa. Due to this inadvertent problem, there is a chunk of code and memory used up by WIN and MCL for features that are not used in their products. Featurize WMI APIs and TLVs that are specific to MCL - - DSRC - NAN - P2P - PMO - roaming - concurrency - STA - Generic MCL specific WMI (STA) Change-Id: I03a68b0db30a3aa585b269ab0a1745b37bc7e0b7 CRs-Fixed: 2316935
This commit is contained in:
@@ -30,6 +30,26 @@
|
||||
#include "wlan_pmo_wow_public_struct.h"
|
||||
#include "wlan_pmo_pkt_filter_public_struct.h"
|
||||
|
||||
#ifdef FEATURE_WLAN_D0WOW
|
||||
/**
|
||||
* wmi_unified_d0wow_enable_send() - WMI d0 wow enable function
|
||||
* @param wmi_handle: handle to WMI.
|
||||
* @mac_id: radio context
|
||||
*
|
||||
* Return: QDF_STATUS_SUCCESS on success and QDF_STATUS_E_FAILURE for failure
|
||||
*/
|
||||
QDF_STATUS wmi_unified_d0wow_enable_send(void *wmi_hdl, uint8_t mac_id);
|
||||
|
||||
/**
|
||||
* wmi_unified_d0wow_disable_send() - WMI d0 wow disable function
|
||||
* @param wmi_handle: handle to WMI.
|
||||
* @mac_id: radio context
|
||||
*
|
||||
* Return: QDF_STATUS_SUCCESS on success and QDF_STATUS_E_FAILURE for failure
|
||||
*/
|
||||
QDF_STATUS wmi_unified_d0wow_disable_send(void *wmi_hdl, uint8_t mac_id);
|
||||
#endif /* FEATURE_WLAN_D0WOW */
|
||||
|
||||
/**
|
||||
* wmi_unified_add_wow_wakeup_event_cmd() - Configures wow wakeup events.
|
||||
* @wmi_handle: wmi handle
|
||||
@@ -40,9 +60,9 @@
|
||||
* Return: QDF_STATUS_SUCCESS on success and QDF_STATUS_E_FAILURE for failure
|
||||
*/
|
||||
QDF_STATUS wmi_unified_add_wow_wakeup_event_cmd(void *wmi_hdl,
|
||||
uint32_t vdev_id,
|
||||
uint32_t *bitmap,
|
||||
bool enable);
|
||||
uint32_t vdev_id,
|
||||
uint32_t *bitmap,
|
||||
bool enable);
|
||||
|
||||
/**
|
||||
* wmi_unified_wow_patterns_to_fw_cmd() - Sends WOW patterns to FW.
|
||||
@@ -93,6 +113,7 @@ QDF_STATUS wmi_unified_multiple_add_clear_mcbc_filter_cmd(void *wmi_hdl,
|
||||
uint8_t vdev_id,
|
||||
struct pmo_mcast_filter_params *filter_param);
|
||||
|
||||
#ifdef FEATURE_WLAN_RA_FILTERING
|
||||
/**
|
||||
* wmi_unified_wow_sta_ra_filter_cmd() - set RA filter pattern in fw
|
||||
* @wmi_handle: wmi handle
|
||||
@@ -101,8 +122,10 @@ QDF_STATUS wmi_unified_multiple_add_clear_mcbc_filter_cmd(void *wmi_hdl,
|
||||
* Return: QDF_STATUS_SUCCESS on success and QDF_STATUS_E_FAILURE for failure
|
||||
*/
|
||||
QDF_STATUS wmi_unified_wow_sta_ra_filter_cmd(void *wmi_hdl,
|
||||
uint8_t vdev_id, uint8_t default_pattern,
|
||||
uint16_t rate_limit_interval);
|
||||
uint8_t vdev_id,
|
||||
uint8_t default_pattern,
|
||||
uint16_t rate_limit_interval);
|
||||
#endif
|
||||
|
||||
/**
|
||||
* wmi_unified_enable_enhance_multicast_offload() - enhance multicast offload
|
||||
@@ -159,9 +182,9 @@ QDF_STATUS wmi_unified_action_frame_patterns_cmd(void *wmi_hdl,
|
||||
* Return: QDF_STATUS_SUCCESS on success and QDF_STATUS_E_FAILURE for failure
|
||||
*/
|
||||
QDF_STATUS wmi_unified_send_gtk_offload_cmd(void *wmi_hdl, uint8_t vdev_id,
|
||||
struct pmo_gtk_req *params,
|
||||
bool enable_offload,
|
||||
uint32_t gtk_offload_opcode);
|
||||
struct pmo_gtk_req *params,
|
||||
bool enable_offload,
|
||||
uint32_t gtk_offload_opcode);
|
||||
|
||||
/**
|
||||
* wmi_unified_enable_arp_ns_offload_cmd() - enable ARP NS offload
|
||||
@@ -188,6 +211,7 @@ QDF_STATUS wmi_unified_enable_arp_ns_offload_cmd(void *wmi_hdl,
|
||||
QDF_STATUS wmi_unified_conf_hw_filter_cmd(void *opaque_wmi,
|
||||
struct pmo_hw_filter_params *req);
|
||||
|
||||
#ifdef FEATURE_WLAN_LPHB
|
||||
/**
|
||||
* wmi_unified_lphb_config_hbenable_cmd() - enable command of LPHB configuration
|
||||
* @wmi_handle: wmi handle
|
||||
@@ -237,6 +261,7 @@ QDF_STATUS wmi_unified_lphb_config_udp_params_cmd(void *wmi_hdl,
|
||||
*/
|
||||
QDF_STATUS wmi_unified_lphb_config_udp_pkt_filter_cmd(void *wmi_hdl,
|
||||
wmi_hb_set_udp_pkt_filter_cmd_fixed_param *lphb_conf_req);
|
||||
#endif /* FEATURE_WLAN_LPHB */
|
||||
|
||||
#ifdef WLAN_FEATURE_PACKET_FILTERING
|
||||
/**
|
||||
@@ -248,7 +273,8 @@ QDF_STATUS wmi_unified_lphb_config_udp_pkt_filter_cmd(void *wmi_hdl,
|
||||
* Return: QDF_STATUS_SUCCESS on success and QDF_STATUS_E_FAILURE for failure
|
||||
*/
|
||||
QDF_STATUS wmi_unified_enable_disable_packet_filter_cmd(void *wmi_hdl,
|
||||
uint8_t vdev_id, bool enable);
|
||||
uint8_t vdev_id,
|
||||
bool enable);
|
||||
|
||||
/**
|
||||
* wmi_unified_config_packet_filter_cmd() - configure packet filter in target
|
||||
@@ -263,6 +289,74 @@ QDF_STATUS wmi_unified_enable_disable_packet_filter_cmd(void *wmi_hdl,
|
||||
QDF_STATUS wmi_unified_config_packet_filter_cmd(void *wmi_hdl,
|
||||
uint8_t vdev_id, struct pmo_rcv_pkt_fltr_cfg *rcv_filter_param,
|
||||
uint8_t filter_id, bool enable);
|
||||
#endif
|
||||
#endif /* WLAN_FEATURE_PACKET_FILTERING */
|
||||
|
||||
/**
|
||||
* wmi_unified_wow_delete_pattern_cmd() - delete wow pattern in target
|
||||
* @wmi_handle: wmi handle
|
||||
* @ptrn_id: pattern id
|
||||
* @vdev_id: vdev id
|
||||
*
|
||||
* Return: QDF_STATUS_SUCCESS on success and QDF_STATUS_E_FAILURE for failure
|
||||
*/
|
||||
QDF_STATUS wmi_unified_wow_delete_pattern_cmd(void *wmi_hdl, uint8_t ptrn_id,
|
||||
uint8_t vdev_id);
|
||||
|
||||
/**
|
||||
* wmi_unified_host_wakeup_ind_to_fw_cmd() - send wakeup ind to fw
|
||||
* @wmi_handle: wmi handle
|
||||
*
|
||||
* Sends host wakeup indication to FW. On receiving this indication,
|
||||
* FW will come out of WOW.
|
||||
*
|
||||
* Return: QDF_STATUS_SUCCESS on success and QDF_STATUS_E_FAILURE for failure
|
||||
*/
|
||||
QDF_STATUS wmi_unified_host_wakeup_ind_to_fw_cmd(void *wmi_hdl);
|
||||
|
||||
/**
|
||||
* wmi_unified_wow_timer_pattern_cmd() - set timer pattern tlv, so that
|
||||
* firmware will wake up host after
|
||||
* specified time is elapsed
|
||||
* @wmi_handle: wmi handle
|
||||
* @vdev_id: vdev id
|
||||
* @cookie: value to identify reason why host set up wake call.
|
||||
* @time: time in ms
|
||||
*
|
||||
* Return: QDF status
|
||||
*/
|
||||
QDF_STATUS wmi_unified_wow_timer_pattern_cmd(void *wmi_hdl, uint8_t vdev_id,
|
||||
uint32_t cookie, uint32_t time);
|
||||
|
||||
#ifdef WLAN_FEATURE_EXTWOW_SUPPORT
|
||||
/**
|
||||
* wmi_unified_enable_ext_wow_cmd() - enable ext wow in fw
|
||||
* @wmi_handle: wmi handle
|
||||
* @params: ext wow params
|
||||
*
|
||||
* Return:QDF_STATUS_SUCCESS on success and QDF_STATUS_E_FAILURE for failure
|
||||
*/
|
||||
QDF_STATUS wmi_unified_enable_ext_wow_cmd(void *wmi_hdl,
|
||||
struct ext_wow_params *params);
|
||||
|
||||
/**
|
||||
* wmi_unified_set_app_type2_params_in_fw_cmd() - set app type2 params in fw
|
||||
* @wmi_handle: wmi handle
|
||||
* @appType2Params: app type2 params
|
||||
*
|
||||
* Return: QDF_STATUS_SUCCESS on success and QDF_STATUS_E_FAILURE for failure
|
||||
*/
|
||||
QDF_STATUS wmi_unified_set_app_type2_params_in_fw_cmd(void *wmi_hdl,
|
||||
struct app_type2_params *appType2Params);
|
||||
|
||||
/**
|
||||
* wmi_unified_app_type1_params_in_fw_cmd() - set app type1 params in fw
|
||||
* @wmi_hdl: wmi handle
|
||||
* @app_type1_params: app type1 params
|
||||
*
|
||||
* Return: QDF_STATUS_SUCCESS on success and QDF_STATUS_E_FAILURE for failure
|
||||
*/
|
||||
QDF_STATUS wmi_unified_app_type1_params_in_fw_cmd(void *wmi_hdl,
|
||||
struct app_type1_params *app_type1_params);
|
||||
#endif /* WLAN_FEATURE_EXTWOW_SUPPORT */
|
||||
|
||||
#endif /* _WMI_UNIFIED_PMO_API_H_ */
|
||||
|
Reference in New Issue
Block a user