blob: c8418d197bcfefef0dc8202a19a2664dc7333298 [file] [log] [blame]
Govind Singh3ddda1f2016-03-09 11:34:12 +05301/*
2 * Copyright (c) 2016 The Linux Foundation. All rights reserved.
3 *
4 * Previously licensed under the ISC license by Qualcomm Atheros, Inc.
5 *
6 *
7 * Permission to use, copy, modify, and/or distribute this software for
8 * any purpose with or without fee is hereby granted, provided that the
9 * above copyright notice and this permission notice appear in all
10 * copies.
11 *
12 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
13 * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
14 * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
15 * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
16 * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
17 * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
18 * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
19 * PERFORMANCE OF THIS SOFTWARE.
20 */
21
22/*
23 * This file was originally distributed by Qualcomm Atheros, Inc.
24 * under proprietary terms before Copyright ownership was assigned
25 * to the Linux Foundation.
26 */
Govind Singhe7b800c2016-03-01 15:30:53 +053027#ifndef _WMI_UNIFIED_TLV_H_
28#define _WMI_UNIFIED_TLV_H_
Govind Singh3ddda1f2016-03-09 11:34:12 +053029#include <osdep.h>
30#include "a_types.h"
31#include "wmi_unified_param.h"
32#include "ol_defines.h" /* Fix Me: wmi_unified_t structure definition */
33
Govind Singhd7468a52016-03-09 14:32:57 +053034QDF_STATUS send_vdev_create_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh3ddda1f2016-03-09 11:34:12 +053035 uint8_t macaddr[IEEE80211_ADDR_LEN],
36 struct vdev_create_params *param);
37
Govind Singhd7468a52016-03-09 14:32:57 +053038QDF_STATUS send_vdev_delete_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh3ddda1f2016-03-09 11:34:12 +053039 uint8_t if_id);
40
Govind Singhd7468a52016-03-09 14:32:57 +053041QDF_STATUS send_vdev_stop_cmd_tlv(wmi_unified_t wmi,
Govind Singh3ddda1f2016-03-09 11:34:12 +053042 uint8_t vdev_id);
43
Govind Singhd7468a52016-03-09 14:32:57 +053044QDF_STATUS send_vdev_down_cmd_tlv(wmi_unified_t wmi,
Govind Singh3ddda1f2016-03-09 11:34:12 +053045 uint8_t vdev_id);
46
Govind Singhd7468a52016-03-09 14:32:57 +053047QDF_STATUS send_peer_flush_tids_cmd_tlv(wmi_unified_t wmi,
Govind Singh3ddda1f2016-03-09 11:34:12 +053048 uint8_t peer_addr[IEEE80211_ADDR_LEN],
49 struct peer_flush_params *param);
50
Govind Singhd7468a52016-03-09 14:32:57 +053051QDF_STATUS send_peer_delete_cmd_tlv(wmi_unified_t wmi,
Govind Singh3ddda1f2016-03-09 11:34:12 +053052 uint8_t peer_addr[IEEE80211_ADDR_LEN],
53 uint8_t vdev_id);
54
Govind Singhd7468a52016-03-09 14:32:57 +053055QDF_STATUS send_peer_param_cmd_tlv(wmi_unified_t wmi,
Govind Singh3ddda1f2016-03-09 11:34:12 +053056 uint8_t peer_addr[IEEE80211_ADDR_LEN],
57 struct peer_set_params *param);
58
Govind Singhd7468a52016-03-09 14:32:57 +053059QDF_STATUS send_vdev_up_cmd_tlv(wmi_unified_t wmi,
Govind Singh3ddda1f2016-03-09 11:34:12 +053060 uint8_t bssid[IEEE80211_ADDR_LEN],
61 struct vdev_up_params *params);
62
Govind Singhd7468a52016-03-09 14:32:57 +053063QDF_STATUS send_peer_create_cmd_tlv(wmi_unified_t wmi,
Govind Singh3ddda1f2016-03-09 11:34:12 +053064 struct peer_create_params *param);
65
Govind Singhd7468a52016-03-09 14:32:57 +053066QDF_STATUS send_green_ap_ps_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh3ddda1f2016-03-09 11:34:12 +053067 uint32_t value, uint8_t mac_id);
68
Govind Singhd7468a52016-03-09 14:32:57 +053069QDF_STATUS
Govind Singh3ddda1f2016-03-09 11:34:12 +053070send_pdev_utf_cmd_tlv(wmi_unified_t wmi_handle,
71 struct pdev_utf_params *param,
72 uint8_t mac_id);
73
Govind Singhd7468a52016-03-09 14:32:57 +053074QDF_STATUS
Govind Singh3ddda1f2016-03-09 11:34:12 +053075send_pdev_param_cmd_tlv(wmi_unified_t wmi_handle,
76 struct pdev_params *param,
77 uint8_t mac_id);
78
Govind Singhd7468a52016-03-09 14:32:57 +053079QDF_STATUS send_suspend_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh3ddda1f2016-03-09 11:34:12 +053080 struct suspend_params *param,
81 uint8_t mac_id);
82
Govind Singhd7468a52016-03-09 14:32:57 +053083QDF_STATUS send_resume_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh3ddda1f2016-03-09 11:34:12 +053084 uint8_t mac_id);
85
Govind Singhd7468a52016-03-09 14:32:57 +053086QDF_STATUS send_wow_enable_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh3ddda1f2016-03-09 11:34:12 +053087 struct wow_cmd_params *param,
88 uint8_t mac_id);
89
Govind Singhd7468a52016-03-09 14:32:57 +053090QDF_STATUS send_set_ap_ps_param_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh3ddda1f2016-03-09 11:34:12 +053091 uint8_t *peer_addr,
92 struct ap_ps_params *param);
93
Govind Singhd7468a52016-03-09 14:32:57 +053094QDF_STATUS send_set_sta_ps_param_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh3ddda1f2016-03-09 11:34:12 +053095 struct sta_ps_params *param);
96
Govind Singhd7468a52016-03-09 14:32:57 +053097QDF_STATUS send_crash_inject_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh3ddda1f2016-03-09 11:34:12 +053098 struct crash_inject *param);
99
Govind Singhd7468a52016-03-09 14:32:57 +0530100QDF_STATUS
Govind Singh3ddda1f2016-03-09 11:34:12 +0530101send_dbglog_cmd_tlv(wmi_unified_t wmi_handle,
102 struct dbglog_params *dbglog_param);
103
104
Govind Singhd7468a52016-03-09 14:32:57 +0530105QDF_STATUS send_vdev_set_param_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh3ddda1f2016-03-09 11:34:12 +0530106 struct vdev_set_params *param);
107
Govind Singhd7468a52016-03-09 14:32:57 +0530108QDF_STATUS send_stats_request_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh3ddda1f2016-03-09 11:34:12 +0530109 uint8_t macaddr[IEEE80211_ADDR_LEN],
110 struct stats_request_params *param);
111
Govind Singhd7468a52016-03-09 14:32:57 +0530112QDF_STATUS send_packet_log_enable_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh3ddda1f2016-03-09 11:34:12 +0530113 uint8_t macaddr[IEEE80211_ADDR_LEN],
114 struct packet_enable_params *param);
115
Govind Singhd7468a52016-03-09 14:32:57 +0530116QDF_STATUS send_beacon_send_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh3ddda1f2016-03-09 11:34:12 +0530117 struct beacon_params *param);
118
Govind Singhd7468a52016-03-09 14:32:57 +0530119QDF_STATUS send_peer_assoc_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh3ddda1f2016-03-09 11:34:12 +0530120 struct peer_assoc_params *param);
121
Govind Singhd7468a52016-03-09 14:32:57 +0530122QDF_STATUS send_scan_start_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh3ddda1f2016-03-09 11:34:12 +0530123 struct scan_start_params *param);
124
Govind Singhd7468a52016-03-09 14:32:57 +0530125QDF_STATUS send_scan_stop_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh3ddda1f2016-03-09 11:34:12 +0530126 struct scan_stop_params *param);
127
Govind Singhd7468a52016-03-09 14:32:57 +0530128QDF_STATUS send_scan_chan_list_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh3ddda1f2016-03-09 11:34:12 +0530129 struct scan_chan_list_params *param);
130
Govind Singhd7468a52016-03-09 14:32:57 +0530131QDF_STATUS send_mgmt_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh50988cc2016-02-26 18:09:36 +0530132 struct wmi_mgmt_params *param);
133
Govind Singhd7468a52016-03-09 14:32:57 +0530134QDF_STATUS send_modem_power_state_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh50988cc2016-02-26 18:09:36 +0530135 uint32_t param_value);
136
Govind Singhd7468a52016-03-09 14:32:57 +0530137QDF_STATUS send_set_sta_ps_mode_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh50988cc2016-02-26 18:09:36 +0530138 uint32_t vdev_id, uint8_t val);
139
Govind Singhd7468a52016-03-09 14:32:57 +0530140QDF_STATUS send_set_sta_uapsd_auto_trig_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh50988cc2016-02-26 18:09:36 +0530141 struct sta_uapsd_trig_params *param);
142
Govind Singhd7468a52016-03-09 14:32:57 +0530143QDF_STATUS send_get_temperature_cmd_tlv(wmi_unified_t wmi_handle);
Govind Singh50988cc2016-02-26 18:09:36 +0530144
Govind Singhd7468a52016-03-09 14:32:57 +0530145QDF_STATUS send_set_p2pgo_oppps_req_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh50988cc2016-02-26 18:09:36 +0530146 struct p2p_ps_params *oppps);
147
Govind Singhd7468a52016-03-09 14:32:57 +0530148QDF_STATUS send_set_p2pgo_noa_req_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh50988cc2016-02-26 18:09:36 +0530149 struct p2p_ps_params *noa);
150
Govind Singhd7468a52016-03-09 14:32:57 +0530151QDF_STATUS send_set_smps_params_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singhae855362016-03-07 14:24:22 +0530152 uint8_t vdev_id,
Govind Singh50988cc2016-02-26 18:09:36 +0530153 int value);
154
Govind Singhd7468a52016-03-09 14:32:57 +0530155QDF_STATUS send_set_mimops_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh50988cc2016-02-26 18:09:36 +0530156 uint8_t vdev_id, int value);
157
Govind Singhd7468a52016-03-09 14:32:57 +0530158QDF_STATUS send_ocb_set_utc_time_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singhe7b800c2016-03-01 15:30:53 +0530159 struct ocb_utc_param *utc);
160
Govind Singhd7468a52016-03-09 14:32:57 +0530161QDF_STATUS send_ocb_start_timing_advert_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singhe7b800c2016-03-01 15:30:53 +0530162 struct ocb_timing_advert_param *timing_advert);
163
Govind Singhd7468a52016-03-09 14:32:57 +0530164QDF_STATUS send_ocb_stop_timing_advert_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singhe7b800c2016-03-01 15:30:53 +0530165 struct ocb_timing_advert_param *timing_advert);
166
Govind Singhd7468a52016-03-09 14:32:57 +0530167QDF_STATUS send_ocb_get_tsf_timer_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singhe7b800c2016-03-01 15:30:53 +0530168 uint8_t vdev_id);
169
Govind Singhd7468a52016-03-09 14:32:57 +0530170QDF_STATUS send_dcc_get_stats_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singhe7b800c2016-03-01 15:30:53 +0530171 struct dcc_get_stats_param *get_stats_param);
172
Govind Singhd7468a52016-03-09 14:32:57 +0530173QDF_STATUS send_dcc_clear_stats_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singhe7b800c2016-03-01 15:30:53 +0530174 uint32_t vdev_id, uint32_t dcc_stats_bitmap);
175
Govind Singhd7468a52016-03-09 14:32:57 +0530176QDF_STATUS send_dcc_update_ndl_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singhe7b800c2016-03-01 15:30:53 +0530177 struct dcc_update_ndl_param *update_ndl_param);
178
Govind Singhd7468a52016-03-09 14:32:57 +0530179QDF_STATUS send_ocb_set_config_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singhe7b800c2016-03-01 15:30:53 +0530180 struct ocb_config_param *config, uint32_t *ch_mhz);
Govind Singhd7468a52016-03-09 14:32:57 +0530181QDF_STATUS send_lro_config_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh9bad0002016-03-01 15:54:59 +0530182 struct wmi_lro_config_cmd_t *wmi_lro_cmd);
183
Govind Singhd7468a52016-03-09 14:32:57 +0530184QDF_STATUS send_set_thermal_mgmt_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh9bad0002016-03-01 15:54:59 +0530185 struct thermal_cmd_params *thermal_info);
186
Govind Singhd7468a52016-03-09 14:32:57 +0530187QDF_STATUS send_set_mcc_channel_time_quota_cmd_tlv
Govind Singh9bad0002016-03-01 15:54:59 +0530188 (wmi_unified_t wmi_handle,
189 uint32_t adapter_1_chan_freq,
190 uint32_t adapter_1_quota, uint32_t adapter_2_chan_freq);
191
Govind Singhd7468a52016-03-09 14:32:57 +0530192QDF_STATUS send_set_mcc_channel_time_latency_cmd_tlv
Govind Singh9bad0002016-03-01 15:54:59 +0530193 (wmi_unified_t wmi_handle,
194 uint32_t mcc_channel_freq, uint32_t mcc_channel_time_latency);
195
Govind Singhd7468a52016-03-09 14:32:57 +0530196QDF_STATUS send_set_enable_disable_mcc_adaptive_scheduler_cmd_tlv(
Govind Singh9bad0002016-03-01 15:54:59 +0530197 wmi_unified_t wmi_handle, uint32_t mcc_adaptive_scheduler);
Govind Singhae855362016-03-07 14:24:22 +0530198
Govind Singhd7468a52016-03-09 14:32:57 +0530199QDF_STATUS send_p2p_go_set_beacon_ie_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singhae855362016-03-07 14:24:22 +0530200 A_UINT32 vdev_id, uint8_t *p2p_ie);
201
Govind Singhd7468a52016-03-09 14:32:57 +0530202QDF_STATUS send_probe_rsp_tmpl_send_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singhae855362016-03-07 14:24:22 +0530203 uint8_t vdev_id,
204 struct wmi_probe_resp_params *probe_rsp_info,
205 uint8_t *frm);
206
Govind Singhd7468a52016-03-09 14:32:57 +0530207QDF_STATUS send_process_update_edca_param_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singhae855362016-03-07 14:24:22 +0530208 uint8_t vdev_id,
209 wmi_wmm_vparams gwmm_param[WMI_MAX_NUM_AC]);
210
Govind Singhd7468a52016-03-09 14:32:57 +0530211QDF_STATUS send_vdev_set_gtx_cfg_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singhae855362016-03-07 14:24:22 +0530212 uint32_t if_id,
213 struct wmi_gtx_config *gtx_info);
214
Govind Singhd7468a52016-03-09 14:32:57 +0530215QDF_STATUS send_set_sta_keep_alive_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singhae855362016-03-07 14:24:22 +0530216 struct sta_params *params);
217
Govind Singhd7468a52016-03-09 14:32:57 +0530218QDF_STATUS send_set_sta_sa_query_param_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singhae855362016-03-07 14:24:22 +0530219 uint8_t vdev_id, uint32_t max_retries,
220 uint32_t retry_interval);
221
Govind Singhd7468a52016-03-09 14:32:57 +0530222QDF_STATUS send_bcn_buf_ll_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singhae855362016-03-07 14:24:22 +0530223 wmi_bcn_send_from_host_cmd_fixed_param *param);
224
Govind Singhd7468a52016-03-09 14:32:57 +0530225QDF_STATUS send_set_gateway_params_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singhae855362016-03-07 14:24:22 +0530226 struct gateway_update_req_param *req);
227
Govind Singhd7468a52016-03-09 14:32:57 +0530228QDF_STATUS send_set_rssi_monitoring_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singhae855362016-03-07 14:24:22 +0530229 struct rssi_monitor_param *req);
230
Govind Singhd7468a52016-03-09 14:32:57 +0530231QDF_STATUS send_ipa_offload_control_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singhae855362016-03-07 14:24:22 +0530232 struct ipa_offload_control_params *ipa_offload);
233
Govind Singhd7468a52016-03-09 14:32:57 +0530234QDF_STATUS send_scan_probe_setoui_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singhae855362016-03-07 14:24:22 +0530235 struct scan_mac_oui *psetoui);
236
Govind Singhd7468a52016-03-09 14:32:57 +0530237QDF_STATUS send_reset_passpoint_network_list_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singhae855362016-03-07 14:24:22 +0530238 struct wifi_passpoint_req_param *req);
239
Govind Singhd7468a52016-03-09 14:32:57 +0530240QDF_STATUS send_set_passpoint_network_list_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singhae855362016-03-07 14:24:22 +0530241 struct wifi_passpoint_req_param *req);
242
Govind Singhd7468a52016-03-09 14:32:57 +0530243QDF_STATUS send_set_ric_req_cmd_tlv(wmi_unified_t wmi_handle, void *msg,
Govind Singhae855362016-03-07 14:24:22 +0530244 uint8_t is_add_ts);
245
Govind Singhd7468a52016-03-09 14:32:57 +0530246QDF_STATUS send_set_epno_network_list_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singhae855362016-03-07 14:24:22 +0530247 struct wifi_enhanched_pno_params *req);
248
Govind Singhd7468a52016-03-09 14:32:57 +0530249QDF_STATUS send_extscan_get_capabilities_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singhae855362016-03-07 14:24:22 +0530250 struct extscan_capabilities_params *pgetcapab);
251
Govind Singhd7468a52016-03-09 14:32:57 +0530252QDF_STATUS send_extscan_get_cached_results_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singhae855362016-03-07 14:24:22 +0530253 struct extscan_cached_result_params *pcached_results);
254
Govind Singhd7468a52016-03-09 14:32:57 +0530255QDF_STATUS send_extscan_stop_change_monitor_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singhae855362016-03-07 14:24:22 +0530256 struct extscan_capabilities_reset_params *reset_req);
257
Govind Singhd7468a52016-03-09 14:32:57 +0530258QDF_STATUS send_extscan_start_change_monitor_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singhae855362016-03-07 14:24:22 +0530259 struct extscan_set_sig_changereq_params *
260 psigchange);
261
Govind Singhd7468a52016-03-09 14:32:57 +0530262QDF_STATUS send_extscan_stop_hotlist_monitor_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singhae855362016-03-07 14:24:22 +0530263 struct extscan_bssid_hotlist_reset_params *photlist_reset);
264
Govind Singhd7468a52016-03-09 14:32:57 +0530265QDF_STATUS send_stop_extscan_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singhae855362016-03-07 14:24:22 +0530266 struct extscan_stop_req_params *pstopcmd);
267
Govind Singhd7468a52016-03-09 14:32:57 +0530268QDF_STATUS send_start_extscan_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singhae855362016-03-07 14:24:22 +0530269 struct wifi_scan_cmd_req_params *pstart);
270
Govind Singhd7468a52016-03-09 14:32:57 +0530271QDF_STATUS send_plm_stop_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singhae855362016-03-07 14:24:22 +0530272 const struct plm_req_params *plm);
273
Govind Singhd7468a52016-03-09 14:32:57 +0530274QDF_STATUS send_plm_start_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singhae855362016-03-07 14:24:22 +0530275 const struct plm_req_params *plm,
276 uint32_t *gchannel_list);
277
Govind Singhd7468a52016-03-09 14:32:57 +0530278QDF_STATUS send_pno_stop_cmd_tlv(wmi_unified_t wmi_handle, uint8_t vdev_id);
Govind Singhae855362016-03-07 14:24:22 +0530279
Govind Singhd7468a52016-03-09 14:32:57 +0530280QDF_STATUS send_pno_start_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singhae855362016-03-07 14:24:22 +0530281 struct pno_scan_req_params *pno,
282 uint32_t *gchannel_freq_list);
283
Govind Singhd7468a52016-03-09 14:32:57 +0530284QDF_STATUS send_process_ll_stats_clear_cmd_tlv
Govind Singhae855362016-03-07 14:24:22 +0530285 (wmi_unified_t wmi_handle,
286 const struct ll_stats_clear_params *clear_req,
287 uint8_t addr[IEEE80211_ADDR_LEN]);
288
Govind Singhd7468a52016-03-09 14:32:57 +0530289QDF_STATUS send_process_ll_stats_set_cmd_tlv
Govind Singhae855362016-03-07 14:24:22 +0530290 (wmi_unified_t wmi_handle, const struct ll_stats_set_params *set_req);
291
Govind Singhd7468a52016-03-09 14:32:57 +0530292QDF_STATUS send_process_ll_stats_get_cmd_tlv
Govind Singhae855362016-03-07 14:24:22 +0530293 (wmi_unified_t wmi_handle, const struct ll_stats_get_params *get_req,
294 uint8_t addr[IEEE80211_ADDR_LEN]);
295
Govind Singhd7468a52016-03-09 14:32:57 +0530296QDF_STATUS send_get_stats_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singhae855362016-03-07 14:24:22 +0530297 struct pe_stats_req *get_stats_param,
298 uint8_t addr[IEEE80211_ADDR_LEN]);
Govind Singh229bc0d2016-03-07 15:33:31 +0530299
Govind Singhd7468a52016-03-09 14:32:57 +0530300QDF_STATUS send_snr_request_cmd_tlv(wmi_unified_t wmi_handle);
Govind Singh229bc0d2016-03-07 15:33:31 +0530301
Govind Singhd7468a52016-03-09 14:32:57 +0530302QDF_STATUS send_snr_cmd_tlv(wmi_unified_t wmi_handle, uint8_t vdev_id);
Govind Singh229bc0d2016-03-07 15:33:31 +0530303
Govind Singhd7468a52016-03-09 14:32:57 +0530304QDF_STATUS send_link_status_req_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh229bc0d2016-03-07 15:33:31 +0530305 struct link_status_params *link_status);
306
Govind Singhd7468a52016-03-09 14:32:57 +0530307QDF_STATUS send_lphb_config_hbenable_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh229bc0d2016-03-07 15:33:31 +0530308 wmi_hb_set_enable_cmd_fixed_param *params);
309
Govind Singhd7468a52016-03-09 14:32:57 +0530310QDF_STATUS send_lphb_config_tcp_params_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh229bc0d2016-03-07 15:33:31 +0530311 wmi_hb_set_tcp_params_cmd_fixed_param *lphb_conf_req);
312
Govind Singhd7468a52016-03-09 14:32:57 +0530313QDF_STATUS send_lphb_config_tcp_pkt_filter_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh229bc0d2016-03-07 15:33:31 +0530314 wmi_hb_set_tcp_pkt_filter_cmd_fixed_param *g_hb_tcp_filter_fp);
315
Govind Singhd7468a52016-03-09 14:32:57 +0530316QDF_STATUS send_lphb_config_udp_params_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh229bc0d2016-03-07 15:33:31 +0530317 wmi_hb_set_udp_params_cmd_fixed_param *lphb_conf_req);
318
Govind Singhd7468a52016-03-09 14:32:57 +0530319QDF_STATUS send_lphb_config_udp_pkt_filter_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh229bc0d2016-03-07 15:33:31 +0530320 wmi_hb_set_udp_pkt_filter_cmd_fixed_param *lphb_conf_req);
321
Govind Singhd7468a52016-03-09 14:32:57 +0530322QDF_STATUS send_process_dhcp_ind_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh229bc0d2016-03-07 15:33:31 +0530323 wmi_peer_set_param_cmd_fixed_param *ta_dhcp_ind);
324
Govind Singhd7468a52016-03-09 14:32:57 +0530325QDF_STATUS send_get_link_speed_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh229bc0d2016-03-07 15:33:31 +0530326 wmi_mac_addr peer_macaddr);
327
Govind Singhd7468a52016-03-09 14:32:57 +0530328QDF_STATUS send_egap_conf_params_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh229bc0d2016-03-07 15:33:31 +0530329 wmi_ap_ps_egap_param_cmd_fixed_param *egap_params);
330
Govind Singhd7468a52016-03-09 14:32:57 +0530331QDF_STATUS send_fw_profiling_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh229bc0d2016-03-07 15:33:31 +0530332 uint32_t cmd, uint32_t value1, uint32_t value2);
333
Govind Singhd7468a52016-03-09 14:32:57 +0530334QDF_STATUS send_wow_sta_ra_filter_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh229bc0d2016-03-07 15:33:31 +0530335 uint8_t vdev_id, uint8_t default_pattern,
336 uint16_t rate_limit_interval);
337
Govind Singhd7468a52016-03-09 14:32:57 +0530338QDF_STATUS send_nat_keepalive_en_cmd_tlv(wmi_unified_t wmi_handle, uint8_t vdev_id);
Govind Singh229bc0d2016-03-07 15:33:31 +0530339
Govind Singhd7468a52016-03-09 14:32:57 +0530340QDF_STATUS send_csa_offload_enable_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh229bc0d2016-03-07 15:33:31 +0530341 uint8_t vdev_id);
342
Govind Singhd7468a52016-03-09 14:32:57 +0530343QDF_STATUS send_start_oem_data_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh229bc0d2016-03-07 15:33:31 +0530344 uint8_t data_len,
345 uint8_t *data);
346
Govind Singhd7468a52016-03-09 14:32:57 +0530347QDF_STATUS
Govind Singh229bc0d2016-03-07 15:33:31 +0530348send_dfs_phyerr_filter_offload_en_cmd_tlv(wmi_unified_t wmi_handle,
349 bool dfs_phyerr_filter_offload);
350
Govind Singhd7468a52016-03-09 14:32:57 +0530351QDF_STATUS send_pktlog_wmi_send_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh229bc0d2016-03-07 15:33:31 +0530352 WMI_PKTLOG_EVENT pktlog_event,
353 WMI_CMD_ID cmd_id);
354
Govind Singhd7468a52016-03-09 14:32:57 +0530355QDF_STATUS send_add_wow_wakeup_event_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh229bc0d2016-03-07 15:33:31 +0530356 uint32_t vdev_id,
357 uint32_t bitmap,
358 bool enable);
359
Govind Singhd7468a52016-03-09 14:32:57 +0530360QDF_STATUS send_wow_patterns_to_fw_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh229bc0d2016-03-07 15:33:31 +0530361 uint8_t vdev_id, uint8_t ptrn_id,
362 const uint8_t *ptrn, uint8_t ptrn_len,
363 uint8_t ptrn_offset, const uint8_t *mask,
364 uint8_t mask_len, bool user,
365 uint8_t default_patterns);
366
Govind Singhd7468a52016-03-09 14:32:57 +0530367QDF_STATUS send_wow_delete_pattern_cmd_tlv(wmi_unified_t wmi_handle, uint8_t ptrn_id,
Govind Singh229bc0d2016-03-07 15:33:31 +0530368 uint8_t vdev_id);
369
Govind Singhd7468a52016-03-09 14:32:57 +0530370QDF_STATUS send_host_wakeup_ind_to_fw_cmd_tlv(wmi_unified_t wmi_handle);
Govind Singh229bc0d2016-03-07 15:33:31 +0530371
Govind Singhd7468a52016-03-09 14:32:57 +0530372QDF_STATUS send_del_ts_cmd_tlv(wmi_unified_t wmi_handle, uint8_t vdev_id,
Govind Singh229bc0d2016-03-07 15:33:31 +0530373 uint8_t ac);
374
Govind Singhd7468a52016-03-09 14:32:57 +0530375QDF_STATUS send_aggr_qos_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh229bc0d2016-03-07 15:33:31 +0530376 struct aggr_add_ts_param *aggr_qos_rsp_msg);
377
Govind Singhd7468a52016-03-09 14:32:57 +0530378QDF_STATUS send_add_ts_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh229bc0d2016-03-07 15:33:31 +0530379 struct add_ts_param *msg);
380
Govind Singhd7468a52016-03-09 14:32:57 +0530381QDF_STATUS send_enable_disable_packet_filter_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh229bc0d2016-03-07 15:33:31 +0530382 uint8_t vdev_id, bool enable);
383
Govind Singhd7468a52016-03-09 14:32:57 +0530384QDF_STATUS send_config_packet_filter_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh229bc0d2016-03-07 15:33:31 +0530385 uint8_t vdev_id, struct rcv_pkt_filter_config *rcv_filter_param,
386 uint8_t filter_id, bool enable);
387
Govind Singhd7468a52016-03-09 14:32:57 +0530388QDF_STATUS send_add_clear_mcbc_filter_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh229bc0d2016-03-07 15:33:31 +0530389 uint8_t vdev_id,
Govind Singhd7468a52016-03-09 14:32:57 +0530390 struct qdf_mac_addr multicast_addr,
Govind Singh229bc0d2016-03-07 15:33:31 +0530391 bool clearList);
392
Govind Singhd7468a52016-03-09 14:32:57 +0530393QDF_STATUS send_gtk_offload_cmd_tlv(wmi_unified_t wmi_handle, uint8_t vdev_id,
Govind Singh229bc0d2016-03-07 15:33:31 +0530394 struct gtk_offload_params *params,
395 bool enable_offload,
396 uint32_t gtk_offload_opcode);
397
Govind Singhd7468a52016-03-09 14:32:57 +0530398QDF_STATUS send_process_gtk_offload_getinfo_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh229bc0d2016-03-07 15:33:31 +0530399 uint8_t vdev_id,
400 uint64_t offload_req_opcode);
401
Govind Singhd7468a52016-03-09 14:32:57 +0530402QDF_STATUS send_process_add_periodic_tx_ptrn_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh229bc0d2016-03-07 15:33:31 +0530403 struct periodic_tx_pattern *
404 pAddPeriodicTxPtrnParams,
405 uint8_t vdev_id);
406
Govind Singhd7468a52016-03-09 14:32:57 +0530407QDF_STATUS send_process_del_periodic_tx_ptrn_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh229bc0d2016-03-07 15:33:31 +0530408 uint8_t vdev_id,
409 uint8_t pattern_id);
410
Govind Singhd7468a52016-03-09 14:32:57 +0530411QDF_STATUS send_stats_ext_req_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh229bc0d2016-03-07 15:33:31 +0530412 struct stats_ext_params *preq);
413
Govind Singhd7468a52016-03-09 14:32:57 +0530414QDF_STATUS send_enable_ext_wow_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh229bc0d2016-03-07 15:33:31 +0530415 struct ext_wow_params *params);
416
Govind Singhd7468a52016-03-09 14:32:57 +0530417QDF_STATUS send_set_app_type2_params_in_fw_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh229bc0d2016-03-07 15:33:31 +0530418 struct app_type2_params *appType2Params);
419
Govind Singhd7468a52016-03-09 14:32:57 +0530420QDF_STATUS send_set_auto_shutdown_timer_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh229bc0d2016-03-07 15:33:31 +0530421 uint32_t timer_val);
422
Govind Singhd7468a52016-03-09 14:32:57 +0530423QDF_STATUS send_nan_req_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh229bc0d2016-03-07 15:33:31 +0530424 struct nan_req_params *nan_req);
425
Govind Singhd7468a52016-03-09 14:32:57 +0530426QDF_STATUS send_process_dhcpserver_offload_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh229bc0d2016-03-07 15:33:31 +0530427 struct dhcp_offload_info_params *pDhcpSrvOffloadInfo);
428
Govind Singhd7468a52016-03-09 14:32:57 +0530429QDF_STATUS send_process_ch_avoid_update_cmd_tlv(wmi_unified_t wmi_handle);
Govind Singh229bc0d2016-03-07 15:33:31 +0530430
Govind Singhd7468a52016-03-09 14:32:57 +0530431QDF_STATUS send_regdomain_info_to_fw_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh229bc0d2016-03-07 15:33:31 +0530432 uint32_t reg_dmn, uint16_t regdmn2G,
433 uint16_t regdmn5G, int8_t ctl2G,
434 int8_t ctl5G);
435
Govind Singhd7468a52016-03-09 14:32:57 +0530436QDF_STATUS send_set_tdls_offchan_mode_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh229bc0d2016-03-07 15:33:31 +0530437 struct tdls_channel_switch_params *chan_switch_params);
438
Govind Singhd7468a52016-03-09 14:32:57 +0530439QDF_STATUS send_update_fw_tdls_state_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh229bc0d2016-03-07 15:33:31 +0530440 void *tdls_param, uint8_t tdls_state);
441
Govind Singhd7468a52016-03-09 14:32:57 +0530442QDF_STATUS send_update_tdls_peer_state_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh229bc0d2016-03-07 15:33:31 +0530443 struct tdls_peer_state_params *peerStateParams,
444 uint32_t *ch_mhz);
445
446
Govind Singhd7468a52016-03-09 14:32:57 +0530447QDF_STATUS send_process_fw_mem_dump_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh229bc0d2016-03-07 15:33:31 +0530448 struct fw_dump_req_param *mem_dump_req);
449
Govind Singhd7468a52016-03-09 14:32:57 +0530450QDF_STATUS send_process_set_ie_info_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh229bc0d2016-03-07 15:33:31 +0530451 struct vdev_ie_info_param *ie_info);
Govind Singh71ee2d72016-03-07 16:30:32 +0530452
Govind Singhd7468a52016-03-09 14:32:57 +0530453QDF_STATUS send_init_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh71ee2d72016-03-07 16:30:32 +0530454 wmi_resource_config *res_cfg,
455 uint8_t num_mem_chunks, struct wmi_host_mem_chunk *mem_chunk,
456 bool action);
457
Govind Singhd7468a52016-03-09 14:32:57 +0530458QDF_STATUS send_saved_init_cmd_tlv(wmi_unified_t wmi_handle);
Govind Singh71ee2d72016-03-07 16:30:32 +0530459
Govind Singhd7468a52016-03-09 14:32:57 +0530460QDF_STATUS save_fw_version_cmd_tlv(wmi_unified_t wmi_handle, void *evt_buf);
Govind Singh2ae94372016-03-07 16:45:38 +0530461
Govind Singhd7468a52016-03-09 14:32:57 +0530462QDF_STATUS check_and_update_fw_version_cmd_tlv(wmi_unified_t wmi_hdl, void *ev);
Govind Singh2ae94372016-03-07 16:45:38 +0530463
Govind Singhd7468a52016-03-09 14:32:57 +0530464QDF_STATUS send_set_base_macaddr_indicate_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh2ae94372016-03-07 16:45:38 +0530465 uint8_t *custom_addr);
466
Govind Singhd7468a52016-03-09 14:32:57 +0530467QDF_STATUS send_log_supported_evt_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh2ae94372016-03-07 16:45:38 +0530468 uint8_t *event,
469 uint32_t len);
470
Govind Singhd7468a52016-03-09 14:32:57 +0530471QDF_STATUS send_enable_specific_fw_logs_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh2ae94372016-03-07 16:45:38 +0530472 struct wmi_wifi_start_log *start_log);
473
Govind Singhd7468a52016-03-09 14:32:57 +0530474QDF_STATUS send_flush_logs_to_fw_cmd_tlv(wmi_unified_t wmi_handle);
Govind Singh2ae94372016-03-07 16:45:38 +0530475
Govind Singhd7468a52016-03-09 14:32:57 +0530476QDF_STATUS send_soc_set_pcl_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh2ae94372016-03-07 16:45:38 +0530477 struct wmi_pcl_list *msg);
478
Govind Singhd7468a52016-03-09 14:32:57 +0530479QDF_STATUS send_soc_set_hw_mode_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh2ae94372016-03-07 16:45:38 +0530480 uint32_t hw_mode_index);
481
Govind Singhd7468a52016-03-09 14:32:57 +0530482QDF_STATUS send_soc_set_dual_mac_config_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh2ae94372016-03-07 16:45:38 +0530483 struct wmi_dual_mac_config *msg);
484
Govind Singhd7468a52016-03-09 14:32:57 +0530485QDF_STATUS send_enable_arp_ns_offload_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh2ae94372016-03-07 16:45:38 +0530486 struct host_offload_req_param *param, bool arp_only,
487 uint8_t vdev_id);
488
Govind Singhd7468a52016-03-09 14:32:57 +0530489QDF_STATUS send_set_led_flashing_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh2ae94372016-03-07 16:45:38 +0530490 struct flashing_req_params *flashing);
491
Govind Singhd7468a52016-03-09 14:32:57 +0530492QDF_STATUS send_app_type1_params_in_fw_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh2ae94372016-03-07 16:45:38 +0530493 struct app_type1_params *app_type1_params);
494
Govind Singhd7468a52016-03-09 14:32:57 +0530495QDF_STATUS
Govind Singh2ae94372016-03-07 16:45:38 +0530496send_set_ssid_hotlist_cmd_tlv(wmi_unified_t wmi_handle,
497 struct ssid_hotlist_request_params *request);
498
Govind Singhd7468a52016-03-09 14:32:57 +0530499QDF_STATUS send_process_roam_synch_complete_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh2ae94372016-03-07 16:45:38 +0530500 uint8_t vdev_id);
501
Govind Singhd7468a52016-03-09 14:32:57 +0530502QDF_STATUS send_unit_test_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh2ae94372016-03-07 16:45:38 +0530503 struct wmi_unit_test_cmd *wmi_utest);
504
Govind Singhd7468a52016-03-09 14:32:57 +0530505QDF_STATUS send_roam_invoke_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh2ae94372016-03-07 16:45:38 +0530506 struct wmi_roam_invoke_cmd *roaminvoke,
507 uint32_t ch_hz);
508
Govind Singhd7468a52016-03-09 14:32:57 +0530509QDF_STATUS send_roam_scan_offload_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh2ae94372016-03-07 16:45:38 +0530510 uint32_t command, uint32_t vdev_id);
511
Govind Singhd7468a52016-03-09 14:32:57 +0530512QDF_STATUS send_roam_scan_offload_ap_profile_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh2ae94372016-03-07 16:45:38 +0530513 wmi_ap_profile *ap_profile_p,
514 uint32_t vdev_id);
515
Govind Singhd7468a52016-03-09 14:32:57 +0530516QDF_STATUS send_roam_scan_offload_scan_period_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh2ae94372016-03-07 16:45:38 +0530517 uint32_t scan_period,
518 uint32_t scan_age,
519 uint32_t vdev_id);
520
Govind Singhd7468a52016-03-09 14:32:57 +0530521QDF_STATUS send_roam_scan_offload_chan_list_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh2ae94372016-03-07 16:45:38 +0530522 uint8_t chan_count,
523 uint8_t *chan_list,
524 uint8_t list_type, uint32_t vdev_id);
525
Govind Singhd7468a52016-03-09 14:32:57 +0530526QDF_STATUS send_roam_scan_offload_rssi_change_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh2ae94372016-03-07 16:45:38 +0530527 uint32_t vdev_id,
528 int32_t rssi_change_thresh,
529 uint32_t bcn_rssi_weight,
530 uint32_t hirssi_delay_btw_scans);
531
Govind Singhd7468a52016-03-09 14:32:57 +0530532QDF_STATUS send_get_buf_extscan_hotlist_cmd_tlv(wmi_unified_t wmi_handle,
Govind Singh2ae94372016-03-07 16:45:38 +0530533 struct ext_scan_setbssi_hotlist_params *
534 photlist, int *buf_len);
535#endif
536