1  /*
2   * Copyright (c) 2016-2021 The Linux Foundation. All rights reserved.
3   * Copyright (c) 2021-2024 Qualcomm Innovation Center, Inc. All rights reserved.
4   *
5   * Permission to use, copy, modify, and/or distribute this software for
6   * any purpose with or without fee is hereby granted, provided that the
7   * above copyright notice and this permission notice appear in all
8   * copies.
9   *
10   * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
11   * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
12   * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
13   * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
14   * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
15   * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
16   * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
17   * PERFORMANCE OF THIS SOFTWARE.
18   */
19  
20  #include "wmi_unified_priv.h"
21  #include "wmi_unified_param.h"
22  #include "qdf_module.h"
23  #include "cdp_txrx_cmn_struct.h"
24  #include <wmi_unified_vdev_api.h>
25  
26  static const wmi_host_channel_width mode_to_width[WMI_HOST_MODE_MAX] = {
27  	[WMI_HOST_MODE_11A]           = WMI_HOST_CHAN_WIDTH_20,
28  	[WMI_HOST_MODE_11G]           = WMI_HOST_CHAN_WIDTH_20,
29  	[WMI_HOST_MODE_11B]           = WMI_HOST_CHAN_WIDTH_20,
30  	[WMI_HOST_MODE_11GONLY]       = WMI_HOST_CHAN_WIDTH_20,
31  	[WMI_HOST_MODE_11NA_HT20]     = WMI_HOST_CHAN_WIDTH_20,
32  	[WMI_HOST_MODE_11NG_HT20]     = WMI_HOST_CHAN_WIDTH_20,
33  	[WMI_HOST_MODE_11AC_VHT20]    = WMI_HOST_CHAN_WIDTH_20,
34  	[WMI_HOST_MODE_11AC_VHT20_2G] = WMI_HOST_CHAN_WIDTH_20,
35  	[WMI_HOST_MODE_11NA_HT40]     = WMI_HOST_CHAN_WIDTH_40,
36  	[WMI_HOST_MODE_11NG_HT40]     = WMI_HOST_CHAN_WIDTH_40,
37  	[WMI_HOST_MODE_11AC_VHT40]    = WMI_HOST_CHAN_WIDTH_40,
38  	[WMI_HOST_MODE_11AC_VHT40_2G] = WMI_HOST_CHAN_WIDTH_40,
39  	[WMI_HOST_MODE_11AC_VHT80]    = WMI_HOST_CHAN_WIDTH_80,
40  	[WMI_HOST_MODE_11AC_VHT80_2G] = WMI_HOST_CHAN_WIDTH_80,
41  #if CONFIG_160MHZ_SUPPORT
42  	[WMI_HOST_MODE_11AC_VHT80_80] = WMI_HOST_CHAN_WIDTH_80P80,
43  	[WMI_HOST_MODE_11AC_VHT160]   = WMI_HOST_CHAN_WIDTH_160,
44  #endif
45  
46  #if SUPPORT_11AX
47  	[WMI_HOST_MODE_11AX_HE20]     = WMI_HOST_CHAN_WIDTH_20,
48  	[WMI_HOST_MODE_11AX_HE40]     = WMI_HOST_CHAN_WIDTH_40,
49  	[WMI_HOST_MODE_11AX_HE80]     = WMI_HOST_CHAN_WIDTH_80,
50  	[WMI_HOST_MODE_11AX_HE80_80]  = WMI_HOST_CHAN_WIDTH_80P80,
51  	[WMI_HOST_MODE_11AX_HE160]    = WMI_HOST_CHAN_WIDTH_160,
52  	[WMI_HOST_MODE_11AX_HE20_2G]  = WMI_HOST_CHAN_WIDTH_20,
53  	[WMI_HOST_MODE_11AX_HE40_2G]  = WMI_HOST_CHAN_WIDTH_40,
54  	[WMI_HOST_MODE_11AX_HE80_2G]  = WMI_HOST_CHAN_WIDTH_80,
55  #endif
56  #ifdef WLAN_FEATURE_11BE
57  	[WMI_HOST_MODE_11BE_EHT20]     = WMI_HOST_CHAN_WIDTH_20,
58  	[WMI_HOST_MODE_11BE_EHT40]     = WMI_HOST_CHAN_WIDTH_40,
59  	[WMI_HOST_MODE_11BE_EHT80]     = WMI_HOST_CHAN_WIDTH_80,
60  	[WMI_HOST_MODE_11BE_EHT320]    = WMI_HOST_CHAN_WIDTH_320,
61  	[WMI_HOST_MODE_11BE_EHT160]    = WMI_HOST_CHAN_WIDTH_160,
62  	[WMI_HOST_MODE_11BE_EHT20_2G]  = WMI_HOST_CHAN_WIDTH_20,
63  	[WMI_HOST_MODE_11BE_EHT40_2G]  = WMI_HOST_CHAN_WIDTH_40,
64  #endif
65  };
66  
wmi_unified_soc_set_hw_mode_cmd(wmi_unified_t wmi_handle,uint32_t hw_mode_index)67  QDF_STATUS wmi_unified_soc_set_hw_mode_cmd(wmi_unified_t wmi_handle,
68  					   uint32_t hw_mode_index)
69  {
70  	if (wmi_handle->ops->send_pdev_set_hw_mode_cmd)
71  		return wmi_handle->ops->send_pdev_set_hw_mode_cmd(
72  								wmi_handle,
73  								hw_mode_index);
74  
75  	return QDF_STATUS_E_FAILURE;
76  }
77  
wmi_unified_soc_set_rf_path_cmd(wmi_unified_t wmi_handle,uint32_t rf_path_index,uint8_t pdev_id)78  QDF_STATUS wmi_unified_soc_set_rf_path_cmd(wmi_unified_t wmi_handle,
79  					   uint32_t rf_path_index,
80  					   uint8_t pdev_id)
81  {
82  	if (wmi_handle->ops->send_pdev_set_rf_path_cmd)
83  		return wmi_handle->ops->send_pdev_set_rf_path_cmd(
84  								wmi_handle,
85  								rf_path_index,
86  								pdev_id);
87  
88  	return QDF_STATUS_E_FAILURE;
89  }
90  
wmi_unified_vdev_create_send(wmi_unified_t wmi_handle,uint8_t macaddr[QDF_MAC_ADDR_SIZE],struct vdev_create_params * param)91  QDF_STATUS wmi_unified_vdev_create_send(wmi_unified_t wmi_handle,
92  					uint8_t macaddr[QDF_MAC_ADDR_SIZE],
93  					struct vdev_create_params *param)
94  {
95  	if (wmi_handle->ops->send_vdev_create_cmd)
96  		return wmi_handle->ops->send_vdev_create_cmd(wmi_handle,
97  			   macaddr, param);
98  
99  	return QDF_STATUS_E_FAILURE;
100  }
101  
wmi_unified_vdev_delete_send(wmi_unified_t wmi_handle,uint8_t if_id)102  QDF_STATUS wmi_unified_vdev_delete_send(wmi_unified_t wmi_handle,
103  					uint8_t if_id)
104  {
105  	if (wmi_handle->ops->send_vdev_delete_cmd)
106  		return wmi_handle->ops->send_vdev_delete_cmd(wmi_handle,
107  			   if_id);
108  
109  	return QDF_STATUS_E_FAILURE;
110  }
111  
112  QDF_STATUS
wmi_unified_vdev_nss_chain_params_send(wmi_unified_t wmi_handle,uint8_t vdev_id,struct vdev_nss_chains * user_cfg)113  wmi_unified_vdev_nss_chain_params_send(wmi_unified_t wmi_handle,
114  				       uint8_t vdev_id,
115  				       struct vdev_nss_chains *user_cfg)
116  {
117  	if (wmi_handle->ops->send_vdev_nss_chain_params_cmd)
118  		return wmi_handle->ops->send_vdev_nss_chain_params_cmd(
119  							wmi_handle,
120  							vdev_id,
121  							user_cfg);
122  
123  	return QDF_STATUS_E_FAILURE;
124  }
125  
wmi_unified_vdev_stop_send(wmi_unified_t wmi_handle,struct vdev_stop_params * params)126  QDF_STATUS wmi_unified_vdev_stop_send(wmi_unified_t  wmi_handle,
127  				      struct vdev_stop_params *params)
128  {
129  	if (wmi_handle->ops->send_vdev_stop_cmd)
130  		return wmi_handle->ops->send_vdev_stop_cmd(wmi_handle, params);
131  
132  	return QDF_STATUS_E_FAILURE;
133  }
134  
wmi_unified_vdev_down_send(wmi_unified_t wmi_handle,uint8_t vdev_id)135  QDF_STATUS wmi_unified_vdev_down_send(wmi_unified_t wmi_handle,
136  				      uint8_t vdev_id)
137  {
138  	if (wmi_handle->ops->send_vdev_down_cmd)
139  		return wmi_handle->ops->send_vdev_down_cmd(wmi_handle, vdev_id);
140  
141  	return QDF_STATUS_E_FAILURE;
142  }
143  
wmi_unified_vdev_start_send(wmi_unified_t wmi_handle,struct vdev_start_params * req)144  QDF_STATUS wmi_unified_vdev_start_send(wmi_unified_t wmi_handle,
145  				       struct vdev_start_params *req)
146  {
147  	if (wmi_handle->ops->send_vdev_start_cmd)
148  		return wmi_handle->ops->send_vdev_start_cmd(wmi_handle, req);
149  
150  	return QDF_STATUS_E_FAILURE;
151  }
152  
153  QDF_STATUS
wmi_unified_vdev_set_nac_rssi_send(wmi_unified_t wmi_handle,struct vdev_scan_nac_rssi_params * req)154  wmi_unified_vdev_set_nac_rssi_send(wmi_unified_t wmi_handle,
155  				   struct vdev_scan_nac_rssi_params *req)
156  {
157  	if (wmi_handle->ops->send_vdev_set_nac_rssi_cmd)
158  		return wmi_handle->ops->send_vdev_set_nac_rssi_cmd(wmi_handle, req);
159  
160  	return QDF_STATUS_E_FAILURE;
161  }
162  
163  QDF_STATUS
wmi_unified_peer_flush_tids_send(wmi_unified_t wmi_handle,uint8_t peer_addr[QDF_MAC_ADDR_SIZE],struct peer_flush_params * param)164  wmi_unified_peer_flush_tids_send(wmi_unified_t wmi_handle,
165  				 uint8_t peer_addr[QDF_MAC_ADDR_SIZE],
166  				 struct peer_flush_params *param)
167  {
168  	if (wmi_handle->ops->send_peer_flush_tids_cmd)
169  		return wmi_handle->ops->send_peer_flush_tids_cmd(wmi_handle,
170  				  peer_addr, param);
171  
172  	return QDF_STATUS_E_FAILURE;
173  }
174  
175  #ifdef WLAN_FEATURE_PEER_TXQ_FLUSH_CONF
176  QDF_STATUS
wmi_unified_peer_txq_flush_config_send(wmi_unified_t wmi_handle,struct peer_txq_flush_config_params * pr)177  wmi_unified_peer_txq_flush_config_send(wmi_unified_t wmi_handle,
178  				       struct peer_txq_flush_config_params *pr)
179  {
180  	struct wmi_ops *ops = wmi_handle->ops;
181  
182  	if (ops->send_peer_txq_flush_config_cmd)
183  		return ops->send_peer_txq_flush_config_cmd(wmi_handle, pr);
184  
185  	return QDF_STATUS_E_FAILURE;
186  }
187  #endif
188  
wmi_unified_peer_delete_send(wmi_unified_t wmi_handle,uint8_t peer_addr[QDF_MAC_ADDR_SIZE],struct peer_delete_cmd_params * param)189  QDF_STATUS wmi_unified_peer_delete_send(wmi_unified_t wmi_handle,
190  					uint8_t peer_addr[QDF_MAC_ADDR_SIZE],
191  					struct peer_delete_cmd_params *param)
192  {
193  	if (wmi_handle->ops->send_peer_delete_cmd)
194  		return wmi_handle->ops->send_peer_delete_cmd(
195  				wmi_handle,
196  				peer_addr, param);
197  
198  	return QDF_STATUS_E_FAILURE;
199  }
200  
wmi_unified_peer_delete_all_send(wmi_unified_t wmi_hdl,struct peer_delete_all_params * param)201  QDF_STATUS wmi_unified_peer_delete_all_send(
202  				wmi_unified_t wmi_hdl,
203  				struct peer_delete_all_params *param)
204  {
205  	if (wmi_hdl->ops->send_peer_delete_all_cmd)
206  		return wmi_hdl->ops->send_peer_delete_all_cmd(wmi_hdl, param);
207  
208  	return QDF_STATUS_E_FAILURE;
209  }
210  
wmi_set_peer_param_send(wmi_unified_t wmi_handle,uint8_t peer_addr[QDF_MAC_ADDR_SIZE],struct peer_set_params * param)211  QDF_STATUS wmi_set_peer_param_send(wmi_unified_t wmi_handle,
212  				   uint8_t peer_addr[QDF_MAC_ADDR_SIZE],
213  				   struct peer_set_params *param)
214  {
215  	if (wmi_handle->ops->send_peer_param_cmd)
216  		return wmi_handle->ops->send_peer_param_cmd(wmi_handle,
217  				peer_addr, param);
218  
219  	return QDF_STATUS_E_FAILURE;
220  }
221  
wmi_unified_vdev_up_send(wmi_unified_t wmi_handle,uint8_t bssid[QDF_MAC_ADDR_SIZE],struct vdev_up_params * params)222  QDF_STATUS wmi_unified_vdev_up_send(wmi_unified_t wmi_handle,
223  				    uint8_t bssid[QDF_MAC_ADDR_SIZE],
224  				    struct vdev_up_params *params)
225  {
226  	if (wmi_handle->ops->send_vdev_up_cmd)
227  		return wmi_handle->ops->send_vdev_up_cmd(wmi_handle, bssid,
228  					params);
229  
230  	return QDF_STATUS_E_FAILURE;
231  }
232  
wmi_unified_peer_create_send(wmi_unified_t wmi_handle,struct peer_create_params * param)233  QDF_STATUS wmi_unified_peer_create_send(wmi_unified_t wmi_handle,
234  					struct peer_create_params *param)
235  {
236  	if (wmi_handle->ops->send_peer_create_cmd)
237  		return wmi_handle->ops->send_peer_create_cmd(wmi_handle, param);
238  
239  	return QDF_STATUS_E_FAILURE;
240  }
241  
wmi_unified_peer_rx_reorder_queue_setup_send(wmi_unified_t wmi_handle,struct rx_reorder_queue_setup_params * param)242  QDF_STATUS wmi_unified_peer_rx_reorder_queue_setup_send(
243  		wmi_unified_t wmi_handle,
244  		struct rx_reorder_queue_setup_params *param)
245  {
246  	if (wmi_handle->ops->send_peer_rx_reorder_queue_setup_cmd)
247  		return wmi_handle->ops->send_peer_rx_reorder_queue_setup_cmd(
248  			wmi_handle, param);
249  
250  	return QDF_STATUS_E_FAILURE;
251  }
252  
wmi_unified_peer_multi_rx_reorder_queue_setup_send(wmi_unified_t wmi_handle,struct multi_rx_reorder_queue_setup_params * param)253  QDF_STATUS wmi_unified_peer_multi_rx_reorder_queue_setup_send(
254  		wmi_unified_t wmi_handle,
255  		struct multi_rx_reorder_queue_setup_params *param)
256  {
257  	if (wmi_handle->ops->send_peer_multi_rx_reorder_queue_setup_cmd)
258  		return wmi_handle->ops->
259  			send_peer_multi_rx_reorder_queue_setup_cmd(
260  							wmi_handle, param);
261  
262  	return QDF_STATUS_E_FAILURE;
263  }
264  
wmi_unified_peer_rx_reorder_queue_remove_send(wmi_unified_t wmi_handle,struct rx_reorder_queue_remove_params * param)265  QDF_STATUS wmi_unified_peer_rx_reorder_queue_remove_send(
266  		wmi_unified_t wmi_handle,
267  		struct rx_reorder_queue_remove_params *param)
268  {
269  	if (wmi_handle->ops->send_peer_rx_reorder_queue_remove_cmd)
270  		return wmi_handle->ops->send_peer_rx_reorder_queue_remove_cmd(
271  			wmi_handle, param);
272  
273  	return QDF_STATUS_E_FAILURE;
274  }
275  
276  #ifdef WLAN_SUPPORT_GREEN_AP
wmi_unified_green_ap_ps_send(wmi_unified_t wmi_handle,uint32_t value,uint8_t pdev_id)277  QDF_STATUS wmi_unified_green_ap_ps_send(wmi_unified_t wmi_handle,
278  					uint32_t value, uint8_t pdev_id)
279  {
280  	if (wmi_handle->ops->send_green_ap_ps_cmd)
281  		return wmi_handle->ops->send_green_ap_ps_cmd(wmi_handle, value,
282  				  pdev_id);
283  
284  	return QDF_STATUS_E_FAILURE;
285  }
286  
287  #else
wmi_unified_green_ap_ps_send(wmi_unified_t wmi_handle,uint32_t value,uint8_t pdev_id)288  QDF_STATUS wmi_unified_green_ap_ps_send(wmi_unified_t wmi_handle,
289  					uint32_t value, uint8_t pdev_id)
290  {
291  	return QDF_STATUS_SUCCESS;
292  }
293  #endif /* WLAN_SUPPORT_GREEN_AP */
294  
295  #ifdef WLAN_SUPPORT_GAP_LL_PS_MODE
wmi_unified_green_ap_ll_ps_send(wmi_unified_t wmi_handle,struct green_ap_ll_ps_cmd_param * ll_ps_params)296  QDF_STATUS wmi_unified_green_ap_ll_ps_send(
297  		wmi_unified_t wmi_handle,
298  		struct green_ap_ll_ps_cmd_param *ll_ps_params)
299  {
300  	if (wmi_handle->ops->send_green_ap_ll_ps_cmd)
301  		return wmi_handle->ops->send_green_ap_ll_ps_cmd(
302  				wmi_handle,
303  				ll_ps_params);
304  
305  	return QDF_STATUS_E_FAILURE;
306  }
307  
wmi_unified_extract_green_ap_ll_ps_param(wmi_unified_t wmi_handle,uint8_t * evt_buf,struct wlan_green_ap_ll_ps_event_param * green_ap_ll_ps_event_param)308  QDF_STATUS wmi_unified_extract_green_ap_ll_ps_param(
309  	wmi_unified_t wmi_handle, uint8_t *evt_buf,
310  	struct wlan_green_ap_ll_ps_event_param *green_ap_ll_ps_event_param)
311  {
312  	if (wmi_handle->ops->extract_green_ap_ll_ps_param)
313  		return wmi_handle->ops->extract_green_ap_ll_ps_param(
314  				evt_buf,
315  				green_ap_ll_ps_event_param);
316  
317  	return QDF_STATUS_E_FAILURE;
318  }
319  #endif
320  
321  QDF_STATUS
wmi_unified_pdev_utf_cmd_send(wmi_unified_t wmi_handle,struct pdev_utf_params * param,uint8_t mac_id)322  wmi_unified_pdev_utf_cmd_send(wmi_unified_t wmi_handle,
323  			      struct pdev_utf_params *param,
324  			      uint8_t mac_id)
325  {
326  	if (wmi_handle->ops->send_pdev_utf_cmd)
327  		return wmi_handle->ops->send_pdev_utf_cmd(wmi_handle, param,
328  				  mac_id);
329  
330  	return QDF_STATUS_E_FAILURE;
331  }
332  
333  QDF_STATUS
wmi_unified_pdev_param_send(wmi_unified_t wmi_handle,struct pdev_params * param,uint8_t mac_id)334  wmi_unified_pdev_param_send(wmi_unified_t wmi_handle,
335  			    struct pdev_params *param,
336  			    uint8_t mac_id)
337  {
338  	if (wmi_handle->ops->send_pdev_param_cmd)
339  		return wmi_handle->ops->send_pdev_param_cmd(wmi_handle, param,
340  				  mac_id);
341  
342  	return QDF_STATUS_E_FAILURE;
343  }
344  
345  QDF_STATUS
wmi_unified_multiple_pdev_param_send(wmi_unified_t wmi_handle,struct set_multiple_pdev_vdev_param * params)346  wmi_unified_multiple_pdev_param_send(wmi_unified_t wmi_handle,
347  				     struct set_multiple_pdev_vdev_param *params)
348  {
349  	if (wmi_handle->ops->send_multiple_pdev_param_cmd)
350  		return wmi_handle->ops->send_multiple_pdev_param_cmd(wmi_handle,
351  								     params);
352  
353  	return QDF_STATUS_E_FAILURE;
354  }
355  
356  QDF_STATUS
wmi_unified_multiple_vdev_param_send(wmi_unified_t wmi_handle,struct set_multiple_pdev_vdev_param * params)357  wmi_unified_multiple_vdev_param_send(wmi_unified_t wmi_handle,
358  				     struct set_multiple_pdev_vdev_param *params)
359  {
360  	if (wmi_handle->ops->send_multiple_vdev_param_cmd)
361  		return wmi_handle->ops->send_multiple_vdev_param_cmd(wmi_handle,
362  								     params);
363  	return QDF_STATUS_E_FAILURE;
364  }
365  
366  QDF_STATUS
wmi_unified_set_mac_addr_rx_filter(wmi_unified_t wmi_handle,struct set_rx_mac_filter * params)367  wmi_unified_set_mac_addr_rx_filter(wmi_unified_t wmi_handle,
368  				   struct set_rx_mac_filter *params)
369  {
370  	if (wmi_handle->ops->set_mac_addr_rx_filter)
371  		return wmi_handle->ops->set_mac_addr_rx_filter(wmi_handle,
372  							       params);
373  	return QDF_STATUS_E_FAILURE;
374  }
375  
wmi_unified_suspend_send(wmi_unified_t wmi_handle,struct suspend_params * param,uint8_t mac_id)376  QDF_STATUS wmi_unified_suspend_send(wmi_unified_t wmi_handle,
377  				    struct suspend_params *param,
378  				    uint8_t mac_id)
379  {
380  	if (wmi_handle->ops->send_suspend_cmd)
381  		return wmi_handle->ops->send_suspend_cmd(wmi_handle, param,
382  				  mac_id);
383  
384  	return QDF_STATUS_E_FAILURE;
385  }
386  
wmi_unified_resume_send(wmi_unified_t wmi_handle,uint8_t mac_id)387  QDF_STATUS wmi_unified_resume_send(wmi_unified_t wmi_handle,
388  				   uint8_t mac_id)
389  {
390  	if (wmi_handle->ops->send_resume_cmd)
391  		return wmi_handle->ops->send_resume_cmd(wmi_handle,
392  				  mac_id);
393  
394  	return QDF_STATUS_E_FAILURE;
395  }
396  
wmi_unified_wow_enable_send(wmi_unified_t wmi_handle,struct wow_cmd_params * param,uint8_t mac_id)397  QDF_STATUS wmi_unified_wow_enable_send(wmi_unified_t wmi_handle,
398  				       struct wow_cmd_params *param,
399  				       uint8_t mac_id)
400  {
401  	if (wmi_handle->ops->send_wow_enable_cmd)
402  		return wmi_handle->ops->send_wow_enable_cmd(wmi_handle, param,
403  				  mac_id);
404  
405  	return QDF_STATUS_E_FAILURE;
406  }
407  
wmi_unified_wow_wakeup_send(wmi_unified_t wmi_handle)408  QDF_STATUS wmi_unified_wow_wakeup_send(wmi_unified_t wmi_handle)
409  {
410  	if (wmi_handle->ops->send_wow_wakeup_cmd)
411  		return wmi_handle->ops->send_wow_wakeup_cmd(wmi_handle);
412  
413  	return QDF_STATUS_E_FAILURE;
414  }
415  
416  QDF_STATUS
wmi_unified_wow_add_wakeup_event_send(wmi_unified_t wmi_handle,struct wow_add_wakeup_params * param)417  wmi_unified_wow_add_wakeup_event_send(wmi_unified_t wmi_handle,
418  				      struct wow_add_wakeup_params *param)
419  {
420  	if (wmi_handle->ops->send_wow_add_wakeup_event_cmd)
421  		return wmi_handle->ops->send_wow_add_wakeup_event_cmd(
422  				wmi_handle,
423  				param);
424  
425  	return QDF_STATUS_E_FAILURE;
426  }
427  
428  QDF_STATUS
wmi_unified_wow_add_wakeup_pattern_send(wmi_unified_t wmi_handle,struct wow_add_wakeup_pattern_params * param)429  wmi_unified_wow_add_wakeup_pattern_send(
430  		wmi_unified_t wmi_handle,
431  		struct wow_add_wakeup_pattern_params *param)
432  {
433  	if (wmi_handle->ops->send_wow_add_wakeup_pattern_cmd)
434  		return wmi_handle->ops->send_wow_add_wakeup_pattern_cmd(
435  				wmi_handle,
436  				param);
437  
438  	return QDF_STATUS_E_FAILURE;
439  }
440  
441  QDF_STATUS
wmi_unified_wow_remove_wakeup_pattern_send(wmi_unified_t wmi_handle,struct wow_remove_wakeup_pattern_params * param)442  wmi_unified_wow_remove_wakeup_pattern_send(
443  			wmi_unified_t wmi_handle,
444  			struct wow_remove_wakeup_pattern_params *param)
445  {
446  	if (wmi_handle->ops->send_wow_remove_wakeup_pattern_cmd)
447  		return wmi_handle->ops->send_wow_remove_wakeup_pattern_cmd(
448  				wmi_handle,
449  				param);
450  
451  	return QDF_STATUS_E_FAILURE;
452  }
453  
wmi_unified_ap_ps_cmd_send(wmi_unified_t wmi_handle,uint8_t * peer_addr,struct ap_ps_params * param)454  QDF_STATUS wmi_unified_ap_ps_cmd_send(wmi_unified_t wmi_handle,
455  				      uint8_t *peer_addr,
456  				      struct ap_ps_params *param)
457  {
458  	if (wmi_handle->ops->send_set_ap_ps_param_cmd)
459  		return wmi_handle->ops->send_set_ap_ps_param_cmd(wmi_handle,
460  				  peer_addr,
461  				  param);
462  
463  	return QDF_STATUS_E_FAILURE;
464  }
465  
wmi_unified_sta_ps_cmd_send(wmi_unified_t wmi_handle,struct sta_ps_params * param)466  QDF_STATUS wmi_unified_sta_ps_cmd_send(wmi_unified_t wmi_handle,
467  				       struct sta_ps_params *param)
468  {
469  	if (wmi_handle->ops->send_set_sta_ps_param_cmd)
470  		return wmi_handle->ops->send_set_sta_ps_param_cmd(wmi_handle,
471  				  param);
472  
473  	return QDF_STATUS_E_FAILURE;
474  }
475  
wmi_crash_inject(wmi_unified_t wmi_handle,struct crash_inject * param)476  QDF_STATUS wmi_crash_inject(wmi_unified_t wmi_handle,
477  			    struct crash_inject *param)
478  {
479  	if (wmi_handle->ops->send_crash_inject_cmd)
480  		return wmi_handle->ops->send_crash_inject_cmd(wmi_handle,
481  				  param);
482  
483  	return QDF_STATUS_E_FAILURE;
484  }
485  
486  QDF_STATUS
wmi_unified_dbglog_cmd_send(wmi_unified_t wmi_handle,struct dbglog_params * dbglog_param)487  wmi_unified_dbglog_cmd_send(wmi_unified_t wmi_handle,
488  			    struct dbglog_params *dbglog_param)
489  {
490  	if (wmi_handle->ops->send_dbglog_cmd)
491  		return wmi_handle->ops->send_dbglog_cmd(wmi_handle,
492  				  dbglog_param);
493  
494  	return QDF_STATUS_E_FAILURE;
495  }
496  qdf_export_symbol(wmi_unified_dbglog_cmd_send);
497  
498  QDF_STATUS
wmi_unified_vdev_set_param_send(wmi_unified_t wmi_handle,struct vdev_set_params * param)499  wmi_unified_vdev_set_param_send(wmi_unified_t wmi_handle,
500  				struct vdev_set_params *param)
501  {
502  	if (wmi_handle->ops->send_vdev_set_param_cmd)
503  		return wmi_handle->ops->send_vdev_set_param_cmd(wmi_handle,
504  				  param);
505  
506  	return QDF_STATUS_E_FAILURE;
507  }
508  
509  #ifdef WLAN_FEATURE_ROAM_OFFLOAD
510  QDF_STATUS
wmi_unified_roam_set_param_send(wmi_unified_t wmi_handle,struct vdev_set_params * roam_param)511  wmi_unified_roam_set_param_send(wmi_unified_t wmi_handle,
512  				struct vdev_set_params *roam_param)
513  {
514  	if (wmi_handle->ops->send_roam_set_param_cmd)
515  		return wmi_handle->ops->send_roam_set_param_cmd(wmi_handle,
516  								roam_param);
517  
518  	return QDF_STATUS_E_FAILURE;
519  }
520  #endif
521  QDF_STATUS
wmi_unified_vdev_set_mu_snif_send(wmi_unified_t wmi_handle,struct vdev_set_mu_snif_param * param)522  wmi_unified_vdev_set_mu_snif_send(wmi_unified_t wmi_handle,
523  				  struct vdev_set_mu_snif_param *param)
524  {
525  	if (wmi_handle->ops->send_vdev_set_mu_snif_cmd)
526  		return wmi_handle->ops->send_vdev_set_mu_snif_cmd(wmi_handle,
527  				  param);
528  
529  	return QDF_STATUS_E_FAILURE;
530  }
531  
wmi_unified_sifs_trigger_send(wmi_unified_t wmi_handle,struct sifs_trigger_param * param)532  QDF_STATUS wmi_unified_sifs_trigger_send(wmi_unified_t wmi_handle,
533  					 struct sifs_trigger_param *param)
534  {
535  	if (wmi_handle->ops->send_vdev_sifs_trigger_cmd)
536  		return wmi_handle->ops->send_vdev_sifs_trigger_cmd(wmi_handle,
537  				param);
538  
539  	return QDF_STATUS_E_FAILURE;
540  }
541  
542  QDF_STATUS
wmi_unified_packet_log_enable_send(wmi_unified_t wmi_handle,WMI_HOST_PKTLOG_EVENT PKTLOG_EVENT,uint8_t mac_id)543  wmi_unified_packet_log_enable_send(wmi_unified_t wmi_handle,
544  				   WMI_HOST_PKTLOG_EVENT PKTLOG_EVENT,
545  				   uint8_t mac_id)
546  {
547  	if (wmi_handle->ops->send_packet_log_enable_cmd)
548  		return wmi_handle->ops->send_packet_log_enable_cmd(wmi_handle,
549  				  PKTLOG_EVENT, mac_id);
550  
551  	return QDF_STATUS_E_FAILURE;
552  }
553  
wmi_unified_peer_based_pktlog_send(wmi_unified_t wmi_handle,uint8_t * macaddr,uint8_t mac_id,uint8_t enb_dsb)554  QDF_STATUS wmi_unified_peer_based_pktlog_send(wmi_unified_t wmi_handle,
555  					      uint8_t *macaddr,
556  					      uint8_t mac_id,
557  					      uint8_t enb_dsb)
558  {
559  	if (wmi_handle->ops->send_peer_based_pktlog_cmd)
560  		return wmi_handle->ops->send_peer_based_pktlog_cmd
561  			(wmi_handle, macaddr, mac_id, enb_dsb);
562  
563  	return QDF_STATUS_E_FAILURE;
564  }
565  
wmi_unified_packet_log_disable_send(wmi_unified_t wmi_handle,uint8_t mac_id)566  QDF_STATUS wmi_unified_packet_log_disable_send(wmi_unified_t wmi_handle,
567  					       uint8_t mac_id)
568  {
569  	if (wmi_handle->ops->send_packet_log_disable_cmd)
570  		return wmi_handle->ops->send_packet_log_disable_cmd(wmi_handle,
571  			mac_id);
572  
573  	return QDF_STATUS_E_FAILURE;
574  }
575  
576  QDF_STATUS
wmi_unified_fd_tmpl_send_cmd(wmi_unified_t wmi_handle,struct fils_discovery_tmpl_params * param)577  wmi_unified_fd_tmpl_send_cmd(wmi_unified_t wmi_handle,
578  			     struct fils_discovery_tmpl_params *param)
579  {
580  	if (wmi_handle->ops->send_fd_tmpl_cmd)
581  		return wmi_handle->ops->send_fd_tmpl_cmd(wmi_handle,
582  				  param);
583  
584  	return QDF_STATUS_E_FAILURE;
585  }
586  
587  QDF_STATUS
wmi_unified_beacon_tmpl_send_cmd(wmi_unified_t wmi_handle,struct beacon_tmpl_params * param)588  wmi_unified_beacon_tmpl_send_cmd(wmi_unified_t wmi_handle,
589  				 struct beacon_tmpl_params *param)
590  {
591  	if (wmi_handle->ops->send_beacon_tmpl_send_cmd)
592  		return wmi_handle->ops->send_beacon_tmpl_send_cmd(wmi_handle,
593  				  param);
594  
595  	return QDF_STATUS_E_FAILURE;
596  }
597  
598  QDF_STATUS
wmi_unified_peer_assoc_send(wmi_unified_t wmi_handle,struct peer_assoc_params * param)599  wmi_unified_peer_assoc_send(wmi_unified_t wmi_handle,
600  			    struct peer_assoc_params *param)
601  {
602  	if (wmi_handle->ops->send_peer_assoc_cmd)
603  		return wmi_handle->ops->send_peer_assoc_cmd(wmi_handle,
604  				  param);
605  
606  	return QDF_STATUS_E_FAILURE;
607  }
608  
609  QDF_STATUS
wmi_unified_scan_start_cmd_send(wmi_unified_t wmi_handle,struct scan_req_params * param)610  wmi_unified_scan_start_cmd_send(wmi_unified_t wmi_handle,
611  				struct scan_req_params *param)
612  {
613  	if (wmi_handle->ops->send_scan_start_cmd)
614  		return wmi_handle->ops->send_scan_start_cmd(wmi_handle,
615  				  param);
616  
617  	return QDF_STATUS_E_FAILURE;
618  }
619  
620  QDF_STATUS
wmi_unified_scan_stop_cmd_send(wmi_unified_t wmi_handle,struct scan_cancel_param * param)621  wmi_unified_scan_stop_cmd_send(wmi_unified_t wmi_handle,
622  			       struct scan_cancel_param *param)
623  {
624  	if (wmi_handle->ops->send_scan_stop_cmd)
625  		return wmi_handle->ops->send_scan_stop_cmd(wmi_handle,
626  				  param);
627  
628  	return QDF_STATUS_E_FAILURE;
629  }
630  
631  QDF_STATUS
wmi_unified_scan_chan_list_cmd_send(wmi_unified_t wmi_handle,struct scan_chan_list_params * param)632  wmi_unified_scan_chan_list_cmd_send(wmi_unified_t wmi_handle,
633  				    struct scan_chan_list_params *param)
634  {
635  	if (wmi_handle->ops->send_scan_chan_list_cmd)
636  		return wmi_handle->ops->send_scan_chan_list_cmd(wmi_handle,
637  				  param);
638  
639  	return QDF_STATUS_E_FAILURE;
640  }
641  
wmi_mgmt_unified_cmd_send(wmi_unified_t wmi_handle,struct wmi_mgmt_params * param)642  QDF_STATUS wmi_mgmt_unified_cmd_send(wmi_unified_t wmi_handle,
643  				     struct wmi_mgmt_params *param)
644  {
645  	if (wmi_handle->ops->send_mgmt_cmd)
646  		return wmi_handle->ops->send_mgmt_cmd(wmi_handle,
647  				  param);
648  
649  	return QDF_STATUS_E_FAILURE;
650  }
651  
652  QDF_STATUS
wmi_offchan_data_tx_cmd_send(wmi_unified_t wmi_handle,struct wmi_offchan_data_tx_params * param)653  wmi_offchan_data_tx_cmd_send(wmi_unified_t wmi_handle,
654  			     struct wmi_offchan_data_tx_params *param)
655  {
656  	if (wmi_handle->ops->send_offchan_data_tx_cmd)
657  		return wmi_handle->ops->send_offchan_data_tx_cmd(wmi_handle,
658  				  param);
659  
660  	return QDF_STATUS_E_FAILURE;
661  }
662  
wmi_unified_modem_power_state(wmi_unified_t wmi_handle,uint32_t param_value)663  QDF_STATUS wmi_unified_modem_power_state(wmi_unified_t wmi_handle,
664  					 uint32_t param_value)
665  {
666  	if (wmi_handle->ops->send_modem_power_state_cmd)
667  		return wmi_handle->ops->send_modem_power_state_cmd(wmi_handle,
668  				  param_value);
669  
670  	return QDF_STATUS_E_FAILURE;
671  }
672  
wmi_unified_set_sta_ps_mode(wmi_unified_t wmi_handle,uint32_t vdev_id,uint8_t val)673  QDF_STATUS wmi_unified_set_sta_ps_mode(wmi_unified_t wmi_handle,
674  				       uint32_t vdev_id, uint8_t val)
675  {
676  	if (wmi_handle->ops->send_set_sta_ps_mode_cmd)
677  		return wmi_handle->ops->send_set_sta_ps_mode_cmd(wmi_handle,
678  				  vdev_id, val);
679  
680  	return QDF_STATUS_E_FAILURE;
681  }
682  
683  QDF_STATUS
wmi_unified_send_idle_trigger_monitor(wmi_unified_t wmi_handle,uint8_t val)684  wmi_unified_send_idle_trigger_monitor(wmi_unified_t wmi_handle, uint8_t val)
685  {
686  	if (wmi_handle->ops->send_idle_roam_monitor_cmd)
687  		return wmi_handle->ops->send_idle_roam_monitor_cmd(wmi_handle,
688  								   val);
689  
690  	return QDF_STATUS_E_FAILURE;
691  }
692  
wmi_unified_set_mimops(wmi_unified_t wmi_handle,uint8_t vdev_id,int value)693  QDF_STATUS wmi_unified_set_mimops(wmi_unified_t wmi_handle, uint8_t vdev_id,
694  				  int value)
695  {
696  	if (wmi_handle->ops->send_set_mimops_cmd)
697  		return wmi_handle->ops->send_set_mimops_cmd(wmi_handle,
698  				  vdev_id, value);
699  
700  	return QDF_STATUS_E_FAILURE;
701  }
702  
wmi_unified_set_smps_params(wmi_unified_t wmi_handle,uint8_t vdev_id,int value)703  QDF_STATUS wmi_unified_set_smps_params(wmi_unified_t wmi_handle,
704  				       uint8_t vdev_id,
705  				       int value)
706  {
707  	if (wmi_handle->ops->send_set_smps_params_cmd)
708  		return wmi_handle->ops->send_set_smps_params_cmd(wmi_handle,
709  				  vdev_id, value);
710  
711  	return QDF_STATUS_E_FAILURE;
712  }
713  
wmi_unified_get_temperature(wmi_unified_t wmi_handle)714  QDF_STATUS wmi_unified_get_temperature(wmi_unified_t wmi_handle)
715  {
716  	if (wmi_handle->ops->send_get_temperature_cmd)
717  		return wmi_handle->ops->send_get_temperature_cmd(wmi_handle);
718  
719  	return QDF_STATUS_E_FAILURE;
720  }
721  
722  QDF_STATUS
wmi_unified_set_sta_uapsd_auto_trig_cmd(wmi_unified_t wmi_handle,struct sta_uapsd_trig_params * param)723  wmi_unified_set_sta_uapsd_auto_trig_cmd(wmi_unified_t wmi_handle,
724  					struct sta_uapsd_trig_params *param)
725  {
726  	if (wmi_handle->ops->send_set_sta_uapsd_auto_trig_cmd)
727  		return wmi_handle->ops->send_set_sta_uapsd_auto_trig_cmd(wmi_handle,
728  					param);
729  
730  	return QDF_STATUS_E_FAILURE;
731  }
732  
733  QDF_STATUS
wmi_unified_set_thermal_mgmt_cmd(wmi_unified_t wmi_handle,struct thermal_cmd_params * thermal_info)734  wmi_unified_set_thermal_mgmt_cmd(wmi_unified_t wmi_handle,
735  				 struct thermal_cmd_params *thermal_info)
736  {
737  	if (wmi_handle->ops->send_set_thermal_mgmt_cmd)
738  		return wmi_handle->ops->send_set_thermal_mgmt_cmd(wmi_handle,
739  					thermal_info);
740  
741  	return QDF_STATUS_E_FAILURE;
742  }
743  
744  QDF_STATUS
wmi_unified_lro_config_cmd(wmi_unified_t wmi_handle,struct wmi_lro_config_cmd_t * wmi_lro_cmd)745  wmi_unified_lro_config_cmd(wmi_unified_t wmi_handle,
746  			   struct wmi_lro_config_cmd_t *wmi_lro_cmd)
747  {
748  	if (wmi_handle->ops->send_lro_config_cmd)
749  		return wmi_handle->ops->send_lro_config_cmd(wmi_handle,
750  					wmi_lro_cmd);
751  
752  	return QDF_STATUS_E_FAILURE;
753  }
754  
755  QDF_STATUS
wmi_unified_peer_rate_report_cmd(wmi_unified_t wmi_handle,struct wmi_peer_rate_report_params * rate_report_params)756  wmi_unified_peer_rate_report_cmd(
757  		wmi_unified_t wmi_handle,
758  		struct wmi_peer_rate_report_params *rate_report_params)
759  {
760  	if (wmi_handle->ops->send_peer_rate_report_cmd)
761  		return wmi_handle->ops->send_peer_rate_report_cmd(wmi_handle,
762  					rate_report_params);
763  
764  	return QDF_STATUS_E_FAILURE;
765  }
766  
767  QDF_STATUS
wmi_unified_process_update_edca_param(wmi_unified_t wmi_handle,uint8_t vdev_id,bool mu_edca_param,struct wmi_host_wme_vparams wmm_vparams[WMI_MAX_NUM_AC])768  wmi_unified_process_update_edca_param(
769  		wmi_unified_t wmi_handle,
770  		uint8_t vdev_id,
771  		bool mu_edca_param,
772  		struct wmi_host_wme_vparams wmm_vparams[WMI_MAX_NUM_AC])
773  {
774  	if (wmi_handle->ops->send_process_update_edca_param_cmd)
775  		return wmi_handle->ops->send_process_update_edca_param_cmd(wmi_handle,
776  					 vdev_id, mu_edca_param, wmm_vparams);
777  
778  	return QDF_STATUS_E_FAILURE;
779  }
780  
781  QDF_STATUS
wmi_unified_probe_rsp_tmpl_send_cmd(wmi_unified_t wmi_handle,uint8_t vdev_id,struct wmi_probe_resp_params * probe_rsp_info)782  wmi_unified_probe_rsp_tmpl_send_cmd(
783  		wmi_unified_t wmi_handle,
784  		uint8_t vdev_id,
785  		struct wmi_probe_resp_params *probe_rsp_info)
786  {
787  	if (wmi_handle->ops->send_probe_rsp_tmpl_send_cmd)
788  		return wmi_handle->ops->send_probe_rsp_tmpl_send_cmd(wmi_handle,
789  						 vdev_id, probe_rsp_info);
790  
791  	return QDF_STATUS_E_FAILURE;
792  }
793  
wmi_unified_setup_install_key_cmd(wmi_unified_t wmi_handle,struct set_key_params * key_params)794  QDF_STATUS wmi_unified_setup_install_key_cmd(wmi_unified_t wmi_handle,
795  					     struct set_key_params *key_params)
796  {
797  	if (wmi_handle->ops->send_setup_install_key_cmd)
798  		return wmi_handle->ops->send_setup_install_key_cmd(wmi_handle,
799  							key_params);
800  
801  	return QDF_STATUS_E_FAILURE;
802  }
803  
wmi_unified_p2p_go_set_beacon_ie_cmd(wmi_unified_t wmi_handle,uint32_t vdev_id,uint8_t * p2p_ie)804  QDF_STATUS wmi_unified_p2p_go_set_beacon_ie_cmd(wmi_unified_t wmi_handle,
805  						uint32_t vdev_id,
806  						uint8_t *p2p_ie)
807  {
808  	if (wmi_handle->ops->send_p2p_go_set_beacon_ie_cmd)
809  		return wmi_handle->ops->send_p2p_go_set_beacon_ie_cmd(wmi_handle,
810  						 vdev_id, p2p_ie);
811  
812  	return QDF_STATUS_E_FAILURE;
813  }
814  
wmi_unified_scan_probe_setoui_cmd(wmi_unified_t wmi_handle,struct scan_mac_oui * psetoui)815  QDF_STATUS wmi_unified_scan_probe_setoui_cmd(wmi_unified_t wmi_handle,
816  					     struct scan_mac_oui *psetoui)
817  {
818  	if (wmi_handle->ops->send_scan_probe_setoui_cmd)
819  		return wmi_handle->ops->send_scan_probe_setoui_cmd(wmi_handle,
820  			    psetoui);
821  
822  	return QDF_STATUS_E_FAILURE;
823  }
824  
825  #ifdef IPA_OFFLOAD
826  QDF_STATUS
wmi_unified_ipa_offload_control_cmd(wmi_unified_t wmi_handle,struct ipa_uc_offload_control_params * ipa_offload)827  wmi_unified_ipa_offload_control_cmd(
828  		wmi_unified_t wmi_handle,
829  		struct ipa_uc_offload_control_params *ipa_offload)
830  {
831  	if (!wmi_handle)
832  		return QDF_STATUS_E_FAILURE;
833  
834  	if (wmi_handle->ops->send_ipa_offload_control_cmd)
835  		return wmi_handle->ops->send_ipa_offload_control_cmd(wmi_handle,
836  			    ipa_offload);
837  
838  	return QDF_STATUS_E_FAILURE;
839  }
840  #endif
841  
wmi_unified_pno_stop_cmd(wmi_unified_t wmi_handle,uint8_t vdev_id)842  QDF_STATUS wmi_unified_pno_stop_cmd(wmi_unified_t wmi_handle, uint8_t vdev_id)
843  {
844  	if (wmi_handle->ops->send_pno_stop_cmd)
845  		return wmi_handle->ops->send_pno_stop_cmd(wmi_handle,
846  			    vdev_id);
847  
848  	return QDF_STATUS_E_FAILURE;
849  }
850  
wmi_unified_obss_disable_cmd(wmi_unified_t wmi_handle,uint8_t vdev_id)851  QDF_STATUS wmi_unified_obss_disable_cmd(wmi_unified_t wmi_handle,
852  					uint8_t vdev_id)
853  {
854  	if (wmi_handle->ops->send_obss_disable_cmd)
855  		return wmi_handle->ops->send_obss_disable_cmd(wmi_handle,
856  							      vdev_id);
857  
858  	return QDF_STATUS_E_FAILURE;
859  }
860  
861  #ifdef FEATURE_WLAN_SCAN_PNO
wmi_unified_pno_start_cmd(wmi_unified_t wmi_handle,struct pno_scan_req_params * pno)862  QDF_STATUS wmi_unified_pno_start_cmd(wmi_unified_t wmi_handle,
863  				     struct pno_scan_req_params *pno)
864  {
865  	if (wmi_handle->ops->send_pno_start_cmd)
866  		return wmi_handle->ops->send_pno_start_cmd(wmi_handle,
867  			    pno);
868  
869  	return QDF_STATUS_E_FAILURE;
870  }
871  #endif
872  
wmi_unified_nlo_mawc_cmd(wmi_unified_t wmi_handle,struct nlo_mawc_params * params)873  QDF_STATUS wmi_unified_nlo_mawc_cmd(wmi_unified_t wmi_handle,
874  				    struct nlo_mawc_params *params)
875  {
876  	if (wmi_handle->ops->send_nlo_mawc_cmd)
877  		return wmi_handle->ops->send_nlo_mawc_cmd(wmi_handle, params);
878  
879  	return QDF_STATUS_E_FAILURE;
880  }
881  
882  #ifdef WLAN_FEATURE_LINK_LAYER_STATS
wmi_unified_process_ll_stats_clear_cmd(wmi_unified_t wmi_handle,const struct ll_stats_clear_params * clear_req)883  QDF_STATUS wmi_unified_process_ll_stats_clear_cmd(wmi_unified_t wmi_handle,
884  				 const struct ll_stats_clear_params *clear_req)
885  {
886  	if (wmi_handle->ops->send_process_ll_stats_clear_cmd)
887  		return wmi_handle->ops->send_process_ll_stats_clear_cmd(wmi_handle,
888  									clear_req);
889  
890  	return QDF_STATUS_E_FAILURE;
891  }
892  
wmi_unified_process_ll_stats_set_cmd(wmi_unified_t wmi_handle,const struct ll_stats_set_params * set_req)893  QDF_STATUS wmi_unified_process_ll_stats_set_cmd(wmi_unified_t wmi_handle,
894  				 const struct ll_stats_set_params *set_req)
895  {
896  	if (wmi_handle->ops->send_process_ll_stats_set_cmd)
897  		return wmi_handle->ops->send_process_ll_stats_set_cmd(wmi_handle,
898  								      set_req);
899  
900  	return QDF_STATUS_E_FAILURE;
901  }
902  
wmi_unified_process_ll_stats_get_cmd(wmi_unified_t wmi_handle,const struct ll_stats_get_params * get_req)903  QDF_STATUS wmi_unified_process_ll_stats_get_cmd(wmi_unified_t wmi_handle,
904  				 const struct ll_stats_get_params *get_req)
905  {
906  	if (wmi_handle->ops->send_process_ll_stats_get_cmd)
907  		return wmi_handle->ops->send_process_ll_stats_get_cmd(wmi_handle,
908  								      get_req);
909  
910  	return QDF_STATUS_E_FAILURE;
911  }
912  
913  #ifdef FEATURE_CLUB_LL_STATS_AND_GET_STATION
wmi_process_unified_ll_stats_get_sta_cmd(wmi_unified_t wmi_handle,const struct ll_stats_get_params * get_req)914  QDF_STATUS wmi_process_unified_ll_stats_get_sta_cmd(
915  				wmi_unified_t wmi_handle,
916  				const struct ll_stats_get_params *get_req)
917  {
918  	if (wmi_handle->ops->send_unified_ll_stats_get_sta_cmd)
919  		return wmi_handle->ops->send_unified_ll_stats_get_sta_cmd(
920  						wmi_handle, get_req);
921  
922  	return QDF_STATUS_E_FAILURE;
923  }
924  #endif
925  #endif /* WLAN_FEATURE_LINK_LAYER_STATS */
926  
wmi_unified_congestion_request_cmd(wmi_unified_t wmi_handle,uint8_t vdev_id)927  QDF_STATUS wmi_unified_congestion_request_cmd(wmi_unified_t wmi_handle,
928  					      uint8_t vdev_id)
929  {
930  	if (wmi_handle->ops->send_congestion_cmd)
931  		return wmi_handle->ops->send_congestion_cmd(wmi_handle,
932  			   vdev_id);
933  
934  	return QDF_STATUS_E_FAILURE;
935  }
936  
wmi_unified_snr_request_cmd(wmi_unified_t wmi_handle)937  QDF_STATUS wmi_unified_snr_request_cmd(wmi_unified_t wmi_handle)
938  {
939  	if (wmi_handle->ops->send_snr_request_cmd)
940  		return wmi_handle->ops->send_snr_request_cmd(wmi_handle);
941  
942  	return QDF_STATUS_E_FAILURE;
943  }
944  
wmi_unified_snr_cmd(wmi_unified_t wmi_handle,uint8_t vdev_id)945  QDF_STATUS wmi_unified_snr_cmd(wmi_unified_t wmi_handle, uint8_t vdev_id)
946  {
947  	if (wmi_handle->ops->send_snr_cmd)
948  		return wmi_handle->ops->send_snr_cmd(wmi_handle,
949  			    vdev_id);
950  
951  	return QDF_STATUS_E_FAILURE;
952  }
953  
wmi_unified_link_status_req_cmd(wmi_unified_t wmi_handle,struct link_status_params * params)954  QDF_STATUS wmi_unified_link_status_req_cmd(wmi_unified_t wmi_handle,
955  					   struct link_status_params *params)
956  {
957  	if (wmi_handle->ops->send_link_status_req_cmd)
958  		return wmi_handle->ops->send_link_status_req_cmd(wmi_handle,
959  								 params);
960  
961  	return QDF_STATUS_E_FAILURE;
962  }
963  
964  #ifdef WLAN_SUPPORT_GREEN_AP
965  QDF_STATUS
wmi_unified_egap_conf_params_cmd(wmi_unified_t wmi_handle,struct wlan_green_ap_egap_params * egap_params)966  wmi_unified_egap_conf_params_cmd(wmi_unified_t wmi_handle,
967  				 struct wlan_green_ap_egap_params *egap_params)
968  {
969  	if (wmi_handle->ops->send_egap_conf_params_cmd)
970  		return wmi_handle->ops->send_egap_conf_params_cmd(wmi_handle,
971  			    egap_params);
972  
973  	return QDF_STATUS_E_FAILURE;
974  }
975  #endif
976  
wmi_unified_csa_offload_enable(wmi_unified_t wmi_handle,uint8_t vdev_id)977  QDF_STATUS wmi_unified_csa_offload_enable(wmi_unified_t wmi_handle,
978  					  uint8_t vdev_id)
979  {
980  	if (wmi_handle->ops->send_csa_offload_enable_cmd)
981  		return wmi_handle->ops->send_csa_offload_enable_cmd(wmi_handle,
982  			    vdev_id);
983  
984  	return QDF_STATUS_E_FAILURE;
985  }
986  
987  #ifdef WLAN_FEATURE_CIF_CFR
988  QDF_STATUS
wmi_unified_oem_dma_ring_cfg(wmi_unified_t wmi_handle,wmi_oem_dma_ring_cfg_req_fixed_param * cfg)989  wmi_unified_oem_dma_ring_cfg(wmi_unified_t wmi_handle,
990  			     wmi_oem_dma_ring_cfg_req_fixed_param *cfg)
991  {
992  	if (wmi_handle->ops->send_oem_dma_cfg_cmd)
993  		return wmi_handle->ops->send_oem_dma_cfg_cmd(wmi_handle, cfg);
994  
995  	return QDF_STATUS_E_FAILURE;
996  }
997  #endif
998  
wmi_unified_start_oem_data_cmd(wmi_unified_t wmi_handle,uint32_t data_len,uint8_t * data)999  QDF_STATUS wmi_unified_start_oem_data_cmd(wmi_unified_t wmi_handle,
1000  					  uint32_t data_len,
1001  					  uint8_t *data)
1002  {
1003  	if (wmi_handle->ops->send_start_oem_data_cmd)
1004  		return wmi_handle->ops->send_start_oem_data_cmd(wmi_handle,
1005  								data_len,
1006  								data);
1007  
1008  	return QDF_STATUS_E_FAILURE;
1009  }
1010  
1011  #ifdef FEATURE_OEM_DATA
wmi_unified_start_oemv2_data_cmd(wmi_unified_t wmi_handle,struct oem_data * params)1012  QDF_STATUS wmi_unified_start_oemv2_data_cmd(wmi_unified_t wmi_handle,
1013  					    struct oem_data *params)
1014  {
1015  	if (wmi_handle->ops->send_start_oemv2_data_cmd)
1016  		return wmi_handle->ops->send_start_oemv2_data_cmd(wmi_handle,
1017  								  params);
1018  
1019  	return QDF_STATUS_E_FAILURE;
1020  }
1021  #endif
1022  
1023  QDF_STATUS
wmi_unified_dfs_phyerr_filter_offload_en_cmd(wmi_unified_t wmi_handle,bool dfs_phyerr_filter_offload)1024  wmi_unified_dfs_phyerr_filter_offload_en_cmd(wmi_unified_t wmi_handle,
1025  					     bool dfs_phyerr_filter_offload)
1026  {
1027  	if (wmi_handle->ops->send_dfs_phyerr_filter_offload_en_cmd)
1028  		return wmi_handle->ops->send_dfs_phyerr_filter_offload_en_cmd(wmi_handle,
1029  			    dfs_phyerr_filter_offload);
1030  
1031  	return QDF_STATUS_E_FAILURE;
1032  }
1033  
1034  #if !defined(REMOVE_PKT_LOG) && defined(FEATURE_PKTLOG)
wmi_unified_pktlog_wmi_send_cmd(wmi_unified_t wmi_handle,WMI_PKTLOG_EVENT pktlog_event,uint32_t cmd_id,uint8_t user_triggered)1035  QDF_STATUS wmi_unified_pktlog_wmi_send_cmd(wmi_unified_t wmi_handle,
1036  					   WMI_PKTLOG_EVENT pktlog_event,
1037  					   uint32_t cmd_id,
1038  					   uint8_t user_triggered)
1039  {
1040  	if (wmi_handle->ops->send_pktlog_wmi_send_cmd)
1041  		return wmi_handle->ops->send_pktlog_wmi_send_cmd(wmi_handle,
1042  			    pktlog_event, cmd_id, user_triggered);
1043  
1044  	return QDF_STATUS_E_FAILURE;
1045  }
1046  #endif /* !REMOVE_PKT_LOG && FEATURE_PKTLOG */
1047  
wmi_unified_stats_ext_req_cmd(wmi_unified_t wmi_handle,struct stats_ext_params * preq)1048  QDF_STATUS wmi_unified_stats_ext_req_cmd(wmi_unified_t wmi_handle,
1049  					 struct stats_ext_params *preq)
1050  {
1051  	if (wmi_handle->ops->send_stats_ext_req_cmd)
1052  		return wmi_handle->ops->send_stats_ext_req_cmd(wmi_handle,
1053  			    preq);
1054  
1055  	return QDF_STATUS_E_FAILURE;
1056  }
1057  
wmi_unified_process_dhcpserver_offload_cmd(wmi_unified_t wmi_handle,struct dhcp_offload_info_params * params)1058  QDF_STATUS wmi_unified_process_dhcpserver_offload_cmd(
1059  		wmi_unified_t wmi_handle,
1060  		struct dhcp_offload_info_params *params)
1061  {
1062  	if (wmi_handle->ops->send_process_dhcpserver_offload_cmd)
1063  		return wmi_handle->ops->send_process_dhcpserver_offload_cmd(wmi_handle,
1064  			    params);
1065  
1066  	return QDF_STATUS_E_FAILURE;
1067  }
1068  
wmi_unified_send_regdomain_info_to_fw_cmd(wmi_unified_t wmi_handle,uint32_t reg_dmn,uint16_t regdmn2G,uint16_t regdmn5G,uint8_t ctl2G,uint8_t ctl5G)1069  QDF_STATUS wmi_unified_send_regdomain_info_to_fw_cmd(wmi_unified_t wmi_handle,
1070  						     uint32_t reg_dmn,
1071  						     uint16_t regdmn2G,
1072  						     uint16_t regdmn5G,
1073  						     uint8_t ctl2G,
1074  						     uint8_t ctl5G)
1075  {
1076  	if (wmi_handle->ops->send_regdomain_info_to_fw_cmd)
1077  		return wmi_handle->ops->send_regdomain_info_to_fw_cmd(wmi_handle,
1078  			    reg_dmn, regdmn2G,
1079  				regdmn5G, ctl2G,
1080  				ctl5G);
1081  
1082  	return QDF_STATUS_E_FAILURE;
1083  }
1084  
1085  QDF_STATUS
wmi_unified_cfg_action_frm_tb_ppdu_cmd(wmi_unified_t wmi_handle,struct cfg_action_frm_tb_ppdu_param * cfg_info)1086  wmi_unified_cfg_action_frm_tb_ppdu_cmd(
1087  		wmi_unified_t wmi_handle,
1088  		struct cfg_action_frm_tb_ppdu_param *cfg_info)
1089  {
1090  	if (wmi_handle->ops->send_cfg_action_frm_tb_ppdu_cmd)
1091  		return wmi_handle->ops->send_cfg_action_frm_tb_ppdu_cmd(
1092  						wmi_handle, cfg_info);
1093  
1094  	return QDF_STATUS_E_FAILURE;
1095  }
1096  
wmi_unified_save_fw_version_cmd(wmi_unified_t wmi_handle,void * evt_buf)1097  QDF_STATUS wmi_unified_save_fw_version_cmd(wmi_unified_t wmi_handle,
1098  					   void *evt_buf)
1099  {
1100  	if (wmi_handle->ops->save_fw_version_cmd)
1101  		return wmi_handle->ops->save_fw_version_cmd(wmi_handle,
1102  			    evt_buf);
1103  
1104  	return QDF_STATUS_E_FAILURE;
1105  }
1106  
wmi_unified_log_supported_evt_cmd(wmi_unified_t wmi_handle,uint8_t * event,uint32_t len)1107  QDF_STATUS wmi_unified_log_supported_evt_cmd(wmi_unified_t wmi_handle,
1108  					     uint8_t *event,
1109  					     uint32_t len)
1110  {
1111  	if (wmi_handle->ops->send_log_supported_evt_cmd)
1112  		return wmi_handle->ops->send_log_supported_evt_cmd(wmi_handle,
1113  			    event, len);
1114  
1115  	return QDF_STATUS_E_FAILURE;
1116  }
1117  
wmi_send_time_stamp_sync_cmd_tlv(wmi_unified_t wmi_handle)1118  void wmi_send_time_stamp_sync_cmd_tlv(wmi_unified_t wmi_handle)
1119  {
1120  	if (wmi_handle->ops->send_time_stamp_sync_cmd)
1121  		wmi_handle->ops->send_time_stamp_sync_cmd(wmi_handle);
1122  
1123  }
1124  
1125  QDF_STATUS
wmi_unified_enable_specific_fw_logs_cmd(wmi_unified_t wmi_handle,struct wmi_wifi_start_log * start_log)1126  wmi_unified_enable_specific_fw_logs_cmd(wmi_unified_t wmi_handle,
1127  					struct wmi_wifi_start_log *start_log)
1128  {
1129  	if (wmi_handle->ops->send_enable_specific_fw_logs_cmd)
1130  		return wmi_handle->ops->send_enable_specific_fw_logs_cmd(wmi_handle,
1131  			    start_log);
1132  
1133  	return QDF_STATUS_E_FAILURE;
1134  }
1135  
wmi_unified_flush_logs_to_fw_cmd(wmi_unified_t wmi_handle)1136  QDF_STATUS wmi_unified_flush_logs_to_fw_cmd(wmi_unified_t wmi_handle)
1137  {
1138  	if (wmi_handle->ops->send_flush_logs_to_fw_cmd)
1139  		return wmi_handle->ops->send_flush_logs_to_fw_cmd(wmi_handle);
1140  
1141  	return QDF_STATUS_E_FAILURE;
1142  }
1143  
wmi_unified_fw_test_cmd(wmi_unified_t wmi_handle,struct set_fwtest_params * wmi_fwtest)1144  QDF_STATUS wmi_unified_fw_test_cmd(wmi_unified_t wmi_handle,
1145  				   struct set_fwtest_params *wmi_fwtest)
1146  {
1147  	if (wmi_handle->ops->send_fw_test_cmd)
1148  		return wmi_handle->ops->send_fw_test_cmd(wmi_handle,
1149  				  wmi_fwtest);
1150  
1151  	return QDF_STATUS_E_FAILURE;
1152  
1153  }
1154  
wmi_unified_wfa_test_cmd(wmi_unified_t wmi_handle,struct set_wfatest_params * wmi_wfatest)1155  QDF_STATUS wmi_unified_wfa_test_cmd(wmi_unified_t wmi_handle,
1156  				    struct set_wfatest_params *wmi_wfatest)
1157  {
1158  	if (wmi_handle->ops->send_wfa_test_cmd)
1159  		return wmi_handle->ops->send_wfa_test_cmd(wmi_handle,
1160  							  wmi_wfatest);
1161  
1162  	return QDF_STATUS_E_FAILURE;
1163  }
1164  
wmi_unified_unit_test_cmd(wmi_unified_t wmi_handle,struct wmi_unit_test_cmd * wmi_utest)1165  QDF_STATUS wmi_unified_unit_test_cmd(wmi_unified_t wmi_handle,
1166  				     struct wmi_unit_test_cmd *wmi_utest)
1167  {
1168  	if (wmi_handle->ops->send_unit_test_cmd)
1169  		return wmi_handle->ops->send_unit_test_cmd(wmi_handle,
1170  				  wmi_utest);
1171  
1172  	return QDF_STATUS_E_FAILURE;
1173  }
1174  
1175  #ifdef FEATURE_WLAN_APF
1176  QDF_STATUS
wmi_unified_set_active_apf_mode_cmd(wmi_unified_t wmi,uint8_t vdev_id,enum wmi_host_active_apf_mode ucast_mode,enum wmi_host_active_apf_mode mcast_bcast_mode)1177  wmi_unified_set_active_apf_mode_cmd(wmi_unified_t wmi, uint8_t vdev_id,
1178  				    enum wmi_host_active_apf_mode ucast_mode,
1179  				    enum wmi_host_active_apf_mode
1180  							       mcast_bcast_mode)
1181  {
1182  	if (wmi->ops->send_set_active_apf_mode_cmd)
1183  		return wmi->ops->send_set_active_apf_mode_cmd(wmi, vdev_id,
1184  							      ucast_mode,
1185  							      mcast_bcast_mode);
1186  	return QDF_STATUS_E_FAILURE;
1187  }
1188  
1189  QDF_STATUS
wmi_unified_send_apf_enable_cmd(wmi_unified_t wmi,uint32_t vdev_id,bool enable)1190  wmi_unified_send_apf_enable_cmd(wmi_unified_t wmi,
1191  				uint32_t vdev_id, bool enable)
1192  {
1193  	if (wmi->ops->send_apf_enable_cmd)
1194  		return wmi->ops->send_apf_enable_cmd(wmi, vdev_id, enable);
1195  	return QDF_STATUS_E_FAILURE;
1196  }
1197  
1198  QDF_STATUS
wmi_unified_send_apf_write_work_memory_cmd(wmi_unified_t wmi,struct wmi_apf_write_memory_params * write_params)1199  wmi_unified_send_apf_write_work_memory_cmd(wmi_unified_t wmi,
1200  					   struct wmi_apf_write_memory_params
1201  								  *write_params)
1202  {
1203  	if (wmi->ops->send_apf_write_work_memory_cmd)
1204  		return wmi->ops->send_apf_write_work_memory_cmd(wmi,
1205  								write_params);
1206  
1207  	return QDF_STATUS_E_FAILURE;
1208  }
1209  
1210  QDF_STATUS
wmi_unified_send_apf_read_work_memory_cmd(wmi_unified_t wmi,struct wmi_apf_read_memory_params * read_params)1211  wmi_unified_send_apf_read_work_memory_cmd(wmi_unified_t wmi,
1212  					  struct wmi_apf_read_memory_params
1213  								   *read_params)
1214  {
1215  	if (wmi->ops->send_apf_read_work_memory_cmd)
1216  		return wmi->ops->send_apf_read_work_memory_cmd(wmi,
1217  							       read_params);
1218  
1219  	return QDF_STATUS_E_FAILURE;
1220  }
1221  
1222  QDF_STATUS
wmi_extract_apf_read_memory_resp_event(wmi_unified_t wmi,void * evt_buf,struct wmi_apf_read_memory_resp_event_params * read_mem_evt)1223  wmi_extract_apf_read_memory_resp_event(wmi_unified_t wmi, void *evt_buf,
1224  				struct wmi_apf_read_memory_resp_event_params
1225  								*read_mem_evt)
1226  {
1227  	if (wmi->ops->extract_apf_read_memory_resp_event)
1228  		return wmi->ops->extract_apf_read_memory_resp_event(wmi,
1229  								evt_buf,
1230  								read_mem_evt);
1231  
1232  	return QDF_STATUS_E_FAILURE;
1233  }
1234  #endif /* FEATURE_WLAN_APF */
1235  
1236  QDF_STATUS
wmi_unified_pdev_fips_cmd_send(wmi_unified_t wmi_handle,struct fips_params * param)1237  wmi_unified_pdev_fips_cmd_send(wmi_unified_t wmi_handle,
1238  			       struct fips_params *param)
1239  {
1240  	if (wmi_handle->ops->send_pdev_fips_cmd)
1241  		return wmi_handle->ops->send_pdev_fips_cmd(wmi_handle, param);
1242  
1243  	return QDF_STATUS_E_FAILURE;
1244  }
1245  
1246  #ifdef WLAN_FEATURE_FIPS_BER_CCMGCM
1247  QDF_STATUS
wmi_unified_pdev_fips_extend_cmd_send(wmi_unified_t wmi_handle,struct fips_extend_params * param)1248  wmi_unified_pdev_fips_extend_cmd_send(wmi_unified_t wmi_handle,
1249  				      struct fips_extend_params *param)
1250  {
1251  	if (wmi_handle->ops->send_pdev_fips_extend_cmd)
1252  		return wmi_handle->ops->send_pdev_fips_extend_cmd(wmi_handle,
1253  								  param);
1254  
1255  	return QDF_STATUS_E_FAILURE;
1256  }
1257  
1258  QDF_STATUS
wmi_unified_pdev_fips_mode_set_cmd(wmi_unified_t wmi_handle,struct fips_mode_set_params * param)1259  wmi_unified_pdev_fips_mode_set_cmd(wmi_unified_t wmi_handle,
1260  				   struct fips_mode_set_params *param)
1261  {
1262  	if (wmi_handle->ops->send_pdev_fips_mode_set_cmd)
1263  		return wmi_handle->ops->send_pdev_fips_mode_set_cmd(wmi_handle,
1264  								    param);
1265  
1266  	return QDF_STATUS_E_FAILURE;
1267  }
1268  #endif
1269  
1270  #ifdef WLAN_FEATURE_DISA
1271  QDF_STATUS
wmi_unified_encrypt_decrypt_send_cmd(void * wmi_hdl,struct disa_encrypt_decrypt_req_params * params)1272  wmi_unified_encrypt_decrypt_send_cmd(void *wmi_hdl,
1273  				     struct disa_encrypt_decrypt_req_params
1274  				     *params)
1275  {
1276  	wmi_unified_t wmi_handle = (wmi_unified_t)wmi_hdl;
1277  
1278  	if (wmi_handle->ops->send_encrypt_decrypt_send_cmd)
1279  		return wmi_handle->ops->send_encrypt_decrypt_send_cmd(wmi_handle
1280  								      , params);
1281  
1282  	return QDF_STATUS_E_FAILURE;
1283  }
1284  #endif /* WLAN_FEATURE_DISA */
1285  
1286  QDF_STATUS
wmi_unified_wlan_profile_enable_cmd_send(wmi_unified_t wmi_handle,struct wlan_profile_params * param)1287  wmi_unified_wlan_profile_enable_cmd_send(wmi_unified_t wmi_handle,
1288  					 struct wlan_profile_params *param)
1289  {
1290  	if (wmi_handle->ops->send_wlan_profile_enable_cmd)
1291  		return wmi_handle->ops->send_wlan_profile_enable_cmd(wmi_handle,
1292  				param);
1293  
1294  	return QDF_STATUS_E_FAILURE;
1295  }
1296  
1297  QDF_STATUS
wmi_unified_wlan_profile_trigger_cmd_send(wmi_unified_t wmi_handle,struct wlan_profile_params * param)1298  wmi_unified_wlan_profile_trigger_cmd_send(wmi_unified_t wmi_handle,
1299  					  struct wlan_profile_params *param)
1300  {
1301  	if (wmi_handle->ops->send_wlan_profile_trigger_cmd)
1302  		return wmi_handle->ops->send_wlan_profile_trigger_cmd(
1303  					wmi_handle, param);
1304  
1305  	return QDF_STATUS_E_FAILURE;
1306  }
1307  
1308  QDF_STATUS
wmi_unified_wlan_profile_hist_intvl_cmd_send(wmi_unified_t wmi_handle,struct wlan_profile_params * param)1309  wmi_unified_wlan_profile_hist_intvl_cmd_send(wmi_unified_t wmi_handle,
1310  					     struct wlan_profile_params *param)
1311  {
1312  	if (wmi_handle->ops->send_wlan_profile_hist_intvl_cmd)
1313  		return wmi_handle->ops->send_wlan_profile_hist_intvl_cmd(
1314  					wmi_handle, param);
1315  
1316  	return QDF_STATUS_E_FAILURE;
1317  }
1318  
1319  QDF_STATUS
wmi_unified_set_chan_cmd_send(wmi_unified_t wmi_handle,struct channel_param * param)1320  wmi_unified_set_chan_cmd_send(wmi_unified_t wmi_handle,
1321  			      struct channel_param *param)
1322  {
1323  	if (wmi_handle->ops->send_pdev_set_chan_cmd)
1324  		return wmi_handle->ops->send_pdev_set_chan_cmd(wmi_handle,
1325  				param);
1326  
1327  	return QDF_STATUS_E_FAILURE;
1328  }
1329  
1330  QDF_STATUS
wmi_unified_set_ratepwr_table_cmd_send(wmi_unified_t wmi_handle,struct ratepwr_table_params * param)1331  wmi_unified_set_ratepwr_table_cmd_send(wmi_unified_t wmi_handle,
1332  				       struct ratepwr_table_params *param)
1333  {
1334  	if (wmi_handle->ops->send_set_ratepwr_table_cmd)
1335  		return wmi_handle->ops->send_set_ratepwr_table_cmd(wmi_handle,
1336  				param);
1337  
1338  	return QDF_STATUS_E_FAILURE;
1339  }
1340  
wmi_unified_get_ratepwr_table_cmd_send(wmi_unified_t wmi_handle)1341  QDF_STATUS wmi_unified_get_ratepwr_table_cmd_send(wmi_unified_t wmi_handle)
1342  {
1343  	if (wmi_handle->ops->send_get_ratepwr_table_cmd)
1344  		return wmi_handle->ops->send_get_ratepwr_table_cmd(wmi_handle);
1345  
1346  	return QDF_STATUS_E_FAILURE;
1347  }
1348  
wmi_unified_set_ratepwr_chainmsk_cmd_send(wmi_unified_t wmi_handle,struct ratepwr_chainmsk_params * param)1349  QDF_STATUS wmi_unified_set_ratepwr_chainmsk_cmd_send(
1350  				wmi_unified_t wmi_handle,
1351  				struct ratepwr_chainmsk_params *param)
1352  {
1353  	if (wmi_handle->ops->send_set_ratepwr_chainmsk_cmd)
1354  		return wmi_handle->ops->send_set_ratepwr_chainmsk_cmd(
1355  						wmi_handle, param);
1356  
1357  	return QDF_STATUS_E_FAILURE;
1358  }
1359  
wmi_unified_set_macaddr_cmd_send(wmi_unified_t wmi_handle,struct macaddr_params * param)1360  QDF_STATUS wmi_unified_set_macaddr_cmd_send(wmi_unified_t wmi_handle,
1361  					    struct macaddr_params *param)
1362  {
1363  	if (wmi_handle->ops->send_set_macaddr_cmd)
1364  		return wmi_handle->ops->send_set_macaddr_cmd(wmi_handle, param);
1365  
1366  	return QDF_STATUS_E_FAILURE;
1367  }
1368  
wmi_unified_pdev_scan_start_cmd_send(wmi_unified_t wmi_handle)1369  QDF_STATUS wmi_unified_pdev_scan_start_cmd_send(wmi_unified_t wmi_handle)
1370  {
1371  	if (wmi_handle->ops->send_pdev_scan_start_cmd)
1372  		return wmi_handle->ops->send_pdev_scan_start_cmd(wmi_handle);
1373  
1374  	return QDF_STATUS_E_FAILURE;
1375  }
1376  
wmi_unified_pdev_scan_end_cmd_send(wmi_unified_t wmi_handle)1377  QDF_STATUS wmi_unified_pdev_scan_end_cmd_send(wmi_unified_t wmi_handle)
1378  {
1379  	if (wmi_handle->ops->send_pdev_scan_end_cmd)
1380  		return wmi_handle->ops->send_pdev_scan_end_cmd(wmi_handle);
1381  
1382  	return QDF_STATUS_E_FAILURE;
1383  }
1384  
1385  QDF_STATUS
wmi_unified_set_acparams_cmd_send(wmi_unified_t wmi_handle,struct acparams_params * param)1386  wmi_unified_set_acparams_cmd_send(wmi_unified_t wmi_handle,
1387  				  struct acparams_params *param)
1388  {
1389  	if (wmi_handle->ops->send_set_acparams_cmd)
1390  		return wmi_handle->ops->send_set_acparams_cmd(wmi_handle,
1391  				param);
1392  
1393  	return QDF_STATUS_E_FAILURE;
1394  }
1395  
wmi_unified_set_vap_dscp_tid_map_cmd_send(wmi_unified_t wmi_handle,struct vap_dscp_tid_map_params * param)1396  QDF_STATUS wmi_unified_set_vap_dscp_tid_map_cmd_send(
1397  			wmi_unified_t wmi_handle,
1398  			struct vap_dscp_tid_map_params *param)
1399  {
1400  	if (wmi_handle->ops->send_set_vap_dscp_tid_map_cmd)
1401  		return wmi_handle->ops->send_set_vap_dscp_tid_map_cmd(
1402  						wmi_handle, param);
1403  
1404  	return QDF_STATUS_E_FAILURE;
1405  }
1406  
1407  QDF_STATUS
wmi_unified_proxy_ast_reserve_cmd_send(wmi_unified_t wmi_handle,struct proxy_ast_reserve_params * param)1408  wmi_unified_proxy_ast_reserve_cmd_send(wmi_unified_t wmi_handle,
1409  				       struct proxy_ast_reserve_params *param)
1410  {
1411  	if (wmi_handle->ops->send_proxy_ast_reserve_cmd)
1412  		return wmi_handle->ops->send_proxy_ast_reserve_cmd(wmi_handle,
1413  				param);
1414  
1415  	return QDF_STATUS_E_FAILURE;
1416  }
1417  
wmi_unified_set_bridge_mac_addr_cmd_send(wmi_unified_t wmi_handle,struct set_bridge_mac_addr_params * param)1418  QDF_STATUS wmi_unified_set_bridge_mac_addr_cmd_send(
1419  			wmi_unified_t wmi_handle,
1420  			struct set_bridge_mac_addr_params *param)
1421  {
1422  	if (wmi_handle->ops->send_set_bridge_mac_addr_cmd)
1423  		return wmi_handle->ops->send_set_bridge_mac_addr_cmd(wmi_handle,
1424  				param);
1425  
1426  	return QDF_STATUS_E_FAILURE;
1427  }
1428  
wmi_unified_phyerr_enable_cmd_send(wmi_unified_t wmi_handle)1429  QDF_STATUS wmi_unified_phyerr_enable_cmd_send(wmi_unified_t wmi_handle)
1430  {
1431  	if (wmi_handle->ops->send_phyerr_enable_cmd)
1432  		return wmi_handle->ops->send_phyerr_enable_cmd(wmi_handle);
1433  
1434  	return QDF_STATUS_E_FAILURE;
1435  }
1436  
wmi_unified_phyerr_disable_cmd_send(wmi_unified_t wmi_handle)1437  QDF_STATUS wmi_unified_phyerr_disable_cmd_send(wmi_unified_t wmi_handle)
1438  {
1439  	if (wmi_handle->ops->send_phyerr_disable_cmd)
1440  		return wmi_handle->ops->send_phyerr_disable_cmd(wmi_handle);
1441  
1442  	return QDF_STATUS_E_FAILURE;
1443  }
1444  
1445  QDF_STATUS
wmi_unified_smart_ant_enable_tx_feedback_cmd_send(wmi_unified_t wmi_handle,struct smart_ant_enable_tx_feedback_params * param)1446  wmi_unified_smart_ant_enable_tx_feedback_cmd_send(
1447  		wmi_unified_t wmi_handle,
1448  		struct smart_ant_enable_tx_feedback_params *param)
1449  {
1450  	if (wmi_handle->ops->send_smart_ant_enable_tx_feedback_cmd)
1451  		return wmi_handle->ops->send_smart_ant_enable_tx_feedback_cmd(
1452  							wmi_handle, param);
1453  
1454  	return QDF_STATUS_E_FAILURE;
1455  }
1456  qdf_export_symbol(wmi_unified_smart_ant_enable_tx_feedback_cmd_send);
1457  
1458  #ifdef WLAN_IOT_SIM_SUPPORT
1459  QDF_STATUS
wmi_unified_simulation_test_cmd_send(wmi_unified_t wmi_handle,struct simulation_test_params * param)1460  wmi_unified_simulation_test_cmd_send(
1461  		wmi_unified_t wmi_handle,
1462  		struct simulation_test_params *param)
1463  {
1464  	if (wmi_handle->ops->send_simulation_test_cmd)
1465  		return wmi_handle->ops->send_simulation_test_cmd(
1466  							wmi_handle, param);
1467  
1468  	return QDF_STATUS_E_FAILURE;
1469  }
1470  qdf_export_symbol(wmi_unified_simulation_test_cmd_send);
1471  #endif
1472  
1473  QDF_STATUS
wmi_unified_vdev_spectral_configure_cmd_send(wmi_unified_t wmi_handle,struct vdev_spectral_configure_params * param)1474  wmi_unified_vdev_spectral_configure_cmd_send(
1475  		wmi_unified_t wmi_handle,
1476  		struct vdev_spectral_configure_params *param)
1477  {
1478  	if (wmi_handle->ops->send_vdev_spectral_configure_cmd)
1479  		return wmi_handle->ops->send_vdev_spectral_configure_cmd(
1480  							wmi_handle, param);
1481  
1482  	return QDF_STATUS_E_FAILURE;
1483  }
1484  
wmi_unified_vdev_spectral_enable_cmd_send(wmi_unified_t wmi_handle,struct vdev_spectral_enable_params * param)1485  QDF_STATUS wmi_unified_vdev_spectral_enable_cmd_send(
1486  		wmi_unified_t wmi_handle,
1487  		struct vdev_spectral_enable_params *param)
1488  {
1489  	if (wmi_handle->ops->send_vdev_spectral_enable_cmd)
1490  		return wmi_handle->ops->send_vdev_spectral_enable_cmd(
1491  						wmi_handle, param);
1492  
1493  	return QDF_STATUS_E_FAILURE;
1494  }
1495  
wmi_unified_bss_chan_info_request_cmd_send(wmi_unified_t wmi_handle,struct bss_chan_info_request_params * param)1496  QDF_STATUS wmi_unified_bss_chan_info_request_cmd_send(
1497  			wmi_unified_t wmi_handle,
1498  			struct bss_chan_info_request_params *param)
1499  {
1500  	if (wmi_handle->ops->send_bss_chan_info_request_cmd)
1501  		return wmi_handle->ops->send_bss_chan_info_request_cmd(
1502  						wmi_handle, param);
1503  
1504  	return QDF_STATUS_E_FAILURE;
1505  }
1506  
wmi_unified_thermal_mitigation_param_cmd_send(wmi_unified_t wmi_handle,struct thermal_mitigation_params * param)1507  QDF_STATUS wmi_unified_thermal_mitigation_param_cmd_send(
1508  		wmi_unified_t wmi_handle,
1509  		struct thermal_mitigation_params *param)
1510  {
1511  	if (wmi_handle->ops->send_thermal_mitigation_param_cmd)
1512  		return wmi_handle->ops->send_thermal_mitigation_param_cmd(
1513  						wmi_handle, param);
1514  
1515  	return QDF_STATUS_E_FAILURE;
1516  }
1517  
1518  #ifdef HEALTH_MON_SUPPORT
wmi_extract_health_mon_event(wmi_unified_t wmi_handle,void * ev,struct wmi_health_mon_params * param)1519  QDF_STATUS wmi_extract_health_mon_event(
1520  		wmi_unified_t wmi_handle,
1521  		void *ev,
1522  		struct wmi_health_mon_params *param)
1523  {
1524  	if (wmi_handle->ops->extract_health_mon_init_done_info_event)
1525  		return wmi_handle->ops->extract_health_mon_init_done_info_event(
1526  						wmi_handle, ev, param);
1527  
1528  	return QDF_STATUS_E_FAILURE;
1529  }
1530  #endif /* HEALTH_MON_SUPPORT */
1531  
1532  QDF_STATUS
wmi_unified_vdev_set_fwtest_param_cmd_send(wmi_unified_t wmi_handle,struct set_fwtest_params * param)1533  wmi_unified_vdev_set_fwtest_param_cmd_send(wmi_unified_t wmi_handle,
1534  					   struct set_fwtest_params *param)
1535  {
1536  	if (wmi_handle->ops->send_vdev_set_fwtest_param_cmd)
1537  		return wmi_handle->ops->send_vdev_set_fwtest_param_cmd(
1538  						wmi_handle, param);
1539  
1540  	return QDF_STATUS_E_FAILURE;
1541  }
1542  
1543  QDF_STATUS
wmi_unified_vdev_set_custom_aggr_size_cmd_send(wmi_unified_t wmi_handle,struct set_custom_aggr_size_params * param)1544  wmi_unified_vdev_set_custom_aggr_size_cmd_send(
1545  		wmi_unified_t wmi_handle,
1546  		struct set_custom_aggr_size_params *param)
1547  {
1548  	if (wmi_handle->ops->send_vdev_set_custom_aggr_size_cmd)
1549  		return wmi_handle->ops->send_vdev_set_custom_aggr_size_cmd(
1550  						wmi_handle, param);
1551  
1552  	return QDF_STATUS_E_FAILURE;
1553  }
1554  
1555  QDF_STATUS
wmi_unified_vdev_set_qdepth_thresh_cmd_send(wmi_unified_t wmi_handle,struct set_qdepth_thresh_params * param)1556  wmi_unified_vdev_set_qdepth_thresh_cmd_send(
1557  		wmi_unified_t wmi_handle,
1558  		struct set_qdepth_thresh_params *param)
1559  {
1560  	if (wmi_handle->ops->send_vdev_set_qdepth_thresh_cmd)
1561  		return wmi_handle->ops->send_vdev_set_qdepth_thresh_cmd(
1562  						wmi_handle, param);
1563  
1564  	return QDF_STATUS_E_FAILURE;
1565  }
1566  
1567  #ifdef WLAN_REG_PARTIAL_OFFLOAD
wmi_unified_pdev_set_regdomain_cmd_send(wmi_unified_t wmi_handle,struct pdev_set_regdomain_params * param)1568  QDF_STATUS wmi_unified_pdev_set_regdomain_cmd_send(
1569  			wmi_unified_t wmi_handle,
1570  			struct pdev_set_regdomain_params *param)
1571  {
1572  	if (wmi_handle->ops->send_pdev_set_regdomain_cmd)
1573  		return wmi_handle->ops->send_pdev_set_regdomain_cmd(wmi_handle,
1574  				param);
1575  
1576  	return QDF_STATUS_E_FAILURE;
1577  }
1578  #endif
1579  
1580  QDF_STATUS
wmi_unified_set_beacon_filter_cmd_send(wmi_unified_t wmi_handle,struct set_beacon_filter_params * param)1581  wmi_unified_set_beacon_filter_cmd_send(
1582  			wmi_unified_t wmi_handle,
1583  			struct set_beacon_filter_params *param)
1584  {
1585  	if (wmi_handle->ops->send_set_beacon_filter_cmd)
1586  		return wmi_handle->ops->send_set_beacon_filter_cmd(wmi_handle,
1587  				param);
1588  
1589  	return QDF_STATUS_E_FAILURE;
1590  }
1591  
wmi_unified_remove_beacon_filter_cmd_send(wmi_unified_t wmi_handle,struct remove_beacon_filter_params * param)1592  QDF_STATUS wmi_unified_remove_beacon_filter_cmd_send(
1593  			wmi_unified_t wmi_handle,
1594  			struct remove_beacon_filter_params *param)
1595  {
1596  	if (wmi_handle->ops->send_remove_beacon_filter_cmd)
1597  		return wmi_handle->ops->send_remove_beacon_filter_cmd(
1598  						wmi_handle, param);
1599  
1600  	return QDF_STATUS_E_FAILURE;
1601  }
1602  
wmi_unified_get_pn_send_cmd(wmi_unified_t wmi_hdl,struct peer_request_pn_param * pn_params)1603  QDF_STATUS wmi_unified_get_pn_send_cmd(wmi_unified_t wmi_hdl,
1604  				       struct peer_request_pn_param *pn_params)
1605  {
1606  	if (wmi_hdl->ops->send_pdev_get_pn_cmd)
1607  		return wmi_hdl->ops->send_pdev_get_pn_cmd(wmi_hdl,
1608  							     pn_params);
1609  
1610  	return QDF_STATUS_E_FAILURE;
1611  }
1612  
wmi_unified_get_rxpn_send_cmd(wmi_unified_t wmi_hdl,struct peer_request_rxpn_param * pn_params)1613  QDF_STATUS wmi_unified_get_rxpn_send_cmd(
1614  		wmi_unified_t wmi_hdl,
1615  		struct peer_request_rxpn_param *pn_params)
1616  {
1617  	if (wmi_hdl->ops->send_pdev_get_rxpn_cmd)
1618  		return wmi_hdl->ops->send_pdev_get_rxpn_cmd(wmi_hdl,
1619  							    pn_params);
1620  
1621  	return QDF_STATUS_E_FAILURE;
1622  }
1623  qdf_export_symbol(wmi_unified_get_rxpn_send_cmd);
1624  
wmi_unified_addba_clearresponse_cmd_send(wmi_unified_t wmi_handle,uint8_t macaddr[QDF_MAC_ADDR_SIZE],struct addba_clearresponse_params * param)1625  QDF_STATUS wmi_unified_addba_clearresponse_cmd_send(
1626  			wmi_unified_t wmi_handle,
1627  			uint8_t macaddr[QDF_MAC_ADDR_SIZE],
1628  			struct addba_clearresponse_params *param)
1629  {
1630  	if (wmi_handle->ops->send_addba_clearresponse_cmd)
1631  		return wmi_handle->ops->send_addba_clearresponse_cmd(wmi_handle,
1632  				  macaddr, param);
1633  
1634  	return QDF_STATUS_E_FAILURE;
1635  }
1636  
1637  QDF_STATUS
wmi_unified_addba_send_cmd_send(wmi_unified_t wmi_handle,uint8_t macaddr[QDF_MAC_ADDR_SIZE],struct addba_send_params * param)1638  wmi_unified_addba_send_cmd_send(wmi_unified_t wmi_handle,
1639  				uint8_t macaddr[QDF_MAC_ADDR_SIZE],
1640  				struct addba_send_params *param)
1641  {
1642  	if (wmi_handle->ops->send_addba_send_cmd)
1643  		return wmi_handle->ops->send_addba_send_cmd(wmi_handle,
1644  				  macaddr, param);
1645  
1646  	return QDF_STATUS_E_FAILURE;
1647  }
1648  
1649  QDF_STATUS
wmi_unified_delba_send_cmd_send(wmi_unified_t wmi_handle,uint8_t macaddr[QDF_MAC_ADDR_SIZE],struct delba_send_params * param)1650  wmi_unified_delba_send_cmd_send(wmi_unified_t wmi_handle,
1651  				uint8_t macaddr[QDF_MAC_ADDR_SIZE],
1652  				struct delba_send_params *param)
1653  {
1654  	if (wmi_handle->ops->send_delba_send_cmd)
1655  		return wmi_handle->ops->send_delba_send_cmd(wmi_handle,
1656  				  macaddr, param);
1657  
1658  	return QDF_STATUS_E_FAILURE;
1659  }
1660  
1661  QDF_STATUS
wmi_unified_addba_setresponse_cmd_send(wmi_unified_t wmi_handle,uint8_t macaddr[QDF_MAC_ADDR_SIZE],struct addba_setresponse_params * param)1662  wmi_unified_addba_setresponse_cmd_send(wmi_unified_t wmi_handle,
1663  				       uint8_t macaddr[QDF_MAC_ADDR_SIZE],
1664  				       struct addba_setresponse_params *param)
1665  {
1666  	if (wmi_handle->ops->send_addba_setresponse_cmd)
1667  		return wmi_handle->ops->send_addba_setresponse_cmd(wmi_handle,
1668  				  macaddr, param);
1669  
1670  	return QDF_STATUS_E_FAILURE;
1671  }
1672  
1673  QDF_STATUS
wmi_unified_singleamsdu_cmd_send(wmi_unified_t wmi_handle,uint8_t macaddr[QDF_MAC_ADDR_SIZE],struct singleamsdu_params * param)1674  wmi_unified_singleamsdu_cmd_send(wmi_unified_t wmi_handle,
1675  				 uint8_t macaddr[QDF_MAC_ADDR_SIZE],
1676  				 struct singleamsdu_params *param)
1677  {
1678  	if (wmi_handle->ops->send_singleamsdu_cmd)
1679  		return wmi_handle->ops->send_singleamsdu_cmd(wmi_handle,
1680  				  macaddr, param);
1681  
1682  	return QDF_STATUS_E_FAILURE;
1683  }
1684  
1685  QDF_STATUS
wmi_unified_mu_scan_cmd_send(wmi_unified_t wmi_handle,struct mu_scan_params * param)1686  wmi_unified_mu_scan_cmd_send(wmi_unified_t wmi_handle,
1687  			     struct mu_scan_params *param)
1688  {
1689  	if (wmi_handle->ops->send_mu_scan_cmd)
1690  		return wmi_handle->ops->send_mu_scan_cmd(wmi_handle, param);
1691  
1692  	return QDF_STATUS_E_FAILURE;
1693  }
1694  
1695  QDF_STATUS
wmi_unified_lteu_config_cmd_send(wmi_unified_t wmi_handle,struct lteu_config_params * param)1696  wmi_unified_lteu_config_cmd_send(wmi_unified_t wmi_handle,
1697  				 struct lteu_config_params *param)
1698  {
1699  	if (wmi_handle->ops->send_lteu_config_cmd)
1700  		return wmi_handle->ops->send_lteu_config_cmd(wmi_handle, param);
1701  
1702  	return QDF_STATUS_E_FAILURE;
1703  }
1704  
1705  QDF_STATUS
wmi_unified_set_psmode_cmd_send(wmi_unified_t wmi_handle,struct set_ps_mode_params * param)1706  wmi_unified_set_psmode_cmd_send(wmi_unified_t wmi_handle,
1707  				struct set_ps_mode_params *param)
1708  {
1709  	if (wmi_handle->ops->send_set_ps_mode_cmd)
1710  		return wmi_handle->ops->send_set_ps_mode_cmd(wmi_handle, param);
1711  
1712  	return QDF_STATUS_E_FAILURE;
1713  }
1714  
1715  QDF_STATUS
wmi_unified_init_cmd_send(wmi_unified_t wmi_handle,struct wmi_init_cmd_param * param)1716  wmi_unified_init_cmd_send(wmi_unified_t wmi_handle,
1717  			  struct wmi_init_cmd_param *param)
1718  {
1719  	if (wmi_handle->ops->init_cmd_send)
1720  		return wmi_handle->ops->init_cmd_send(wmi_handle, param);
1721  
1722  	return QDF_STATUS_E_FAILURE;
1723  }
1724  
wmi_save_service_bitmap(wmi_unified_t wmi_handle,void * evt_buf,void * bitmap_buf)1725  QDF_STATUS wmi_save_service_bitmap(wmi_unified_t wmi_handle, void *evt_buf,
1726  				   void *bitmap_buf)
1727  {
1728  	if (wmi_handle->ops->save_service_bitmap) {
1729  		return wmi_handle->ops->save_service_bitmap(wmi_handle, evt_buf,
1730  						     bitmap_buf);
1731  	}
1732  	return QDF_STATUS_E_FAILURE;
1733  }
1734  
wmi_save_ext_service_bitmap(wmi_unified_t wmi_handle,void * evt_buf,void * bitmap_buf)1735  QDF_STATUS wmi_save_ext_service_bitmap(wmi_unified_t wmi_handle, void *evt_buf,
1736  				       void *bitmap_buf)
1737  {
1738  	if (wmi_handle->ops->save_ext_service_bitmap) {
1739  		return wmi_handle->ops->save_ext_service_bitmap(wmi_handle,
1740  				evt_buf, bitmap_buf);
1741  	}
1742  	return QDF_STATUS_E_FAILURE;
1743  }
1744  
wmi_save_fw_version(wmi_unified_t wmi_handle,void * evt_buf)1745  QDF_STATUS wmi_save_fw_version(wmi_unified_t wmi_handle, void *evt_buf)
1746  {
1747  	if (wmi_handle->ops->save_fw_version) {
1748  		wmi_handle->ops->save_fw_version(wmi_handle, evt_buf);
1749  		return 0;
1750  	}
1751  	return QDF_STATUS_E_FAILURE;
1752  }
1753  
1754  QDF_STATUS
wmi_check_and_update_fw_version(wmi_unified_t wmi_handle,void * evt_buf)1755  wmi_check_and_update_fw_version(wmi_unified_t wmi_handle, void *evt_buf)
1756  {
1757  	if (wmi_handle->ops->check_and_update_fw_version)
1758  		return wmi_handle->ops->check_and_update_fw_version(wmi_handle,
1759  				evt_buf);
1760  
1761  	return QDF_STATUS_E_FAILURE;
1762  }
1763  
wmi_service_enabled(wmi_unified_t wmi_handle,uint32_t service_id)1764  bool wmi_service_enabled(wmi_unified_t wmi_handle, uint32_t service_id)
1765  {
1766  	if ((service_id < wmi_services_max) &&
1767  		(wmi_handle->services[service_id] != WMI_SERVICE_UNAVAILABLE)) {
1768  		if (wmi_handle->ops->is_service_enabled) {
1769  			return wmi_handle->ops->is_service_enabled(wmi_handle,
1770  				wmi_handle->services[service_id]);
1771  		}
1772  	} else {
1773  		wmi_info("Service %d not supported", service_id);
1774  	}
1775  
1776  	return false;
1777  }
1778  
1779  QDF_STATUS
wmi_get_target_cap_from_service_ready(wmi_unified_t wmi_handle,void * evt_buf,struct wlan_psoc_target_capability_info * ev)1780  wmi_get_target_cap_from_service_ready(
1781  		wmi_unified_t wmi_handle, void *evt_buf,
1782  		struct wlan_psoc_target_capability_info *ev)
1783  {
1784  	if (wmi_handle->ops->get_target_cap_from_service_ready)
1785  		return wmi_handle->ops->get_target_cap_from_service_ready(
1786  						wmi_handle, evt_buf, ev);
1787  
1788  	return QDF_STATUS_E_FAILURE;
1789  }
1790  
wmi_extract_fw_version(wmi_unified_t wmi_handle,void * evt_buf,struct wmi_host_fw_ver * fw_ver)1791  QDF_STATUS wmi_extract_fw_version(wmi_unified_t wmi_handle, void *evt_buf,
1792  				  struct wmi_host_fw_ver *fw_ver)
1793  {
1794  	if (wmi_handle->ops->extract_fw_version)
1795  		return wmi_handle->ops->extract_fw_version(wmi_handle,
1796  				evt_buf, fw_ver);
1797  
1798  	return QDF_STATUS_E_FAILURE;
1799  }
1800  
wmi_extract_fw_abi_version(wmi_unified_t wmi_handle,void * evt_buf,struct wmi_host_fw_abi_ver * fw_ver)1801  QDF_STATUS wmi_extract_fw_abi_version(wmi_unified_t wmi_handle, void *evt_buf,
1802  				      struct wmi_host_fw_abi_ver *fw_ver)
1803  {
1804  	if (wmi_handle->ops->extract_fw_abi_version)
1805  		return wmi_handle->ops->extract_fw_abi_version(wmi_handle,
1806  		evt_buf, fw_ver);
1807  
1808  	return QDF_STATUS_E_FAILURE;
1809  }
1810  
1811  QDF_STATUS
wmi_extract_hal_reg_cap(wmi_unified_t wmi_handle,void * evt_buf,struct wlan_psoc_hal_reg_capability * hal_reg_cap)1812  wmi_extract_hal_reg_cap(wmi_unified_t wmi_handle, void *evt_buf,
1813  			struct wlan_psoc_hal_reg_capability *hal_reg_cap)
1814  {
1815  	if (wmi_handle->ops->extract_hal_reg_cap)
1816  		return wmi_handle->ops->extract_hal_reg_cap(wmi_handle,
1817  			evt_buf, hal_reg_cap);
1818  
1819  	return QDF_STATUS_E_FAILURE;
1820  }
1821  
1822  QDF_STATUS
wmi_extract_hal_reg_cap_ext2(wmi_unified_t wmi_handle,void * evt_buf,uint8_t phy_idx,struct wlan_psoc_host_hal_reg_capabilities_ext2 * hal_reg_cap)1823  wmi_extract_hal_reg_cap_ext2(
1824  		wmi_unified_t wmi_handle, void *evt_buf, uint8_t phy_idx,
1825  		struct wlan_psoc_host_hal_reg_capabilities_ext2 *hal_reg_cap)
1826  {
1827  	if (wmi_handle->ops->extract_hal_reg_cap_ext2)
1828  		return wmi_handle->ops->extract_hal_reg_cap_ext2(
1829  			wmi_handle, evt_buf, phy_idx, hal_reg_cap);
1830  
1831  	return QDF_STATUS_E_FAILURE;
1832  }
1833  
1834  uint32_t
wmi_extract_num_mem_reqs_from_service_ready(wmi_unified_t wmi_handle,void * evt_buf)1835  wmi_extract_num_mem_reqs_from_service_ready(
1836  		wmi_unified_t wmi_handle,
1837  		void *evt_buf)
1838  {
1839  	if (wmi_handle->ops->extract_num_mem_reqs)
1840  		return wmi_handle->ops->extract_num_mem_reqs(wmi_handle,
1841  				evt_buf);
1842  
1843  	return 0;
1844  }
1845  
1846  QDF_STATUS
wmi_extract_host_mem_req_from_service_ready(wmi_unified_t wmi_handle,void * evt_buf,host_mem_req * mem_reqs,uint32_t num_active_peers,uint32_t num_peers,enum wmi_fw_mem_prio fw_prio,uint16_t idx)1847  wmi_extract_host_mem_req_from_service_ready(wmi_unified_t wmi_handle,
1848  					    void *evt_buf,
1849  					    host_mem_req *mem_reqs,
1850  					    uint32_t num_active_peers,
1851  					    uint32_t num_peers,
1852  					    enum wmi_fw_mem_prio fw_prio,
1853  					    uint16_t idx)
1854  {
1855  	if (wmi_handle->ops->extract_host_mem_req)
1856  		return wmi_handle->ops->extract_host_mem_req(wmi_handle,
1857  				evt_buf, mem_reqs, num_active_peers,
1858  				num_peers, fw_prio, idx);
1859  
1860  	return QDF_STATUS_E_FAILURE;
1861  }
1862  
wmi_ready_extract_init_status(wmi_unified_t wmi_handle,void * ev)1863  uint32_t wmi_ready_extract_init_status(wmi_unified_t wmi_handle, void *ev)
1864  {
1865  	if (wmi_handle->ops->ready_extract_init_status)
1866  		return wmi_handle->ops->ready_extract_init_status(wmi_handle,
1867  			ev);
1868  
1869  
1870  	return 1;
1871  
1872  }
1873  
wmi_ready_extract_mac_addr(wmi_unified_t wmi_handle,void * ev,uint8_t * macaddr)1874  QDF_STATUS wmi_ready_extract_mac_addr(wmi_unified_t wmi_handle,
1875  				      void *ev, uint8_t *macaddr)
1876  {
1877  	if (wmi_handle->ops->ready_extract_mac_addr)
1878  		return wmi_handle->ops->ready_extract_mac_addr(wmi_handle,
1879  			ev, macaddr);
1880  
1881  
1882  	return QDF_STATUS_E_FAILURE;
1883  }
1884  
1885  wmi_host_mac_addr
wmi_ready_extract_mac_addr_list(wmi_unified_t wmi_handle,void * ev,uint8_t * num_mac_addr)1886  *wmi_ready_extract_mac_addr_list(wmi_unified_t wmi_handle, void *ev,
1887  				 uint8_t *num_mac_addr)
1888  {
1889  	if (wmi_handle->ops->ready_extract_mac_addr_list)
1890  		return wmi_handle->ops->ready_extract_mac_addr_list(wmi_handle,
1891  			ev, num_mac_addr);
1892  
1893  	*num_mac_addr = 0;
1894  
1895  	return NULL;
1896  }
1897  
wmi_extract_ready_event_params(wmi_unified_t wmi_handle,void * evt_buf,struct wmi_host_ready_ev_param * ev_param)1898  QDF_STATUS wmi_extract_ready_event_params(
1899  		wmi_unified_t wmi_handle, void *evt_buf,
1900  		struct wmi_host_ready_ev_param *ev_param)
1901  {
1902  	if (wmi_handle->ops->extract_ready_event_params)
1903  		return wmi_handle->ops->extract_ready_event_params(wmi_handle,
1904  			evt_buf, ev_param);
1905  
1906  	return QDF_STATUS_E_FAILURE;
1907  }
1908  
wmi_extract_dbglog_data_len(wmi_unified_t wmi_handle,void * evt_buf,uint32_t * len)1909  uint8_t *wmi_extract_dbglog_data_len(wmi_unified_t wmi_handle, void *evt_buf,
1910  				     uint32_t *len)
1911  {
1912  	if (wmi_handle->ops->extract_dbglog_data_len)
1913  		return wmi_handle->ops->extract_dbglog_data_len(wmi_handle,
1914  			evt_buf, len);
1915  
1916  
1917  	return NULL;
1918  }
1919  qdf_export_symbol(wmi_extract_dbglog_data_len);
1920  
wmi_send_ext_resource_config(wmi_unified_t wmi_handle,wmi_host_ext_resource_config * ext_cfg)1921  QDF_STATUS wmi_send_ext_resource_config(wmi_unified_t wmi_handle,
1922  					wmi_host_ext_resource_config *ext_cfg)
1923  {
1924  	if (wmi_handle->ops->send_ext_resource_config)
1925  		return wmi_handle->ops->send_ext_resource_config(wmi_handle,
1926  				ext_cfg);
1927  
1928  	return QDF_STATUS_E_FAILURE;
1929  }
1930  
1931  QDF_STATUS
wmi_unified_rtt_meas_req_test_cmd_send(wmi_unified_t wmi_handle,struct rtt_meas_req_test_params * param)1932  wmi_unified_rtt_meas_req_test_cmd_send(wmi_unified_t wmi_handle,
1933  				       struct rtt_meas_req_test_params *param)
1934  {
1935  	if (wmi_handle->ops->send_rtt_meas_req_test_cmd)
1936  		return wmi_handle->ops->send_rtt_meas_req_test_cmd(wmi_handle,
1937  				param);
1938  
1939  	return QDF_STATUS_E_FAILURE;
1940  }
1941  
1942  QDF_STATUS
wmi_unified_rtt_meas_req_cmd_send(wmi_unified_t wmi_handle,struct rtt_meas_req_params * param)1943  wmi_unified_rtt_meas_req_cmd_send(wmi_unified_t wmi_handle,
1944  				  struct rtt_meas_req_params *param)
1945  {
1946  	if (wmi_handle->ops->send_rtt_meas_req_cmd)
1947  		return wmi_handle->ops->send_rtt_meas_req_cmd(wmi_handle,
1948  				param);
1949  
1950  	return QDF_STATUS_E_FAILURE;
1951  }
1952  
wmi_unified_lci_set_cmd_send(wmi_unified_t wmi_handle,struct lci_set_params * param)1953  QDF_STATUS wmi_unified_lci_set_cmd_send(wmi_unified_t wmi_handle,
1954  					struct lci_set_params *param)
1955  {
1956  	if (wmi_handle->ops->send_lci_set_cmd)
1957  		return wmi_handle->ops->send_lci_set_cmd(wmi_handle, param);
1958  
1959  	return QDF_STATUS_E_FAILURE;
1960  }
1961  
wmi_unified_lcr_set_cmd_send(wmi_unified_t wmi_handle,struct lcr_set_params * param)1962  QDF_STATUS wmi_unified_lcr_set_cmd_send(wmi_unified_t wmi_handle,
1963  					struct lcr_set_params *param)
1964  {
1965  	if (wmi_handle->ops->send_lcr_set_cmd)
1966  		return wmi_handle->ops->send_lcr_set_cmd(wmi_handle, param);
1967  
1968  	return QDF_STATUS_E_FAILURE;
1969  }
1970  
1971  QDF_STATUS
wmi_unified_rtt_keepalive_req_cmd_send(wmi_unified_t wmi_handle,struct rtt_keepalive_req_params * param)1972  wmi_unified_rtt_keepalive_req_cmd_send(wmi_unified_t wmi_handle,
1973  				       struct rtt_keepalive_req_params *param)
1974  {
1975  	if (wmi_handle->ops->send_rtt_keepalive_req_cmd)
1976  		return wmi_handle->ops->send_rtt_keepalive_req_cmd(wmi_handle,
1977  				param);
1978  
1979  	return QDF_STATUS_E_FAILURE;
1980  }
1981  
wmi_unified_send_periodic_chan_stats_config_cmd(wmi_unified_t wmi_handle,struct periodic_chan_stats_params * param)1982  QDF_STATUS wmi_unified_send_periodic_chan_stats_config_cmd(
1983  		wmi_unified_t wmi_handle,
1984  		struct periodic_chan_stats_params *param)
1985  {
1986  	if (wmi_handle->ops->send_periodic_chan_stats_config_cmd)
1987  		return wmi_handle->ops->send_periodic_chan_stats_config_cmd(
1988  						wmi_handle, param);
1989  
1990  	return QDF_STATUS_E_FAILURE;
1991  }
1992  
1993  QDF_STATUS
wmi_send_get_user_position_cmd(wmi_unified_t wmi_handle,uint32_t value)1994  wmi_send_get_user_position_cmd(wmi_unified_t wmi_handle, uint32_t value)
1995  {
1996  	if (wmi_handle->ops->send_get_user_position_cmd)
1997  		return wmi_handle->ops->send_get_user_position_cmd(wmi_handle,
1998  								value);
1999  
2000  	return QDF_STATUS_E_FAILURE;
2001  }
2002  
2003  QDF_STATUS
wmi_send_get_peer_mumimo_tx_count_cmd(wmi_unified_t wmi_handle,uint32_t value)2004  wmi_send_get_peer_mumimo_tx_count_cmd(wmi_unified_t wmi_handle, uint32_t value)
2005  {
2006  	if (wmi_handle->ops->send_get_peer_mumimo_tx_count_cmd)
2007  		return wmi_handle->ops->send_get_peer_mumimo_tx_count_cmd(
2008  							wmi_handle, value);
2009  
2010  	return QDF_STATUS_E_FAILURE;
2011  }
2012  
2013  QDF_STATUS
wmi_send_reset_peer_mumimo_tx_count_cmd(wmi_unified_t wmi_handle,uint32_t value)2014  wmi_send_reset_peer_mumimo_tx_count_cmd(wmi_unified_t wmi_handle,
2015  					uint32_t value)
2016  {
2017  	if (wmi_handle->ops->send_reset_peer_mumimo_tx_count_cmd)
2018  		return wmi_handle->ops->send_reset_peer_mumimo_tx_count_cmd(
2019  						wmi_handle, value);
2020  
2021  	return QDF_STATUS_E_FAILURE;
2022  }
2023  
2024  /* Extract - APIs */
2025  
wmi_extract_ctl_failsafe_check_ev_param(wmi_unified_t wmi_handle,void * evt_buf,struct wmi_host_pdev_ctl_failsafe_event * param)2026  QDF_STATUS wmi_extract_ctl_failsafe_check_ev_param(
2027  		wmi_unified_t wmi_handle,
2028  		void *evt_buf,
2029  		struct wmi_host_pdev_ctl_failsafe_event *param)
2030  {
2031  	if (wmi_handle->ops->extract_ctl_failsafe_check_ev_param)
2032  		return wmi_handle->ops->extract_ctl_failsafe_check_ev_param(
2033  			wmi_handle, evt_buf, param);
2034  
2035  	return QDF_STATUS_E_FAILURE;
2036  }
2037  
2038  QDF_STATUS
wmi_extract_fips_event_data(wmi_unified_t wmi_handle,void * evt_buf,struct wmi_host_fips_event_param * param)2039  wmi_extract_fips_event_data(wmi_unified_t wmi_handle, void *evt_buf,
2040  			    struct wmi_host_fips_event_param *param)
2041  {
2042  	if (wmi_handle->ops->extract_fips_event_data) {
2043  		return wmi_handle->ops->extract_fips_event_data(wmi_handle,
2044  			evt_buf, param);
2045  	}
2046  	return QDF_STATUS_E_FAILURE;
2047  }
2048  
2049  #ifdef WLAN_FEATURE_FIPS_BER_CCMGCM
2050  QDF_STATUS
wmi_extract_fips_extend_event_data(wmi_unified_t wmi_handle,void * evt_buf,struct wmi_host_fips_extend_event_param * param)2051  wmi_extract_fips_extend_event_data(wmi_unified_t wmi_handle, void *evt_buf,
2052  				   struct wmi_host_fips_extend_event_param
2053  				   *param)
2054  {
2055  	if (wmi_handle->ops->extract_fips_extend_ev_data) {
2056  		return wmi_handle->ops->extract_fips_extend_ev_data(wmi_handle,
2057  								    evt_buf,
2058  								    param);
2059  	}
2060  	return QDF_STATUS_E_FAILURE;
2061  }
2062  #endif
2063  
wmi_unified_extract_pn(wmi_unified_t wmi_hdl,void * evt_buf,struct wmi_host_get_pn_event * param)2064  QDF_STATUS wmi_unified_extract_pn(wmi_unified_t wmi_hdl, void *evt_buf,
2065  				  struct wmi_host_get_pn_event *param)
2066  {
2067  	if (wmi_hdl->ops->extract_get_pn_data)
2068  		return wmi_hdl->ops->extract_get_pn_data(wmi_hdl,
2069  							 evt_buf, param);
2070  	return QDF_STATUS_E_FAILURE;
2071  }
2072  
wmi_unified_extract_rxpn(wmi_unified_t wmi_hdl,void * evt_buf,struct wmi_host_get_rxpn_event * param)2073  QDF_STATUS wmi_unified_extract_rxpn(wmi_unified_t wmi_hdl, void *evt_buf,
2074  				    struct wmi_host_get_rxpn_event *param)
2075  {
2076  	if (wmi_hdl->ops->extract_get_rxpn_data)
2077  		return wmi_hdl->ops->extract_get_rxpn_data(wmi_hdl,
2078  							   evt_buf, param);
2079  	return QDF_STATUS_E_FAILURE;
2080  }
2081  
2082  qdf_export_symbol(wmi_unified_extract_rxpn);
2083  
2084  #ifdef WLAN_FEATURE_DISA
2085  QDF_STATUS
wmi_extract_encrypt_decrypt_resp_params(void * wmi_hdl,void * evt_buf,struct disa_encrypt_decrypt_resp_params * param)2086  wmi_extract_encrypt_decrypt_resp_params(void *wmi_hdl, void *evt_buf,
2087  					struct disa_encrypt_decrypt_resp_params
2088  					*param)
2089  {
2090  	wmi_unified_t wmi_handle = (wmi_unified_t)wmi_hdl;
2091  
2092  	if (wmi_handle->ops->extract_encrypt_decrypt_resp_event)
2093  		return
2094  		wmi_handle->ops->extract_encrypt_decrypt_resp_event(wmi_handle,
2095  								    evt_buf,
2096  								    param);
2097  
2098  	return QDF_STATUS_E_FAILURE;
2099  }
2100  #endif /* WLAN_FEATURE_DISA */
2101  
2102  QDF_STATUS
wmi_extract_mgmt_rx_params(wmi_unified_t wmi_handle,void * evt_buf,struct mgmt_rx_event_params * hdr,uint8_t ** bufp)2103  wmi_extract_mgmt_rx_params(wmi_unified_t wmi_handle, void *evt_buf,
2104  			   struct mgmt_rx_event_params *hdr, uint8_t **bufp)
2105  {
2106  	if (wmi_handle->ops->extract_mgmt_rx_params)
2107  		return wmi_handle->ops->extract_mgmt_rx_params(wmi_handle,
2108  				evt_buf, hdr, bufp);
2109  
2110  	return QDF_STATUS_E_FAILURE;
2111  }
2112  
2113  QDF_STATUS
wmi_extract_mgmt_rx_ext_params(wmi_unified_t wmi_handle,void * evt_buf,struct mgmt_rx_event_ext_params * params)2114  wmi_extract_mgmt_rx_ext_params(wmi_unified_t wmi_handle, void *evt_buf,
2115  			       struct mgmt_rx_event_ext_params *params)
2116  {
2117  	if (wmi_handle->ops->extract_mgmt_rx_ext_params)
2118  		return wmi_handle->ops->extract_mgmt_rx_ext_params(
2119  				wmi_handle, evt_buf, params);
2120  
2121  	return QDF_STATUS_E_FAILURE;
2122  }
2123  
2124  #ifdef WLAN_MGMT_RX_REO_SUPPORT
wmi_extract_mgmt_rx_fw_consumed(wmi_unified_t wmi_handle,void * evt_buf,struct mgmt_rx_reo_params * params)2125  QDF_STATUS wmi_extract_mgmt_rx_fw_consumed(wmi_unified_t wmi_handle,
2126  					   void *evt_buf,
2127  					   struct mgmt_rx_reo_params *params)
2128  {
2129  	if (wmi_handle->ops->extract_mgmt_rx_fw_consumed)
2130  		return wmi_handle->ops->extract_mgmt_rx_fw_consumed(
2131  				wmi_handle, evt_buf, params);
2132  
2133  	return QDF_STATUS_E_FAILURE;
2134  }
2135  
2136  QDF_STATUS
wmi_extract_mgmt_rx_reo_params(wmi_unified_t wmi_handle,void * evt_buf,struct mgmt_rx_reo_params * params)2137  wmi_extract_mgmt_rx_reo_params(wmi_unified_t wmi_handle, void *evt_buf,
2138  			       struct mgmt_rx_reo_params *params)
2139  {
2140  	if (wmi_handle->ops->extract_mgmt_rx_reo_params)
2141  		return wmi_handle->ops->extract_mgmt_rx_reo_params(
2142  				wmi_handle, evt_buf, params);
2143  
2144  	return QDF_STATUS_E_FAILURE;
2145  }
2146  
wmi_unified_mgmt_rx_reo_filter_config_cmd(wmi_unified_t wmi_handle,uint8_t pdev_id,struct mgmt_rx_reo_filter * filter)2147  QDF_STATUS wmi_unified_mgmt_rx_reo_filter_config_cmd(
2148  					wmi_unified_t wmi_handle,
2149  					uint8_t pdev_id,
2150  					struct mgmt_rx_reo_filter *filter)
2151  {
2152  	if (wmi_handle->ops->send_mgmt_rx_reo_filter_config_cmd)
2153  		return wmi_handle->ops->send_mgmt_rx_reo_filter_config_cmd(
2154  						wmi_handle, pdev_id, filter);
2155  
2156  	return QDF_STATUS_E_FAILURE;
2157  }
2158  #endif
2159  
2160  QDF_STATUS
wmi_extract_frame_pn_params(wmi_unified_t wmi_handle,void * evt_buf,struct frame_pn_params * pn_params)2161  wmi_extract_frame_pn_params(wmi_unified_t wmi_handle, void *evt_buf,
2162  			    struct frame_pn_params *pn_params)
2163  {
2164  	if (wmi_handle->ops->extract_frame_pn_params)
2165  		return wmi_handle->ops->extract_frame_pn_params(wmi_handle,
2166  								evt_buf,
2167  								pn_params);
2168  
2169  	return QDF_STATUS_E_FAILURE;
2170  }
2171  
2172  QDF_STATUS
wmi_extract_is_conn_ap_frame(wmi_unified_t wmi_handle,void * evt_buf,struct frm_conn_ap * is_conn_ap_frm)2173  wmi_extract_is_conn_ap_frame(wmi_unified_t wmi_handle, void *evt_buf,
2174  			     struct frm_conn_ap *is_conn_ap_frm)
2175  {
2176  	if (wmi_handle->ops->extract_is_conn_ap_frame)
2177  		return wmi_handle->ops->extract_is_conn_ap_frame(wmi_handle,
2178  							evt_buf,
2179  							is_conn_ap_frm);
2180  
2181  	return QDF_STATUS_E_FAILURE;
2182  }
2183  
2184  QDF_STATUS
wmi_extract_vdev_roam_param(wmi_unified_t wmi_handle,void * evt_buf,wmi_host_roam_event * param)2185  wmi_extract_vdev_roam_param(wmi_unified_t wmi_handle, void *evt_buf,
2186  			    wmi_host_roam_event *param)
2187  {
2188  	if (wmi_handle->ops->extract_vdev_roam_param)
2189  		return wmi_handle->ops->extract_vdev_roam_param(wmi_handle,
2190  				evt_buf, param);
2191  
2192  	return QDF_STATUS_E_FAILURE;
2193  }
2194  
2195  QDF_STATUS
wmi_extract_vdev_scan_ev_param(wmi_unified_t wmi_handle,void * evt_buf,struct scan_event * param)2196  wmi_extract_vdev_scan_ev_param(wmi_unified_t wmi_handle, void *evt_buf,
2197  			       struct scan_event *param)
2198  {
2199  	if (wmi_handle->ops->extract_vdev_scan_ev_param)
2200  		return wmi_handle->ops->extract_vdev_scan_ev_param(wmi_handle,
2201  				evt_buf, param);
2202  
2203  	return QDF_STATUS_E_FAILURE;
2204  }
2205  
2206  #ifdef FEATURE_WLAN_SCAN_PNO
2207  QDF_STATUS
wmi_extract_nlo_match_ev_param(wmi_unified_t wmi_handle,void * evt_buf,struct scan_event * param)2208  wmi_extract_nlo_match_ev_param(wmi_unified_t wmi_handle, void *evt_buf,
2209  			       struct scan_event *param)
2210  {
2211  	if (wmi_handle->ops->extract_nlo_match_ev_param)
2212  		return wmi_handle->ops->extract_nlo_match_ev_param(wmi_handle,
2213  			evt_buf, param);
2214  
2215  	return QDF_STATUS_E_FAILURE;
2216  }
2217  
2218  QDF_STATUS
wmi_extract_nlo_complete_ev_param(wmi_unified_t wmi_handle,void * evt_buf,struct scan_event * param)2219  wmi_extract_nlo_complete_ev_param(wmi_unified_t wmi_handle, void *evt_buf,
2220  				  struct scan_event *param)
2221  {
2222  	if (wmi_handle->ops->extract_nlo_complete_ev_param)
2223  		return wmi_handle->ops->extract_nlo_complete_ev_param(
2224  			wmi_handle, evt_buf, param);
2225  
2226  	return QDF_STATUS_E_FAILURE;
2227  }
2228  #endif
2229  
2230  QDF_STATUS
wmi_extract_mu_ev_param(wmi_unified_t wmi_handle,void * evt_buf,wmi_host_mu_report_event * param)2231  wmi_extract_mu_ev_param(wmi_unified_t wmi_handle, void *evt_buf,
2232  			wmi_host_mu_report_event *param)
2233  {
2234  	if (wmi_handle->ops->extract_mu_ev_param)
2235  		return wmi_handle->ops->extract_mu_ev_param(wmi_handle, evt_buf,
2236  			param);
2237  
2238  	return QDF_STATUS_E_FAILURE;
2239  }
2240  
2241  QDF_STATUS
wmi_extract_mu_db_entry(wmi_unified_t wmi_handle,void * evt_buf,uint8_t idx,wmi_host_mu_db_entry * param)2242  wmi_extract_mu_db_entry(wmi_unified_t wmi_handle, void *evt_buf,
2243  			uint8_t idx, wmi_host_mu_db_entry *param)
2244  {
2245  	if (wmi_handle->ops->extract_mu_db_entry)
2246  		return wmi_handle->ops->extract_mu_db_entry(wmi_handle, evt_buf,
2247  			idx, param);
2248  
2249  	return QDF_STATUS_E_FAILURE;
2250  }
2251  
2252  QDF_STATUS
wmi_extract_mumimo_tx_count_ev_param(wmi_unified_t wmi_handle,void * evt_buf,wmi_host_peer_txmu_cnt_event * param)2253  wmi_extract_mumimo_tx_count_ev_param(wmi_unified_t wmi_handle, void *evt_buf,
2254  				     wmi_host_peer_txmu_cnt_event *param)
2255  {
2256  	if (wmi_handle->ops->extract_mumimo_tx_count_ev_param)
2257  		return wmi_handle->ops->extract_mumimo_tx_count_ev_param(
2258  						wmi_handle, evt_buf, param);
2259  
2260  	return QDF_STATUS_E_FAILURE;
2261  }
2262  
2263  QDF_STATUS
wmi_extract_peer_gid_userpos_list_ev_param(wmi_unified_t wmi_handle,void * evt_buf,wmi_host_peer_gid_userpos_list_event * param)2264  wmi_extract_peer_gid_userpos_list_ev_param(
2265  		wmi_unified_t wmi_handle,
2266  		void *evt_buf,
2267  		wmi_host_peer_gid_userpos_list_event *param)
2268  {
2269  	if (wmi_handle->ops->extract_peer_gid_userpos_list_ev_param)
2270  		return wmi_handle->ops->extract_peer_gid_userpos_list_ev_param(
2271  						wmi_handle, evt_buf, param);
2272  
2273  	return QDF_STATUS_E_FAILURE;
2274  }
2275  
2276  QDF_STATUS
wmi_extract_esp_estimate_ev_param(wmi_unified_t wmi_handle,void * evt_buf,struct esp_estimation_event * param)2277  wmi_extract_esp_estimate_ev_param(wmi_unified_t wmi_handle, void *evt_buf,
2278  				  struct esp_estimation_event *param)
2279  {
2280  	if (wmi_handle->ops->extract_esp_estimation_ev_param)
2281  		return wmi_handle->ops->extract_esp_estimation_ev_param(
2282  				wmi_handle, evt_buf, param);
2283  
2284  	return QDF_STATUS_E_FAILURE;
2285  }
2286  
2287  QDF_STATUS
wmi_extract_gpio_input_ev_param(wmi_unified_t wmi_handle,void * evt_buf,uint32_t * gpio_num)2288  wmi_extract_gpio_input_ev_param(wmi_unified_t wmi_handle, void *evt_buf,
2289  				uint32_t *gpio_num)
2290  {
2291  	if (wmi_handle->ops->extract_gpio_input_ev_param)
2292  		return wmi_handle->ops->extract_gpio_input_ev_param(wmi_handle,
2293  			evt_buf, gpio_num);
2294  
2295  	return QDF_STATUS_E_FAILURE;
2296  }
2297  
wmi_extract_pdev_reserve_ast_ev_param(wmi_unified_t wmi_handle,void * evt_buf,struct wmi_host_proxy_ast_reserve_param * param)2298  QDF_STATUS wmi_extract_pdev_reserve_ast_ev_param(
2299  		wmi_unified_t wmi_handle, void *evt_buf,
2300  		struct wmi_host_proxy_ast_reserve_param *param)
2301  {
2302  	if (wmi_handle->ops->extract_pdev_reserve_ast_ev_param)
2303  		return wmi_handle->ops->extract_pdev_reserve_ast_ev_param(
2304  						wmi_handle, evt_buf, param);
2305  
2306  	return QDF_STATUS_E_FAILURE;
2307  }
2308  
wmi_extract_pdev_generic_buffer_ev_param(wmi_unified_t wmi_handle,void * evt_buf,wmi_host_pdev_generic_buffer_event * param)2309  QDF_STATUS wmi_extract_pdev_generic_buffer_ev_param(
2310  		wmi_unified_t wmi_handle, void *evt_buf,
2311  		wmi_host_pdev_generic_buffer_event *param)
2312  {
2313  	if (wmi_handle->ops->extract_pdev_generic_buffer_ev_param)
2314  		return wmi_handle->ops->extract_pdev_generic_buffer_ev_param(
2315  						wmi_handle, evt_buf, param);
2316  
2317  	return QDF_STATUS_E_FAILURE;
2318  
2319  }
2320  
wmi_extract_peer_ratecode_list_ev(wmi_unified_t wmi_handle,void * evt_buf,uint8_t * peer_mac,uint32_t * pdev_id,wmi_sa_rate_cap * rate_cap)2321  QDF_STATUS wmi_extract_peer_ratecode_list_ev(
2322  		wmi_unified_t wmi_handle, void *evt_buf,
2323  		uint8_t *peer_mac, uint32_t *pdev_id, wmi_sa_rate_cap *rate_cap)
2324  {
2325  	if (wmi_handle->ops->extract_peer_ratecode_list_ev)
2326  		return wmi_handle->ops->extract_peer_ratecode_list_ev(
2327  						wmi_handle, evt_buf,
2328  						peer_mac, pdev_id, rate_cap);
2329  
2330  	return QDF_STATUS_E_FAILURE;
2331  
2332  }
2333  
2334  QDF_STATUS
wmi_extract_comb_phyerr(wmi_unified_t wmi_handle,void * evt_buf,uint16_t datalen,uint16_t * buf_offset,wmi_host_phyerr_t * phyerr)2335  wmi_extract_comb_phyerr(wmi_unified_t wmi_handle, void *evt_buf,
2336  			uint16_t datalen, uint16_t *buf_offset,
2337  			wmi_host_phyerr_t *phyerr)
2338  {
2339  	if (wmi_handle->ops->extract_comb_phyerr)
2340  		return wmi_handle->ops->extract_comb_phyerr(wmi_handle,
2341  		evt_buf, datalen, buf_offset, phyerr);
2342  
2343  	return QDF_STATUS_E_FAILURE;
2344  
2345  }
2346  
2347  QDF_STATUS
wmi_extract_single_phyerr(wmi_unified_t wmi_handle,void * evt_buf,uint16_t datalen,uint16_t * buf_offset,wmi_host_phyerr_t * phyerr)2348  wmi_extract_single_phyerr(wmi_unified_t wmi_handle, void *evt_buf,
2349  			  uint16_t datalen, uint16_t *buf_offset,
2350  			  wmi_host_phyerr_t *phyerr)
2351  {
2352  	if (wmi_handle->ops->extract_single_phyerr)
2353  		return wmi_handle->ops->extract_single_phyerr(wmi_handle,
2354  			evt_buf, datalen, buf_offset, phyerr);
2355  
2356  	return QDF_STATUS_E_FAILURE;
2357  
2358  }
2359  
2360  QDF_STATUS
wmi_extract_composite_phyerr(wmi_unified_t wmi_handle,void * evt_buf,uint16_t datalen,wmi_host_phyerr_t * phyerr)2361  wmi_extract_composite_phyerr(wmi_unified_t wmi_handle, void *evt_buf,
2362  			     uint16_t datalen, wmi_host_phyerr_t *phyerr)
2363  {
2364  	if (wmi_handle->ops->extract_composite_phyerr)
2365  		return wmi_handle->ops->extract_composite_phyerr(wmi_handle,
2366  			evt_buf, datalen, phyerr);
2367  
2368  	return QDF_STATUS_E_FAILURE;
2369  
2370  }
2371  
2372  QDF_STATUS
wmi_extract_pmf_bcn_protect_stats(wmi_unified_t wmi_handle,void * evt_buf,wmi_host_pmf_bcn_protect_stats * bcn_stats)2373  wmi_extract_pmf_bcn_protect_stats(wmi_unified_t wmi_handle, void *evt_buf,
2374  				  wmi_host_pmf_bcn_protect_stats *bcn_stats)
2375  {
2376  	if (wmi_handle->ops->extract_pmf_bcn_protect_stats)
2377  		return wmi_handle->ops->extract_pmf_bcn_protect_stats(
2378  				wmi_handle, evt_buf, bcn_stats);
2379  
2380  	return QDF_STATUS_E_FAILURE;
2381  }
2382  
2383  QDF_STATUS
wmi_extract_unit_test(wmi_unified_t wmi_handle,void * evt_buf,wmi_unit_test_event * unit_test,uint32_t maxspace)2384  wmi_extract_unit_test(wmi_unified_t wmi_handle, void *evt_buf,
2385  		      wmi_unit_test_event *unit_test, uint32_t maxspace)
2386  {
2387  	if (wmi_handle->ops->extract_unit_test)
2388  		return wmi_handle->ops->extract_unit_test(wmi_handle,
2389  			evt_buf, unit_test, maxspace);
2390  
2391  	return QDF_STATUS_E_FAILURE;
2392  }
2393  
2394  QDF_STATUS
wmi_extract_pdev_ext_stats(wmi_unified_t wmi_handle,void * evt_buf,uint32_t index,wmi_host_pdev_ext_stats * pdev_ext_stats)2395  wmi_extract_pdev_ext_stats(wmi_unified_t wmi_handle, void *evt_buf,
2396  			   uint32_t index,
2397  			   wmi_host_pdev_ext_stats *pdev_ext_stats)
2398  {
2399  	if (wmi_handle->ops->extract_pdev_ext_stats)
2400  		return wmi_handle->ops->extract_pdev_ext_stats(wmi_handle,
2401  			evt_buf, index, pdev_ext_stats);
2402  
2403  	return QDF_STATUS_E_FAILURE;
2404  }
2405  
wmi_extract_rtt_hdr(wmi_unified_t wmi_handle,void * evt_buf,wmi_host_rtt_event_hdr * ev)2406  QDF_STATUS wmi_extract_rtt_hdr(wmi_unified_t wmi_handle, void *evt_buf,
2407  			       wmi_host_rtt_event_hdr *ev)
2408  {
2409  	if (wmi_handle->ops->extract_rtt_hdr)
2410  		return wmi_handle->ops->extract_rtt_hdr(wmi_handle,
2411  			evt_buf, ev);
2412  
2413  	return QDF_STATUS_E_FAILURE;
2414  }
2415  
wmi_extract_bcnflt_stats(wmi_unified_t wmi_handle,void * evt_buf,uint32_t index,wmi_host_bcnflt_stats * bcnflt_stats)2416  QDF_STATUS wmi_extract_bcnflt_stats(
2417  		wmi_unified_t wmi_handle, void *evt_buf,
2418  		uint32_t index, wmi_host_bcnflt_stats *bcnflt_stats)
2419  {
2420  	if (wmi_handle->ops->extract_bcnflt_stats)
2421  		return wmi_handle->ops->extract_bcnflt_stats(wmi_handle,
2422  			evt_buf, index, bcnflt_stats);
2423  
2424  	return QDF_STATUS_E_FAILURE;
2425  }
2426  
wmi_extract_rtt_ev(wmi_unified_t wmi_handle,void * evt_buf,wmi_host_rtt_meas_event * ev,uint8_t * hdump,uint16_t hdump_len)2427  QDF_STATUS wmi_extract_rtt_ev(wmi_unified_t wmi_handle, void *evt_buf,
2428  			      wmi_host_rtt_meas_event *ev,
2429  			      uint8_t *hdump, uint16_t hdump_len)
2430  {
2431  	if (wmi_handle->ops->extract_rtt_ev)
2432  		return wmi_handle->ops->extract_rtt_ev(wmi_handle,
2433  			evt_buf, ev, hdump, hdump_len);
2434  
2435  	return QDF_STATUS_E_FAILURE;
2436  }
2437  
wmi_extract_peer_retry_stats(wmi_unified_t wmi_handle,void * evt_buf,uint32_t index,struct wmi_host_peer_retry_stats * peer_retry_stats)2438  QDF_STATUS wmi_extract_peer_retry_stats(
2439  	wmi_unified_t wmi_handle, void *evt_buf,
2440  	uint32_t index, struct wmi_host_peer_retry_stats *peer_retry_stats)
2441  {
2442  	if (wmi_handle->ops->extract_peer_retry_stats)
2443  		return wmi_handle->ops->extract_peer_retry_stats(wmi_handle,
2444  			evt_buf, index, peer_retry_stats);
2445  
2446  	return QDF_STATUS_E_FAILURE;
2447  }
2448  
2449  QDF_STATUS
wmi_extract_rtt_error_report_ev(wmi_unified_t wmi_handle,void * evt_buf,wmi_host_rtt_error_report_event * ev)2450  wmi_extract_rtt_error_report_ev(wmi_unified_t wmi_handle, void *evt_buf,
2451  				wmi_host_rtt_error_report_event *ev)
2452  {
2453  	if (wmi_handle->ops->extract_rtt_error_report_ev)
2454  		return wmi_handle->ops->extract_rtt_error_report_ev(wmi_handle,
2455  			evt_buf, ev);
2456  
2457  	return QDF_STATUS_E_FAILURE;
2458  }
2459  
2460  QDF_STATUS
wmi_extract_chan_stats(wmi_unified_t wmi_handle,void * evt_buf,uint32_t index,wmi_host_chan_stats * chan_stats)2461  wmi_extract_chan_stats(wmi_unified_t wmi_handle, void *evt_buf,
2462  		       uint32_t index, wmi_host_chan_stats *chan_stats)
2463  {
2464  	if (wmi_handle->ops->extract_chan_stats)
2465  		return wmi_handle->ops->extract_chan_stats(wmi_handle,
2466  			evt_buf, index, chan_stats);
2467  
2468  	return QDF_STATUS_E_FAILURE;
2469  }
2470  
wmi_extract_thermal_stats(wmi_unified_t wmi_handle,void * evt_buf,uint32_t * temp,enum thermal_throttle_level * level,uint32_t * therm_throt_levels,struct thermal_throt_level_stats * tt_stats,uint32_t * pdev_id)2471  QDF_STATUS wmi_extract_thermal_stats(wmi_unified_t wmi_handle, void *evt_buf,
2472  				     uint32_t *temp,
2473  				     enum thermal_throttle_level *level,
2474  				     uint32_t *therm_throt_levels,
2475  				     struct thermal_throt_level_stats *tt_stats,
2476  				     uint32_t *pdev_id)
2477  {
2478  	if (wmi_handle->ops->extract_thermal_stats)
2479  		return wmi_handle->ops->extract_thermal_stats(wmi_handle,
2480  			evt_buf, temp, level, therm_throt_levels,
2481  			tt_stats, pdev_id);
2482  
2483  	return QDF_STATUS_E_FAILURE;
2484  }
2485  
2486  QDF_STATUS
wmi_extract_profile_ctx(wmi_unified_t wmi_handle,void * evt_buf,wmi_host_wlan_profile_ctx_t * profile_ctx)2487  wmi_extract_profile_ctx(wmi_unified_t wmi_handle, void *evt_buf,
2488  			wmi_host_wlan_profile_ctx_t *profile_ctx)
2489  {
2490  	if (wmi_handle->ops->extract_profile_ctx)
2491  		return wmi_handle->ops->extract_profile_ctx(wmi_handle,
2492  			evt_buf, profile_ctx);
2493  
2494  	return QDF_STATUS_E_FAILURE;
2495  }
2496  
2497  QDF_STATUS
wmi_extract_thermal_level_stats(wmi_unified_t wmi_handle,void * evt_buf,uint8_t idx,uint32_t * levelcount,uint32_t * dccount)2498  wmi_extract_thermal_level_stats(wmi_unified_t wmi_handle, void *evt_buf,
2499  				uint8_t idx, uint32_t *levelcount,
2500  				uint32_t *dccount)
2501  {
2502  	if (wmi_handle->ops->extract_thermal_level_stats)
2503  		return wmi_handle->ops->extract_thermal_level_stats(wmi_handle,
2504  			evt_buf, idx, levelcount, dccount);
2505  
2506  	return QDF_STATUS_E_FAILURE;
2507  }
2508  
2509  QDF_STATUS
wmi_extract_profile_data(wmi_unified_t wmi_handle,void * evt_buf,uint8_t idx,wmi_host_wlan_profile_t * profile_data)2510  wmi_extract_profile_data(wmi_unified_t wmi_handle, void *evt_buf, uint8_t idx,
2511  			 wmi_host_wlan_profile_t *profile_data)
2512  {
2513  	if (wmi_handle->ops->extract_profile_data)
2514  		return wmi_handle->ops->extract_profile_data(wmi_handle,
2515  			evt_buf, idx, profile_data);
2516  
2517  	return QDF_STATUS_E_FAILURE;
2518  }
2519  
wmi_extract_bss_chan_info_event(wmi_unified_t wmi_handle,void * evt_buf,wmi_host_pdev_bss_chan_info_event * bss_chan_info)2520  QDF_STATUS wmi_extract_bss_chan_info_event(
2521  		wmi_unified_t wmi_handle, void *evt_buf,
2522  		wmi_host_pdev_bss_chan_info_event *bss_chan_info)
2523  {
2524  	if (wmi_handle->ops->extract_bss_chan_info_event)
2525  		return wmi_handle->ops->extract_bss_chan_info_event(wmi_handle,
2526  		evt_buf, bss_chan_info);
2527  
2528  	return QDF_STATUS_E_FAILURE;
2529  }
2530  
2531  QDF_STATUS
wmi_extract_tx_data_traffic_ctrl_ev(wmi_unified_t wmi_handle,void * evt_buf,wmi_host_tx_data_traffic_ctrl_event * ev)2532  wmi_extract_tx_data_traffic_ctrl_ev(wmi_unified_t wmi_handle, void *evt_buf,
2533  				    wmi_host_tx_data_traffic_ctrl_event *ev)
2534  {
2535  	if (wmi_handle->ops->extract_tx_data_traffic_ctrl_ev)
2536  		return wmi_handle->ops->extract_tx_data_traffic_ctrl_ev(
2537  						wmi_handle, evt_buf, ev);
2538  
2539  	return QDF_STATUS_E_FAILURE;
2540  }
2541  
2542  QDF_STATUS
wmi_extract_vdev_extd_stats(wmi_unified_t wmi_handle,void * evt_buf,uint32_t index,wmi_host_vdev_extd_stats * vdev_extd_stats)2543  wmi_extract_vdev_extd_stats(wmi_unified_t wmi_handle, void *evt_buf,
2544  			    uint32_t index,
2545  			    wmi_host_vdev_extd_stats *vdev_extd_stats)
2546  {
2547  	if (wmi_handle->ops->extract_vdev_extd_stats)
2548  		return wmi_handle->ops->extract_vdev_extd_stats(wmi_handle,
2549  				evt_buf, index, vdev_extd_stats);
2550  	return QDF_STATUS_E_FAILURE;
2551  }
2552  
2553  QDF_STATUS
wmi_extract_bcn_stats(wmi_unified_t wmi_handle,void * evt_buf,uint32_t index,wmi_host_bcn_stats * vdev_bcn_stats)2554  wmi_extract_bcn_stats(wmi_unified_t wmi_handle, void *evt_buf,
2555  		      uint32_t index, wmi_host_bcn_stats *vdev_bcn_stats)
2556  {
2557  	if (wmi_handle->ops->extract_bcn_stats)
2558  		return wmi_handle->ops->extract_bcn_stats(wmi_handle,
2559  				evt_buf, index, vdev_bcn_stats);
2560  	return QDF_STATUS_E_FAILURE;
2561  }
2562  
wmi_extract_vdev_nac_rssi_stats(wmi_unified_t wmi_handle,void * evt_buf,struct wmi_host_vdev_nac_rssi_event * vdev_nac_rssi_stats)2563  QDF_STATUS wmi_extract_vdev_nac_rssi_stats(
2564  		wmi_unified_t wmi_handle, void *evt_buf,
2565  		struct wmi_host_vdev_nac_rssi_event *vdev_nac_rssi_stats)
2566  {
2567  	if (wmi_handle->ops->extract_vdev_nac_rssi_stats)
2568  		return wmi_handle->ops->extract_vdev_nac_rssi_stats(wmi_handle,
2569  				evt_buf, vdev_nac_rssi_stats);
2570  
2571  	return QDF_STATUS_E_FAILURE;
2572  }
2573  
wmi_extract_vdev_prb_fils_stats(wmi_unified_t wmi_handle,void * evt_buf,uint32_t index,struct wmi_host_vdev_prb_fils_stats * vdev_prb_fils_stats)2574  QDF_STATUS wmi_extract_vdev_prb_fils_stats(
2575  		wmi_unified_t wmi_handle, void *evt_buf,
2576  		uint32_t index,
2577  		struct wmi_host_vdev_prb_fils_stats *vdev_prb_fils_stats)
2578  {
2579  	if (wmi_handle->ops->extract_vdev_prb_fils_stats)
2580  		return wmi_handle->ops->extract_vdev_prb_fils_stats(wmi_handle,
2581  				evt_buf, index, vdev_prb_fils_stats);
2582  
2583  	return QDF_STATUS_E_FAILURE;
2584  }
2585  
wmi_unified_send_power_dbg_cmd(wmi_unified_t wmi_handle,struct wmi_power_dbg_params * param)2586  QDF_STATUS wmi_unified_send_power_dbg_cmd(wmi_unified_t wmi_handle,
2587  					  struct wmi_power_dbg_params *param)
2588  {
2589  	if (wmi_handle->ops->send_power_dbg_cmd)
2590  		return wmi_handle->ops->send_power_dbg_cmd(wmi_handle,
2591  				  param);
2592  
2593  	return QDF_STATUS_E_FAILURE;
2594  }
2595  
2596  QDF_STATUS
wmi_unified_send_btcoex_wlan_priority_cmd(wmi_unified_t wmi_handle,struct btcoex_cfg_params * param)2597  wmi_unified_send_btcoex_wlan_priority_cmd(wmi_unified_t wmi_handle,
2598  					  struct btcoex_cfg_params *param)
2599  {
2600  	if (wmi_handle->ops->send_btcoex_wlan_priority_cmd)
2601  		return wmi_handle->ops->send_btcoex_wlan_priority_cmd(
2602  						wmi_handle, param);
2603  
2604  	return QDF_STATUS_E_FAILURE;
2605  }
2606  
2607  QDF_STATUS
wmi_unified_send_btcoex_duty_cycle_cmd(wmi_unified_t wmi_handle,struct btcoex_cfg_params * param)2608  wmi_unified_send_btcoex_duty_cycle_cmd(wmi_unified_t wmi_handle,
2609  				       struct btcoex_cfg_params *param)
2610  {
2611  	if (wmi_handle->ops->send_btcoex_duty_cycle_cmd)
2612  		return wmi_handle->ops->send_btcoex_duty_cycle_cmd(
2613  						wmi_handle, param);
2614  
2615  	return QDF_STATUS_E_FAILURE;
2616  }
2617  
2618  QDF_STATUS
wmi_unified_send_egid_info_cmd(wmi_unified_t wmi_handle,struct esl_egid_params * param)2619  wmi_unified_send_egid_info_cmd(wmi_unified_t wmi_handle,
2620  			       struct esl_egid_params *param)
2621  {
2622  	if (wmi_handle->ops->send_egid_info_cmd) {
2623  		return wmi_handle->ops->send_egid_info_cmd(
2624  						wmi_handle, param);
2625  	}
2626  
2627  	return QDF_STATUS_E_FAILURE;
2628  }
2629  
wmi_extract_service_ready_ext(wmi_unified_t wmi_handle,uint8_t * evt_buf,struct wlan_psoc_host_service_ext_param * param)2630  QDF_STATUS wmi_extract_service_ready_ext(
2631  		wmi_unified_t wmi_handle, uint8_t *evt_buf,
2632  		struct wlan_psoc_host_service_ext_param *param)
2633  {
2634  	if (wmi_handle->ops->extract_service_ready_ext)
2635  		return wmi_handle->ops->extract_service_ready_ext(wmi_handle,
2636  				evt_buf, param);
2637  
2638  	return QDF_STATUS_E_FAILURE;
2639  }
2640  
wmi_extract_service_ready_ext2(struct wmi_unified * wmi_handle,uint8_t * evt_buf,struct wlan_psoc_host_service_ext2_param * param)2641  QDF_STATUS wmi_extract_service_ready_ext2(
2642  		struct wmi_unified *wmi_handle, uint8_t *evt_buf,
2643  		struct wlan_psoc_host_service_ext2_param *param)
2644  {
2645  	if (wmi_handle->ops->extract_service_ready_ext2)
2646  		return wmi_handle->ops->extract_service_ready_ext2(wmi_handle,
2647  				evt_buf, param);
2648  
2649  	return QDF_STATUS_E_FAILURE;
2650  }
2651  
wmi_extract_dbs_or_sbs_cap_service_ready_ext2(wmi_unified_t wmi_handle,uint8_t * evt_buf,uint32_t * sbs_lower_band_end_freq)2652  QDF_STATUS wmi_extract_dbs_or_sbs_cap_service_ready_ext2(
2653  			wmi_unified_t wmi_handle,
2654  			uint8_t *evt_buf, uint32_t *sbs_lower_band_end_freq)
2655  {
2656  	if (wmi_handle->ops->extract_dbs_or_sbs_service_ready_ext2)
2657  		return wmi_handle->ops->extract_dbs_or_sbs_service_ready_ext2(
2658  				wmi_handle,
2659  				evt_buf, sbs_lower_band_end_freq);
2660  
2661  	return QDF_STATUS_E_FAILURE;
2662  }
2663  
wmi_extract_sar_cap_service_ready_ext(wmi_unified_t wmi_handle,uint8_t * evt_buf,struct wlan_psoc_host_service_ext_param * ext_param)2664  QDF_STATUS wmi_extract_sar_cap_service_ready_ext(
2665  			wmi_unified_t wmi_handle,
2666  			uint8_t *evt_buf,
2667  			struct wlan_psoc_host_service_ext_param *ext_param)
2668  {
2669  	if (wmi_handle->ops->extract_sar_cap_service_ready_ext)
2670  		return wmi_handle->ops->extract_sar_cap_service_ready_ext(
2671  				wmi_handle,
2672  				evt_buf, ext_param);
2673  
2674  	return QDF_STATUS_E_FAILURE;
2675  }
2676  
wmi_extract_hw_mode_cap_service_ready_ext(wmi_unified_t wmi_handle,uint8_t * evt_buf,uint8_t hw_mode_idx,struct wlan_psoc_host_hw_mode_caps * param)2677  QDF_STATUS wmi_extract_hw_mode_cap_service_ready_ext(
2678  			wmi_unified_t wmi_handle,
2679  			uint8_t *evt_buf, uint8_t hw_mode_idx,
2680  			struct wlan_psoc_host_hw_mode_caps *param)
2681  {
2682  	if (wmi_handle->ops->extract_hw_mode_cap_service_ready_ext)
2683  		return wmi_handle->ops->extract_hw_mode_cap_service_ready_ext(
2684  				wmi_handle,
2685  				evt_buf, hw_mode_idx, param);
2686  
2687  	return QDF_STATUS_E_FAILURE;
2688  }
2689  
wmi_extract_mac_phy_cap_service_ready_ext(wmi_unified_t wmi_handle,uint8_t * evt_buf,uint8_t hw_mode_id,uint8_t phy_id,struct wlan_psoc_host_mac_phy_caps * param)2690  QDF_STATUS wmi_extract_mac_phy_cap_service_ready_ext(
2691  			wmi_unified_t wmi_handle,
2692  			uint8_t *evt_buf,
2693  			uint8_t hw_mode_id,
2694  			uint8_t phy_id,
2695  			struct wlan_psoc_host_mac_phy_caps *param)
2696  {
2697  	if (wmi_handle->ops->extract_mac_phy_cap_service_ready_ext)
2698  		return wmi_handle->ops->extract_mac_phy_cap_service_ready_ext(
2699  				wmi_handle,
2700  				evt_buf, hw_mode_id, phy_id, param);
2701  
2702  	return QDF_STATUS_E_FAILURE;
2703  }
2704  
wmi_extract_mac_phy_cap_service_ready_ext2(wmi_unified_t wmi_handle,uint8_t * evt_buf,uint8_t hw_mode_id,uint8_t phy_id,uint8_t phy_idx,struct wlan_psoc_host_mac_phy_caps_ext2 * mac_phy_cap)2705  QDF_STATUS wmi_extract_mac_phy_cap_service_ready_ext2(
2706  			wmi_unified_t wmi_handle,
2707  			uint8_t *evt_buf,
2708  			uint8_t hw_mode_id,
2709  			uint8_t phy_id,
2710  			uint8_t phy_idx,
2711  			struct wlan_psoc_host_mac_phy_caps_ext2 *mac_phy_cap)
2712  {
2713  	if (wmi_handle->ops->extract_mac_phy_cap_service_ready_ext2)
2714  		return wmi_handle->ops->extract_mac_phy_cap_service_ready_ext2(
2715  				wmi_handle, evt_buf, hw_mode_id, phy_id,
2716  				phy_idx, mac_phy_cap);
2717  
2718  	return QDF_STATUS_E_FAILURE;
2719  }
2720  
wmi_extract_reg_cap_service_ready_ext(wmi_unified_t wmi_handle,uint8_t * evt_buf,uint8_t phy_idx,struct wlan_psoc_host_hal_reg_capabilities_ext * param)2721  QDF_STATUS wmi_extract_reg_cap_service_ready_ext(
2722  			wmi_unified_t wmi_handle,
2723  			uint8_t *evt_buf, uint8_t phy_idx,
2724  			struct wlan_psoc_host_hal_reg_capabilities_ext *param)
2725  {
2726  	if (wmi_handle->ops->extract_reg_cap_service_ready_ext)
2727  		return wmi_handle->ops->extract_reg_cap_service_ready_ext(
2728  				wmi_handle,
2729  				evt_buf, phy_idx, param);
2730  
2731  	return QDF_STATUS_E_FAILURE;
2732  }
2733  
wmi_extract_dbr_ring_cap_service_ready_ext(wmi_unified_t wmi_handle,uint8_t * evt_buf,uint8_t idx,struct wlan_psoc_host_dbr_ring_caps * param)2734  QDF_STATUS wmi_extract_dbr_ring_cap_service_ready_ext(
2735  			wmi_unified_t wmi_handle,
2736  			uint8_t *evt_buf, uint8_t idx,
2737  			struct wlan_psoc_host_dbr_ring_caps *param)
2738  {
2739  	if (wmi_handle->ops->extract_dbr_ring_cap_service_ready_ext)
2740  		return wmi_handle->ops->extract_dbr_ring_cap_service_ready_ext(
2741  				wmi_handle,
2742  				evt_buf, idx, param);
2743  
2744  	return QDF_STATUS_E_FAILURE;
2745  }
2746  
wmi_extract_dbr_ring_cap_service_ready_ext2(wmi_unified_t wmi_handle,uint8_t * evt_buf,uint8_t idx,struct wlan_psoc_host_dbr_ring_caps * param)2747  QDF_STATUS wmi_extract_dbr_ring_cap_service_ready_ext2(
2748  			wmi_unified_t wmi_handle,
2749  			uint8_t *evt_buf, uint8_t idx,
2750  			struct wlan_psoc_host_dbr_ring_caps *param)
2751  {
2752  	if (wmi_handle->ops->extract_dbr_ring_cap_service_ready_ext2)
2753  		return wmi_handle->ops->extract_dbr_ring_cap_service_ready_ext2(
2754  				wmi_handle,
2755  				evt_buf, idx, param);
2756  
2757  	return QDF_STATUS_E_FAILURE;
2758  }
2759  
wmi_extract_scan_radio_cap_service_ready_ext2(wmi_unified_t wmi_handle,uint8_t * evt_buf,uint8_t idx,struct wlan_psoc_host_scan_radio_caps * param)2760  QDF_STATUS wmi_extract_scan_radio_cap_service_ready_ext2(
2761  			wmi_unified_t wmi_handle,
2762  			uint8_t *evt_buf, uint8_t idx,
2763  			struct wlan_psoc_host_scan_radio_caps *param)
2764  {
2765  	if (wmi_handle->ops->extract_scan_radio_cap_service_ready_ext2)
2766  		return wmi_handle->ops->
2767  		       extract_scan_radio_cap_service_ready_ext2(
2768  				wmi_handle,
2769  				evt_buf, idx, param);
2770  
2771  	return QDF_STATUS_E_FAILURE;
2772  }
2773  
wmi_extract_msdu_idx_qtype_map_service_ready_ext2(wmi_unified_t wmi_handle,uint8_t * evt_buf,uint8_t idx,uint8_t * msdu_qtype)2774  QDF_STATUS wmi_extract_msdu_idx_qtype_map_service_ready_ext2(
2775  			wmi_unified_t wmi_handle,
2776  			uint8_t *evt_buf, uint8_t idx,
2777  			uint8_t *msdu_qtype)
2778  {
2779  	if (wmi_handle->ops->extract_msdu_idx_qtype_map_service_ready_ext2)
2780  		return wmi_handle->ops->
2781  		       extract_msdu_idx_qtype_map_service_ready_ext2(
2782  				wmi_handle,
2783  				evt_buf, idx, msdu_qtype);
2784  
2785  	return QDF_STATUS_E_FAILURE;
2786  }
2787  
wmi_extract_sw_cal_ver_ext2(wmi_unified_t wmi_handle,uint8_t * event,struct wmi_host_sw_cal_ver * cal)2788  QDF_STATUS wmi_extract_sw_cal_ver_ext2(wmi_unified_t wmi_handle,
2789  				       uint8_t *event,
2790  				       struct wmi_host_sw_cal_ver *cal)
2791  {
2792  	if (wmi_handle->ops->extract_sw_cal_ver_ext2)
2793  		return wmi_handle->ops->extract_sw_cal_ver_ext2(wmi_handle,
2794  								event,
2795  								cal);
2796  
2797  	return QDF_STATUS_E_FAILURE;
2798  }
2799  
2800  #ifdef WLAN_CONV_SPECTRAL_ENABLE
wmi_extract_pdev_sscan_fw_cmd_fixed_param(wmi_unified_t wmi_handle,uint8_t * evt_buf,struct spectral_startscan_resp_params * param)2801  QDF_STATUS wmi_extract_pdev_sscan_fw_cmd_fixed_param(
2802  			wmi_unified_t wmi_handle,
2803  			uint8_t *evt_buf,
2804  			struct spectral_startscan_resp_params *param)
2805  {
2806  	if (wmi_handle->ops->extract_pdev_sscan_fw_cmd_fixed_param)
2807  		return wmi_handle->ops->extract_pdev_sscan_fw_cmd_fixed_param(
2808  				wmi_handle,
2809  				evt_buf, param);
2810  
2811  	return QDF_STATUS_E_FAILURE;
2812  }
2813  
wmi_extract_pdev_sscan_fft_bin_index(wmi_unified_t wmi_handle,uint8_t * evt_buf,struct spectral_fft_bin_markers_160_165mhz * param)2814  QDF_STATUS wmi_extract_pdev_sscan_fft_bin_index(
2815  			wmi_unified_t wmi_handle,
2816  			uint8_t *evt_buf,
2817  			struct spectral_fft_bin_markers_160_165mhz *param)
2818  {
2819  	if (wmi_handle->ops->extract_pdev_sscan_fft_bin_index)
2820  		return wmi_handle->ops->extract_pdev_sscan_fft_bin_index(
2821  				wmi_handle,
2822  				evt_buf, param);
2823  
2824  	return QDF_STATUS_E_FAILURE;
2825  }
2826  
wmi_extract_pdev_spectral_session_chan_info(wmi_unified_t wmi_handle,void * event,struct spectral_session_chan_info * chan_info)2827  QDF_STATUS wmi_extract_pdev_spectral_session_chan_info(
2828  			wmi_unified_t wmi_handle, void *event,
2829  			struct spectral_session_chan_info *chan_info)
2830  {
2831  	if (wmi_handle->ops->extract_pdev_spectral_session_chan_info)
2832  		return wmi_handle->ops->extract_pdev_spectral_session_chan_info(
2833  				wmi_handle,
2834  				event, chan_info);
2835  
2836  	return QDF_STATUS_E_FAILURE;
2837  }
2838  
wmi_extract_pdev_spectral_session_detector_info(wmi_unified_t wmi_handle,void * event,struct spectral_session_det_info * det_info,uint8_t idx)2839  QDF_STATUS wmi_extract_pdev_spectral_session_detector_info(
2840  		wmi_unified_t wmi_handle, void *event,
2841  		struct spectral_session_det_info *det_info, uint8_t idx)
2842  {
2843  	if (wmi_handle->ops->extract_pdev_spectral_session_detector_info)
2844  		return wmi_handle->ops->
2845  			extract_pdev_spectral_session_detector_info(
2846  				wmi_handle, event,
2847  				det_info, idx);
2848  
2849  	return QDF_STATUS_E_FAILURE;
2850  }
2851  
wmi_extract_spectral_caps_fixed_param(wmi_unified_t wmi_handle,void * event,struct spectral_capabilities_event_params * param)2852  QDF_STATUS wmi_extract_spectral_caps_fixed_param(
2853  		wmi_unified_t wmi_handle, void *event,
2854  		struct spectral_capabilities_event_params *param)
2855  {
2856  	if (wmi_handle->ops->extract_spectral_caps_fixed_param)
2857  		return wmi_handle->ops->extract_spectral_caps_fixed_param(
2858  					wmi_handle, event, param);
2859  
2860  	return QDF_STATUS_E_FAILURE;
2861  }
2862  
wmi_extract_spectral_scan_bw_caps(wmi_unified_t wmi_handle,void * event,struct spectral_scan_bw_capabilities * bw_caps)2863  QDF_STATUS wmi_extract_spectral_scan_bw_caps(
2864  		wmi_unified_t wmi_handle, void *event,
2865  		struct spectral_scan_bw_capabilities *bw_caps)
2866  {
2867  	if (wmi_handle->ops->extract_spectral_scan_bw_caps)
2868  		return wmi_handle->ops->extract_spectral_scan_bw_caps(
2869  					wmi_handle, event, bw_caps);
2870  
2871  	return QDF_STATUS_E_FAILURE;
2872  }
2873  
wmi_extract_spectral_fft_size_caps(wmi_unified_t wmi_handle,void * event,struct spectral_fft_size_capabilities * fft_size_caps)2874  QDF_STATUS wmi_extract_spectral_fft_size_caps(
2875  		wmi_unified_t wmi_handle, void *event,
2876  		struct spectral_fft_size_capabilities *fft_size_caps)
2877  {
2878  	if (wmi_handle->ops->extract_spectral_fft_size_caps)
2879  		return wmi_handle->ops->extract_spectral_fft_size_caps(
2880  					wmi_handle, event, fft_size_caps);
2881  
2882  	return QDF_STATUS_E_FAILURE;
2883  }
2884  #endif /* WLAN_CONV_SPECTRAL_ENABLE */
2885  
wmi_extract_spectral_scaling_params_service_ready_ext(wmi_unified_t wmi_handle,uint8_t * evt_buf,uint8_t idx,struct wlan_psoc_host_spectral_scaling_params * param)2886  QDF_STATUS wmi_extract_spectral_scaling_params_service_ready_ext(
2887  			wmi_unified_t wmi_handle,
2888  			uint8_t *evt_buf, uint8_t idx,
2889  			struct wlan_psoc_host_spectral_scaling_params *param)
2890  {
2891  	if (wmi_handle->ops->extract_scaling_params_service_ready_ext)
2892  		return wmi_handle->ops->extract_scaling_params_service_ready_ext
2893  				(wmi_handle, evt_buf, idx, param);
2894  
2895  	return QDF_STATUS_E_FAILURE;
2896  }
2897  
2898  #ifdef WLAN_RCC_ENHANCED_AOA_SUPPORT
wmi_extract_aoa_caps_service_ready_ext2(wmi_unified_t wmi_handle,uint8_t * evt_buf,struct wlan_psoc_host_rcc_enh_aoa_caps_ext2 * aoa_cap)2899  QDF_STATUS wmi_extract_aoa_caps_service_ready_ext2(
2900  			wmi_unified_t wmi_handle, uint8_t *evt_buf,
2901  			struct wlan_psoc_host_rcc_enh_aoa_caps_ext2 *aoa_cap)
2902  {
2903  	if (wmi_handle->ops->extract_aoa_caps_service_ready_ext2)
2904  		return wmi_handle->ops->extract_aoa_caps_service_ready_ext2
2905  				(wmi_handle, evt_buf, aoa_cap);
2906  
2907  	return QDF_STATUS_E_FAILURE;
2908  }
2909  #endif /* WLAN_RCC_ENHANCED_AOA_SUPPORT */
2910  
wmi_extract_pdev_utf_event(wmi_unified_t wmi_handle,uint8_t * evt_buf,struct wmi_host_pdev_utf_event * param)2911  QDF_STATUS wmi_extract_pdev_utf_event(wmi_unified_t wmi_handle,
2912  				      uint8_t *evt_buf,
2913  				      struct wmi_host_pdev_utf_event *param)
2914  {
2915  	if (wmi_handle->ops->extract_pdev_utf_event)
2916  		return wmi_handle->ops->extract_pdev_utf_event(
2917  				wmi_handle,
2918  				evt_buf, param);
2919  
2920  	return QDF_STATUS_E_FAILURE;
2921  }
2922  
wmi_extract_pdev_qvit_event(wmi_unified_t wmi_handle,uint8_t * evt_buf,struct wmi_host_pdev_qvit_event * param)2923  QDF_STATUS wmi_extract_pdev_qvit_event(wmi_unified_t wmi_handle,
2924  				       uint8_t *evt_buf,
2925  				       struct wmi_host_pdev_qvit_event *param)
2926  {
2927  	if (wmi_handle->ops->extract_pdev_qvit_event)
2928  		return wmi_handle->ops->extract_pdev_qvit_event(
2929  				wmi_handle,
2930  				evt_buf, param);
2931  
2932  	return QDF_STATUS_E_FAILURE;
2933  }
2934  
2935  QDF_STATUS
wmi_unified_send_coex_ver_cfg_cmd(wmi_unified_t wmi_handle,coex_ver_cfg_t * param)2936  wmi_unified_send_coex_ver_cfg_cmd(wmi_unified_t wmi_handle,
2937  				  coex_ver_cfg_t *param)
2938  {
2939  	if (wmi_handle->ops->send_coex_ver_cfg_cmd)
2940  		return wmi_handle->ops->send_coex_ver_cfg_cmd(wmi_handle,
2941  			param);
2942  
2943  	return QDF_STATUS_E_FAILURE;
2944  }
2945  
2946  QDF_STATUS
wmi_unified_send_coex_config_cmd(wmi_unified_t wmi_handle,struct coex_config_params * param)2947  wmi_unified_send_coex_config_cmd(wmi_unified_t wmi_handle,
2948  				 struct coex_config_params *param)
2949  {
2950  	if (wmi_handle->ops->send_coex_config_cmd)
2951  		return wmi_handle->ops->send_coex_config_cmd(wmi_handle,
2952  			param);
2953  
2954  	return QDF_STATUS_E_FAILURE;
2955  }
2956  
2957  QDF_STATUS
wmi_unified_send_coex_multi_config_cmd(wmi_unified_t wmi_handle,struct coex_multi_config * param)2958  wmi_unified_send_coex_multi_config_cmd(wmi_unified_t wmi_handle,
2959  				       struct coex_multi_config *param)
2960  {
2961  	if (wmi_handle->ops->send_coex_multi_config_cmd)
2962  		return wmi_handle->ops->send_coex_multi_config_cmd(wmi_handle,
2963  								   param);
2964  
2965  	return QDF_STATUS_E_FAILURE;
2966  }
2967  
2968  #ifdef WLAN_FEATURE_DBAM_CONFIG
2969  QDF_STATUS
wmi_unified_send_dbam_config_cmd(wmi_unified_t wmi_handle,struct coex_dbam_config_params * param)2970  wmi_unified_send_dbam_config_cmd(wmi_unified_t wmi_handle,
2971  				 struct coex_dbam_config_params *param)
2972  {
2973  	if (wmi_handle->ops->send_dbam_config_cmd)
2974  		return wmi_handle->ops->send_dbam_config_cmd(wmi_handle,
2975  							     param);
2976  
2977  	return QDF_STATUS_E_FAILURE;
2978  }
2979  
2980  QDF_STATUS
wmi_extract_dbam_config_response(wmi_unified_t wmi_handle,void * evt_buf,struct coex_dbam_config_resp * resp)2981  wmi_extract_dbam_config_response(wmi_unified_t wmi_handle, void *evt_buf,
2982  				 struct coex_dbam_config_resp *resp)
2983  {
2984  	if (wmi_handle->ops->extract_dbam_config_resp_event)
2985  		return wmi_handle->ops->extract_dbam_config_resp_event(
2986  					wmi_handle, evt_buf, resp);
2987  
2988  	return QDF_STATUS_E_FAILURE;
2989  }
2990  #endif
2991  
2992  QDF_STATUS
wmi_unified_send_request_get_rcpi_cmd(wmi_unified_t wmi_handle,struct rcpi_req * get_rcpi_param)2993  wmi_unified_send_request_get_rcpi_cmd(wmi_unified_t wmi_handle,
2994  				      struct rcpi_req *get_rcpi_param)
2995  {
2996  	if (wmi_handle->ops->send_get_rcpi_cmd)
2997  		return wmi_handle->ops->send_get_rcpi_cmd(wmi_handle,
2998  			   get_rcpi_param);
2999  
3000  	return QDF_STATUS_E_FAILURE;
3001  }
3002  
3003  QDF_STATUS
wmi_extract_rcpi_response_event(wmi_unified_t wmi_handle,void * evt_buf,struct rcpi_res * res)3004  wmi_extract_rcpi_response_event(wmi_unified_t wmi_handle, void *evt_buf,
3005  				struct rcpi_res *res)
3006  {
3007  	struct wmi_ops *ops = wmi_handle->ops;
3008  
3009  	if (ops->extract_rcpi_response_event)
3010  		return ops->extract_rcpi_response_event(wmi_handle, evt_buf,
3011  							res);
3012  
3013  	return QDF_STATUS_E_FAILURE;
3014  }
3015  
3016  QDF_STATUS
wmi_unified_dfs_phyerr_offload_en_cmd(wmi_unified_t wmi_handle,uint32_t pdev_id)3017  wmi_unified_dfs_phyerr_offload_en_cmd(wmi_unified_t wmi_handle,
3018  				      uint32_t pdev_id)
3019  {
3020  	if (wmi_handle->ops->send_dfs_phyerr_offload_en_cmd)
3021  		return wmi_handle->ops->send_dfs_phyerr_offload_en_cmd(
3022  				wmi_handle, pdev_id);
3023  
3024  	return QDF_STATUS_E_FAILURE;
3025  }
3026  
3027  #ifdef QCA_SUPPORT_AGILE_DFS
3028  QDF_STATUS
wmi_unified_send_vdev_adfs_ch_cfg_cmd(wmi_unified_t wmi_handle,struct vdev_adfs_ch_cfg_params * param)3029  wmi_unified_send_vdev_adfs_ch_cfg_cmd(wmi_unified_t wmi_handle,
3030  				      struct vdev_adfs_ch_cfg_params *param)
3031  {
3032  	if (wmi_handle->ops->send_adfs_ch_cfg_cmd)
3033  		return wmi_handle->ops->send_adfs_ch_cfg_cmd(
3034  				wmi_handle,
3035  				param);
3036  	return QDF_STATUS_E_FAILURE;
3037  }
3038  
3039  QDF_STATUS
wmi_unified_send_vdev_adfs_ocac_abort_cmd(wmi_unified_t wmi_handle,struct vdev_adfs_abort_params * param)3040  wmi_unified_send_vdev_adfs_ocac_abort_cmd(wmi_unified_t wmi_handle,
3041  					  struct vdev_adfs_abort_params *param)
3042  {
3043  	if (wmi_handle->ops->send_adfs_ocac_abort_cmd)
3044  		return wmi_handle->ops->send_adfs_ocac_abort_cmd(
3045  				wmi_handle,
3046  				param);
3047  	return QDF_STATUS_E_FAILURE;
3048  }
3049  #endif
3050  
3051  QDF_STATUS
wmi_unified_dfs_phyerr_offload_dis_cmd(wmi_unified_t wmi_handle,uint32_t pdev_id)3052  wmi_unified_dfs_phyerr_offload_dis_cmd(wmi_unified_t wmi_handle,
3053  				       uint32_t pdev_id)
3054  {
3055  	if (wmi_handle->ops->send_dfs_phyerr_offload_dis_cmd)
3056  		return wmi_handle->ops->send_dfs_phyerr_offload_dis_cmd(
3057  				wmi_handle, pdev_id);
3058  
3059  	return QDF_STATUS_E_FAILURE;
3060  }
3061  
3062  #ifdef WLAN_SUPPORT_RF_CHARACTERIZATION
wmi_extract_num_rf_characterization_entries(wmi_unified_t wmi_hdl,uint8_t * evt_buf,uint32_t * num_rf_characterization_entries)3063  QDF_STATUS wmi_extract_num_rf_characterization_entries(wmi_unified_t wmi_hdl,
3064  				uint8_t *evt_buf,
3065  				uint32_t *num_rf_characterization_entries)
3066  {
3067  	if (wmi_hdl->ops->extract_num_rf_characterization_entries)
3068  		return wmi_hdl->ops->extract_num_rf_characterization_entries(wmi_hdl,
3069  				evt_buf, num_rf_characterization_entries);
3070  
3071  	return QDF_STATUS_E_FAILURE;
3072  }
3073  
wmi_extract_rf_characterization_entries(wmi_unified_t wmi_hdl,uint8_t * evt_buf,uint32_t num_rf_characterization_entries,struct wmi_host_rf_characterization_event_param * rf_characterization_entries)3074  QDF_STATUS wmi_extract_rf_characterization_entries(wmi_unified_t wmi_hdl,
3075  	uint8_t *evt_buf,
3076  	uint32_t num_rf_characterization_entries,
3077  	struct wmi_host_rf_characterization_event_param *rf_characterization_entries)
3078  {
3079  	if (wmi_hdl->ops->extract_rf_characterization_entries)
3080  		return wmi_hdl->ops->extract_rf_characterization_entries(wmi_hdl,
3081  				evt_buf, num_rf_characterization_entries,
3082  				rf_characterization_entries);
3083  
3084  	return QDF_STATUS_E_FAILURE;
3085  }
3086  #endif
3087  
wmi_extract_chainmask_tables(wmi_unified_t wmi_handle,uint8_t * evt_buf,struct wlan_psoc_host_chainmask_table * chainmask_table)3088  QDF_STATUS wmi_extract_chainmask_tables(
3089  		wmi_unified_t wmi_handle, uint8_t *evt_buf,
3090  		struct wlan_psoc_host_chainmask_table *chainmask_table)
3091  {
3092  	if (wmi_handle->ops->extract_chainmask_tables)
3093  		return wmi_handle->ops->extract_chainmask_tables(wmi_handle,
3094  				evt_buf, chainmask_table);
3095  
3096  	return QDF_STATUS_E_FAILURE;
3097  }
3098  
wmi_unified_set_country_cmd_send(wmi_unified_t wmi_handle,struct set_country * param)3099  QDF_STATUS wmi_unified_set_country_cmd_send(wmi_unified_t wmi_handle,
3100  					    struct set_country *param)
3101  {
3102  	if (wmi_handle->ops->send_set_country_cmd)
3103  		return wmi_handle->ops->send_set_country_cmd(wmi_handle,
3104  				  param);
3105  
3106  	return QDF_STATUS_E_FAILURE;
3107  }
3108  
3109  #ifdef WLAN_FEATURE_ACTION_OUI
3110  QDF_STATUS
wmi_unified_send_action_oui_cmd(wmi_unified_t wmi_handle,struct action_oui_request * req)3111  wmi_unified_send_action_oui_cmd(wmi_unified_t wmi_handle,
3112  				struct action_oui_request *req)
3113  {
3114  	if (wmi_handle->ops->send_action_oui_cmd)
3115  		return wmi_handle->ops->send_action_oui_cmd(wmi_handle,
3116  							    req);
3117  
3118  	return QDF_STATUS_E_FAILURE;
3119  }
3120  #endif
3121  
wmi_unified_send_dump_wds_table_cmd(wmi_unified_t wmi_handle)3122  QDF_STATUS wmi_unified_send_dump_wds_table_cmd(wmi_unified_t wmi_handle)
3123  {
3124  	if (wmi_handle->ops->send_wds_entry_list_cmd)
3125  		return wmi_handle->ops->send_wds_entry_list_cmd(wmi_handle);
3126  
3127  	return QDF_STATUS_E_FAILURE;
3128  }
3129  
3130  QDF_STATUS
wmi_extract_wds_entry(wmi_unified_t wmi_handle,uint8_t * evt_buf,struct wdsentry * wds_entry,u_int32_t idx)3131  wmi_extract_wds_entry(wmi_unified_t wmi_handle, uint8_t *evt_buf,
3132  		      struct wdsentry *wds_entry,
3133  		      u_int32_t idx)
3134  {
3135  	if (wmi_handle->ops->extract_wds_entry)
3136  		return wmi_handle->ops->extract_wds_entry(wmi_handle,
3137  						evt_buf, wds_entry, idx);
3138  
3139  	return QDF_STATUS_E_FAILURE;
3140  }
3141  qdf_export_symbol(wmi_extract_wds_entry);
3142  
wmi_unified_send_obss_detection_cfg_cmd(wmi_unified_t wmi_handle,struct wmi_obss_detection_cfg_param * obss_cfg_param)3143  QDF_STATUS wmi_unified_send_obss_detection_cfg_cmd(
3144  		wmi_unified_t wmi_handle,
3145  		struct wmi_obss_detection_cfg_param *obss_cfg_param)
3146  {
3147  	if (wmi_handle->ops->send_obss_detection_cfg_cmd)
3148  		return wmi_handle->ops->send_obss_detection_cfg_cmd(wmi_handle,
3149  				obss_cfg_param);
3150  
3151  	return QDF_STATUS_E_FAILURE;
3152  }
3153  
wmi_unified_extract_obss_detection_info(wmi_unified_t wmi_handle,uint8_t * data,struct wmi_obss_detect_info * info)3154  QDF_STATUS wmi_unified_extract_obss_detection_info(
3155  			wmi_unified_t wmi_handle,
3156  			uint8_t *data,
3157  			struct wmi_obss_detect_info *info)
3158  {
3159  	if (wmi_handle->ops->extract_obss_detection_info)
3160  		return wmi_handle->ops->extract_obss_detection_info(data, info);
3161  
3162  	return QDF_STATUS_E_FAILURE;
3163  }
3164  
3165  #if defined(WLAN_SUPPORT_FILS) || defined(CONFIG_BAND_6GHZ)
3166  QDF_STATUS
wmi_unified_vdev_fils_enable_cmd_send(struct wmi_unified * wmi_handle,struct config_fils_params * param)3167  wmi_unified_vdev_fils_enable_cmd_send(struct wmi_unified *wmi_handle,
3168  				      struct config_fils_params *param)
3169  {
3170  	if (wmi_handle->ops->send_vdev_fils_enable_cmd)
3171  		return wmi_handle->ops->send_vdev_fils_enable_cmd(
3172  							wmi_handle, param);
3173  
3174  	return QDF_STATUS_E_FAILURE;
3175  }
3176  #endif
3177  
3178  #ifdef WLAN_SUPPORT_GREEN_AP
wmi_extract_green_ap_egap_status_info(wmi_unified_t wmi_handle,uint8_t * evt_buf,struct wlan_green_ap_egap_status_info * egap_status_info_params)3179  QDF_STATUS wmi_extract_green_ap_egap_status_info(
3180  	wmi_unified_t wmi_handle, uint8_t *evt_buf,
3181  	struct wlan_green_ap_egap_status_info *egap_status_info_params)
3182  {
3183  	if (wmi_handle->ops->extract_green_ap_egap_status_info)
3184  		return wmi_handle->ops->extract_green_ap_egap_status_info(
3185  				evt_buf, egap_status_info_params);
3186  
3187  	return QDF_STATUS_E_FAILURE;
3188  }
3189  #endif
3190  
wmi_get_ch_width_from_phy_mode(wmi_unified_t wmi_handle,WMI_HOST_WLAN_PHY_MODE phymode)3191  wmi_host_channel_width wmi_get_ch_width_from_phy_mode(
3192  	wmi_unified_t wmi_handle, WMI_HOST_WLAN_PHY_MODE phymode)
3193  {
3194  	/*
3195  	 * this API does translation between host only strcutres, hence
3196  	 * does not need separate TLV, non-TLV definitions
3197  	 */
3198  
3199  	if (phymode >= WMI_HOST_MODE_11A && phymode < WMI_HOST_MODE_MAX)
3200  		return mode_to_width[phymode];
3201  	else
3202  		return WMI_HOST_CHAN_WIDTH_20;
3203  }
3204  
3205  #ifdef QCA_SUPPORT_CP_STATS
wmi_extract_cca_stats(wmi_unified_t wmi_handle,void * evt_buf,struct wmi_host_congestion_stats * stats)3206  QDF_STATUS wmi_extract_cca_stats(wmi_unified_t wmi_handle, void *evt_buf,
3207  				 struct wmi_host_congestion_stats *stats)
3208  {
3209  	if (wmi_handle->ops->extract_cca_stats)
3210  		return wmi_handle->ops->extract_cca_stats(wmi_handle, evt_buf,
3211  							  stats);
3212  
3213  	return QDF_STATUS_E_FAILURE;
3214  }
3215  #endif /* QCA_SUPPORT_CP_STATS */
3216  
3217  #if defined(WLAN_DFS_PARTIAL_OFFLOAD) && defined(HOST_DFS_SPOOF_TEST)
3218  QDF_STATUS
wmi_unified_dfs_send_avg_params_cmd(wmi_unified_t wmi_handle,struct dfs_radar_found_params * params)3219  wmi_unified_dfs_send_avg_params_cmd(wmi_unified_t wmi_handle,
3220  				    struct dfs_radar_found_params *params)
3221  {
3222  	if (wmi_handle->ops->send_dfs_average_radar_params_cmd)
3223  		return wmi_handle->ops->send_dfs_average_radar_params_cmd(
3224  			wmi_handle, params);
3225  
3226  	return QDF_STATUS_E_FAILURE;
3227  }
3228  
3229  QDF_STATUS
wmi_extract_dfs_status_from_fw(wmi_unified_t wmi_handle,void * evt_buf,uint32_t * dfs_status_check)3230  wmi_extract_dfs_status_from_fw(wmi_unified_t wmi_handle, void *evt_buf,
3231  			       uint32_t *dfs_status_check)
3232  {
3233  	if (wmi_handle->ops->extract_dfs_status_from_fw)
3234  		return wmi_handle->ops->extract_dfs_status_from_fw(wmi_handle,
3235  				evt_buf, dfs_status_check);
3236  
3237  	return QDF_STATUS_E_FAILURE;
3238  }
3239  #endif
3240  
3241  #ifdef OL_ATH_SMART_LOGGING
wmi_unified_send_smart_logging_enable_cmd(wmi_unified_t wmi_handle,uint32_t param)3242  QDF_STATUS wmi_unified_send_smart_logging_enable_cmd(wmi_unified_t wmi_handle,
3243  						     uint32_t param)
3244  {
3245  	if (wmi_handle->ops->send_smart_logging_enable_cmd)
3246  		return wmi_handle->ops->send_smart_logging_enable_cmd(
3247  				wmi_handle,
3248  				param);
3249  
3250  	return QDF_STATUS_E_FAILURE;
3251  }
3252  
3253  QDF_STATUS
wmi_unified_send_smart_logging_fatal_cmd(wmi_unified_t wmi_handle,struct wmi_debug_fatal_events * param)3254  wmi_unified_send_smart_logging_fatal_cmd(wmi_unified_t wmi_handle,
3255  					 struct wmi_debug_fatal_events *param)
3256  {
3257  	if (wmi_handle->ops->send_smart_logging_fatal_cmd)
3258  		return wmi_handle->ops->send_smart_logging_fatal_cmd(wmi_handle,
3259  			param);
3260  
3261  	return QDF_STATUS_E_FAILURE;
3262  }
3263  
wmi_extract_smartlog_ev(wmi_unified_t wmi_handle,void * evt_buf,struct wmi_debug_fatal_events * ev)3264  QDF_STATUS wmi_extract_smartlog_ev(wmi_unified_t wmi_handle,
3265  				   void *evt_buf,
3266  				   struct wmi_debug_fatal_events *ev)
3267  {
3268  	if (wmi_handle->ops->extract_smartlog_event)
3269  		return wmi_handle->ops->extract_smartlog_event(
3270  				wmi_handle, evt_buf, ev);
3271  
3272  	return QDF_STATUS_E_FAILURE;
3273  }
3274  
3275  qdf_export_symbol(wmi_extract_smartlog_ev);
3276  #endif /* OL_ATH_SMART_LOGGING */
3277  
3278  QDF_STATUS
wmi_unified_send_roam_scan_stats_cmd(wmi_unified_t wmi_handle,struct wmi_roam_scan_stats_req * params)3279  wmi_unified_send_roam_scan_stats_cmd(wmi_unified_t wmi_handle,
3280  				     struct wmi_roam_scan_stats_req *params)
3281  {
3282  	if (wmi_handle->ops->send_roam_scan_stats_cmd)
3283  		return wmi_handle->ops->send_roam_scan_stats_cmd(wmi_handle,
3284  								 params);
3285  
3286  	return QDF_STATUS_E_FAILURE;
3287  }
3288  
3289  #ifdef CRYPTO_SET_KEY_CONVERGED
wlan_crypto_cipher_to_wmi_cipher(enum wlan_crypto_cipher_type crypto_cipher)3290  uint8_t wlan_crypto_cipher_to_wmi_cipher(
3291  		enum wlan_crypto_cipher_type crypto_cipher)
3292  {
3293  	switch (crypto_cipher) {
3294  	case WLAN_CRYPTO_CIPHER_NONE:
3295  		return WMI_CIPHER_NONE;
3296  	case WLAN_CRYPTO_CIPHER_WEP:
3297  	case WLAN_CRYPTO_CIPHER_WEP_40:
3298  	case WLAN_CRYPTO_CIPHER_WEP_104:
3299  		return WMI_CIPHER_WEP;
3300  	case WLAN_CRYPTO_CIPHER_TKIP:
3301  		return WMI_CIPHER_TKIP;
3302  	case WLAN_CRYPTO_CIPHER_WAPI_SMS4:
3303  	case WLAN_CRYPTO_CIPHER_WAPI_GCM4:
3304  		return WMI_CIPHER_WAPI;
3305  	case WLAN_CRYPTO_CIPHER_AES_CCM:
3306  	case WLAN_CRYPTO_CIPHER_AES_CCM_256:
3307  		return WMI_CIPHER_AES_CCM;
3308  	case WLAN_CRYPTO_CIPHER_AES_CMAC:
3309  		return WMI_CIPHER_AES_CMAC;
3310  	case WLAN_CRYPTO_CIPHER_AES_GMAC:
3311  	case WLAN_CRYPTO_CIPHER_AES_GMAC_256:
3312  		return WMI_CIPHER_AES_GMAC;
3313  	case WLAN_CRYPTO_CIPHER_AES_GCM:
3314  	case WLAN_CRYPTO_CIPHER_AES_GCM_256:
3315  		return WMI_CIPHER_AES_GCM;
3316  	default:
3317  		return 0;
3318  	}
3319  }
3320  
wlan_crypto_cipher_to_cdp_sec_type(enum wlan_crypto_cipher_type crypto_cipher)3321  enum cdp_sec_type wlan_crypto_cipher_to_cdp_sec_type(
3322  		enum wlan_crypto_cipher_type crypto_cipher)
3323  {
3324  	switch (crypto_cipher) {
3325  	case WLAN_CRYPTO_CIPHER_NONE:
3326  		return cdp_sec_type_none;
3327  	case WLAN_CRYPTO_CIPHER_WEP:
3328  	case WLAN_CRYPTO_CIPHER_WEP_40:
3329  	case WLAN_CRYPTO_CIPHER_WEP_104:
3330  		return cdp_sec_type_wep104;
3331  	case WLAN_CRYPTO_CIPHER_TKIP:
3332  		return cdp_sec_type_tkip;
3333  	case WLAN_CRYPTO_CIPHER_WAPI_SMS4:
3334  	case WLAN_CRYPTO_CIPHER_WAPI_GCM4:
3335  		return cdp_sec_type_wapi;
3336  	case WLAN_CRYPTO_CIPHER_AES_CCM:
3337  		return cdp_sec_type_aes_ccmp;
3338  	case WLAN_CRYPTO_CIPHER_AES_CCM_256:
3339  		return cdp_sec_type_aes_ccmp_256;
3340  	case WLAN_CRYPTO_CIPHER_AES_GCM:
3341  		return cdp_sec_type_aes_gcmp;
3342  	case WLAN_CRYPTO_CIPHER_AES_GCM_256:
3343  		return cdp_sec_type_aes_gcmp_256;
3344  	default:
3345  		return cdp_sec_type_none;
3346  	}
3347  }
3348  #endif /* CRYPTO_SET_KEY_CONVERGED */
3349  
3350  QDF_STATUS
wmi_extract_roam_scan_stats_res_evt(wmi_unified_t wmi,void * evt_buf,uint32_t * vdev_id,struct wmi_roam_scan_stats_res ** res_param)3351  wmi_extract_roam_scan_stats_res_evt(wmi_unified_t wmi, void *evt_buf,
3352  				    uint32_t *vdev_id,
3353  				    struct wmi_roam_scan_stats_res **res_param)
3354  {
3355  	if (wmi->ops->extract_roam_scan_stats_res_evt)
3356  		return wmi->ops->extract_roam_scan_stats_res_evt(wmi,
3357  							evt_buf,
3358  							vdev_id, res_param);
3359  
3360  	return QDF_STATUS_E_FAILURE;
3361  }
3362  
3363  QDF_STATUS
wmi_extract_offload_bcn_tx_status_evt(wmi_unified_t wmi_handle,void * evt_buf,uint32_t * vdev_id,uint32_t * tx_status)3364  wmi_extract_offload_bcn_tx_status_evt(wmi_unified_t wmi_handle, void *evt_buf,
3365  				      uint32_t *vdev_id, uint32_t *tx_status)
3366  {
3367  	if (wmi_handle->ops->extract_offload_bcn_tx_status_evt)
3368  		return wmi_handle->ops->extract_offload_bcn_tx_status_evt(
3369  						wmi_handle, evt_buf,
3370  						vdev_id, tx_status);
3371  
3372  	return QDF_STATUS_E_FAILURE;
3373  }
3374  
3375  #ifdef OBSS_PD
wmi_unified_send_obss_spatial_reuse_set_cmd(wmi_unified_t wmi_handle,struct wmi_host_obss_spatial_reuse_set_param * obss_spatial_reuse_param)3376  QDF_STATUS wmi_unified_send_obss_spatial_reuse_set_cmd(
3377  	wmi_unified_t wmi_handle,
3378  	struct wmi_host_obss_spatial_reuse_set_param *obss_spatial_reuse_param)
3379  {
3380  	if (wmi_handle->ops->send_obss_spatial_reuse_set)
3381  		return wmi_handle->ops->send_obss_spatial_reuse_set(wmi_handle,
3382  				obss_spatial_reuse_param);
3383  
3384  	return QDF_STATUS_E_FAILURE;
3385  }
3386  
3387  QDF_STATUS
wmi_unified_send_obss_spatial_reuse_set_def_thresh_cmd(wmi_unified_t wmi_handle,struct wmi_host_obss_spatial_reuse_set_def_thresh * thresh)3388  wmi_unified_send_obss_spatial_reuse_set_def_thresh_cmd(
3389  		wmi_unified_t wmi_handle,
3390  		struct wmi_host_obss_spatial_reuse_set_def_thresh *thresh)
3391  {
3392  	if (wmi_handle->ops->send_obss_spatial_reuse_set_def_thresh)
3393  		return wmi_handle->ops->send_obss_spatial_reuse_set_def_thresh(
3394  						wmi_handle, thresh);
3395  
3396  	return QDF_STATUS_E_FAILURE;
3397  }
3398  
wmi_unified_send_self_srg_bss_color_bitmap_set_cmd(wmi_unified_t wmi_handle,uint32_t bitmap_0,uint32_t bitmap_1,uint8_t pdev_id)3399  QDF_STATUS wmi_unified_send_self_srg_bss_color_bitmap_set_cmd(
3400  	wmi_unified_t wmi_handle,  uint32_t bitmap_0,
3401  	uint32_t bitmap_1, uint8_t pdev_id)
3402  {
3403  	if (wmi_handle->ops->send_self_srg_bss_color_bitmap_set)
3404  		return wmi_handle->ops->send_self_srg_bss_color_bitmap_set(
3405  				wmi_handle, bitmap_0, bitmap_1, pdev_id);
3406  
3407  	return QDF_STATUS_E_FAILURE;
3408  }
3409  
wmi_unified_send_self_srg_partial_bssid_bitmap_set_cmd(wmi_unified_t wmi_handle,uint32_t bitmap_0,uint32_t bitmap_1,uint8_t pdev_id)3410  QDF_STATUS wmi_unified_send_self_srg_partial_bssid_bitmap_set_cmd(
3411  	wmi_unified_t wmi_handle,  uint32_t bitmap_0,
3412  	uint32_t bitmap_1, uint8_t pdev_id)
3413  {
3414  	if (wmi_handle->ops->send_self_srg_partial_bssid_bitmap_set)
3415  		return wmi_handle->ops->send_self_srg_partial_bssid_bitmap_set(
3416  				wmi_handle, bitmap_0, bitmap_1, pdev_id);
3417  
3418  	return QDF_STATUS_E_FAILURE;
3419  }
3420  
wmi_unified_send_self_srg_obss_color_enable_bitmap_cmd(wmi_unified_t wmi_handle,uint32_t bitmap_0,uint32_t bitmap_1,uint8_t pdev_id)3421  QDF_STATUS wmi_unified_send_self_srg_obss_color_enable_bitmap_cmd(
3422  	wmi_unified_t wmi_handle,  uint32_t bitmap_0,
3423  	uint32_t bitmap_1, uint8_t pdev_id)
3424  {
3425  	if (wmi_handle->ops->send_self_srg_obss_color_enable_bitmap)
3426  		return wmi_handle->ops->
3427  			send_self_srg_obss_color_enable_bitmap(
3428  				wmi_handle, bitmap_0, bitmap_1, pdev_id);
3429  
3430  	return QDF_STATUS_E_FAILURE;
3431  }
3432  
wmi_unified_send_self_srg_obss_bssid_enable_bitmap_cmd(wmi_unified_t wmi_handle,uint32_t bitmap_0,uint32_t bitmap_1,uint8_t pdev_id)3433  QDF_STATUS wmi_unified_send_self_srg_obss_bssid_enable_bitmap_cmd(
3434  	wmi_unified_t wmi_handle,  uint32_t bitmap_0,
3435  	uint32_t bitmap_1, uint8_t pdev_id)
3436  {
3437  	if (wmi_handle->ops->send_self_srg_obss_bssid_enable_bitmap)
3438  		return wmi_handle->ops->
3439  			send_self_srg_obss_bssid_enable_bitmap(
3440  				wmi_handle, bitmap_0, bitmap_1, pdev_id);
3441  
3442  	return QDF_STATUS_E_FAILURE;
3443  }
3444  
wmi_unified_send_self_non_srg_obss_color_enable_bitmap_cmd(wmi_unified_t wmi_handle,uint32_t bitmap_0,uint32_t bitmap_1,uint8_t pdev_id)3445  QDF_STATUS wmi_unified_send_self_non_srg_obss_color_enable_bitmap_cmd(
3446  	wmi_unified_t wmi_handle,  uint32_t bitmap_0,
3447  	uint32_t bitmap_1, uint8_t pdev_id)
3448  {
3449  	if (wmi_handle->ops->send_self_non_srg_obss_color_enable_bitmap)
3450  		return wmi_handle->ops->
3451  			send_self_non_srg_obss_color_enable_bitmap(
3452  				wmi_handle, bitmap_0, bitmap_1, pdev_id);
3453  
3454  	return QDF_STATUS_E_FAILURE;
3455  }
3456  
wmi_unified_send_self_non_srg_obss_bssid_enable_bitmap_cmd(wmi_unified_t wmi_handle,uint32_t bitmap_0,uint32_t bitmap_1,uint8_t pdev_id)3457  QDF_STATUS wmi_unified_send_self_non_srg_obss_bssid_enable_bitmap_cmd(
3458  	wmi_unified_t wmi_handle,  uint32_t bitmap_0,
3459  	uint32_t bitmap_1, uint8_t pdev_id)
3460  {
3461  	if (wmi_handle->ops->send_self_non_srg_obss_bssid_enable_bitmap)
3462  		return wmi_handle->ops->
3463  			send_self_non_srg_obss_bssid_enable_bitmap(
3464  				wmi_handle, bitmap_0, bitmap_1, pdev_id);
3465  
3466  	return QDF_STATUS_E_FAILURE;
3467  }
3468  #endif
3469  
wmi_convert_pdev_id_host_to_target(wmi_unified_t wmi_handle,uint32_t host_pdev_id,uint32_t * target_pdev_id)3470  QDF_STATUS wmi_convert_pdev_id_host_to_target(wmi_unified_t wmi_handle,
3471  					      uint32_t host_pdev_id,
3472  					      uint32_t *target_pdev_id)
3473  {
3474  	if (wmi_handle->ops->convert_pdev_id_host_to_target) {
3475  		*target_pdev_id =
3476  			wmi_handle->ops->convert_pdev_id_host_to_target(
3477  					wmi_handle,
3478  					host_pdev_id);
3479  		return QDF_STATUS_SUCCESS;
3480  	}
3481  
3482  	return QDF_STATUS_E_FAILURE;
3483  }
3484  
3485  #ifndef CNSS_GENL
wmi_convert_pdev_id_target_to_host(wmi_unified_t wmi_handle,uint32_t target_pdev_id,uint32_t * host_pdev_id)3486  QDF_STATUS wmi_convert_pdev_id_target_to_host(wmi_unified_t wmi_handle,
3487  					      uint32_t target_pdev_id,
3488  					      uint32_t *host_pdev_id)
3489  {
3490  	if (wmi_handle->ops->convert_pdev_id_target_to_host) {
3491  		*host_pdev_id =
3492  			wmi_handle->ops->convert_pdev_id_target_to_host(
3493  					wmi_handle,
3494  					target_pdev_id);
3495  		return QDF_STATUS_SUCCESS;
3496  	}
3497  
3498  	return QDF_STATUS_E_FAILURE;
3499  }
3500  
3501  #ifdef WLAN_RTT_MEASUREMENT_NOTIFICATION
wmi_unified_extract_measreq_chan_info(wmi_unified_t wmi_handle,uint32_t data_len,uint8_t * data,struct rtt_channel_info * chinfo)3502  QDF_STATUS wmi_unified_extract_measreq_chan_info(
3503  		wmi_unified_t wmi_handle, uint32_t data_len, uint8_t *data,
3504  		struct rtt_channel_info *chinfo)
3505  {
3506  	if (wmi_handle->ops->extract_measreq_chan_info)
3507  		return wmi_handle->ops->extract_measreq_chan_info(
3508  								data_len,
3509  								data, chinfo);
3510  
3511  	return QDF_STATUS_E_FAILURE;
3512  }
3513  #endif /* WLAN_RTT_MEASUREMENT_NOTIFICATION */
3514  #endif
3515  
3516  QDF_STATUS
wmi_unified_send_bss_color_change_enable_cmd(wmi_unified_t wmi_handle,uint32_t vdev_id,bool enable)3517  wmi_unified_send_bss_color_change_enable_cmd(wmi_unified_t wmi_handle,
3518  					     uint32_t vdev_id,
3519  					     bool enable)
3520  {
3521  	if (wmi_handle->ops->send_bss_color_change_enable_cmd)
3522  		return wmi_handle->ops->send_bss_color_change_enable_cmd(
3523  				wmi_handle, vdev_id, enable);
3524  
3525  	return QDF_STATUS_E_FAILURE;
3526  }
3527  
wmi_unified_send_obss_color_collision_cfg_cmd(wmi_unified_t wmi_handle,struct wmi_obss_color_collision_cfg_param * cfg)3528  QDF_STATUS wmi_unified_send_obss_color_collision_cfg_cmd(
3529  		wmi_unified_t wmi_handle,
3530  		struct wmi_obss_color_collision_cfg_param *cfg)
3531  {
3532  	if (wmi_handle->ops->send_obss_color_collision_cfg_cmd)
3533  		return wmi_handle->ops->send_obss_color_collision_cfg_cmd(
3534  				wmi_handle, cfg);
3535  
3536  	return QDF_STATUS_E_FAILURE;
3537  }
3538  
wmi_unified_extract_obss_color_collision_info(wmi_unified_t wmi_handle,uint8_t * data,struct wmi_obss_color_collision_info * info)3539  QDF_STATUS wmi_unified_extract_obss_color_collision_info(
3540  		wmi_unified_t wmi_handle,
3541  		uint8_t *data, struct wmi_obss_color_collision_info *info)
3542  {
3543  	if (wmi_handle->ops->extract_obss_color_collision_info)
3544  		return wmi_handle->ops->extract_obss_color_collision_info(data,
3545  									  info);
3546  
3547  	return QDF_STATUS_E_FAILURE;
3548  }
3549  
wmi_unified_send_mws_coex_req_cmd(struct wmi_unified * wmi_handle,uint32_t vdev_id,uint32_t cmd_id)3550  QDF_STATUS wmi_unified_send_mws_coex_req_cmd(struct wmi_unified *wmi_handle,
3551  					     uint32_t vdev_id,
3552  					     uint32_t cmd_id)
3553  {
3554  
3555  	if (wmi_handle->ops->send_mws_coex_status_req_cmd)
3556  		return wmi_handle->ops->send_mws_coex_status_req_cmd(wmi_handle,
3557  				vdev_id, cmd_id);
3558  
3559  	return QDF_STATUS_E_FAILURE;
3560  }
3561  
3562  #ifdef WIFI_POS_CONVERGED
3563  QDF_STATUS
wmi_extract_oem_response_param(wmi_unified_t wmi_hdl,void * resp_buf,struct wmi_oem_response_param * oem_resp_param)3564  wmi_extract_oem_response_param(wmi_unified_t wmi_hdl, void *resp_buf,
3565  			       struct wmi_oem_response_param *oem_resp_param)
3566  {
3567  	if (wmi_hdl->ops->extract_oem_response_param)
3568  		return wmi_hdl->ops->extract_oem_response_param(wmi_hdl,
3569  								resp_buf,
3570  								oem_resp_param);
3571  
3572  	return QDF_STATUS_E_FAILURE;
3573  }
3574  #endif /* WIFI_POS_CONVERGED */
3575  
3576  #if defined(WIFI_POS_CONVERGED) && defined(WLAN_FEATURE_RTT_11AZ_SUPPORT)
3577  QDF_STATUS
wmi_extract_pasn_peer_create_req(wmi_unified_t wmi,void * evt_buf,struct wifi_pos_pasn_peer_data * dst)3578  wmi_extract_pasn_peer_create_req(wmi_unified_t wmi, void *evt_buf,
3579  				 struct wifi_pos_pasn_peer_data *dst)
3580  {
3581  	if (wmi->ops->extract_pasn_peer_create_req_event)
3582  		return wmi->ops->extract_pasn_peer_create_req_event(wmi,
3583  								    evt_buf,
3584  								    dst);
3585  
3586  	return QDF_STATUS_E_FAILURE;
3587  }
3588  
3589  QDF_STATUS
wmi_extract_pasn_peer_delete_req(wmi_unified_t wmi,void * evt_buf,struct wifi_pos_pasn_peer_data * dst)3590  wmi_extract_pasn_peer_delete_req(wmi_unified_t wmi, void *evt_buf,
3591  				 struct wifi_pos_pasn_peer_data *dst)
3592  {
3593  	if (wmi->ops->extract_pasn_peer_delete_req_event)
3594  		return wmi->ops->extract_pasn_peer_delete_req_event(wmi,
3595  								    evt_buf,
3596  								    dst);
3597  
3598  	return QDF_STATUS_E_FAILURE;
3599  }
3600  
3601  QDF_STATUS
wmi_send_rtt_pasn_auth_status_cmd(wmi_unified_t wmi,struct wlan_pasn_auth_status * data)3602  wmi_send_rtt_pasn_auth_status_cmd(wmi_unified_t wmi,
3603  				  struct wlan_pasn_auth_status *data)
3604  {
3605  	if (wmi->ops->send_rtt_pasn_auth_status_cmd)
3606  		return wmi->ops->send_rtt_pasn_auth_status_cmd(wmi, data);
3607  
3608  	return QDF_STATUS_E_FAILURE;
3609  }
3610  
3611  QDF_STATUS
wmi_send_rtt_pasn_deauth_cmd(wmi_unified_t wmi,struct qdf_mac_addr * peer_mac)3612  wmi_send_rtt_pasn_deauth_cmd(wmi_unified_t wmi, struct qdf_mac_addr *peer_mac)
3613  {
3614  	if (wmi->ops->send_rtt_pasn_deauth_cmd)
3615  		return wmi->ops->send_rtt_pasn_deauth_cmd(wmi, peer_mac);
3616  
3617  	return QDF_STATUS_E_FAILURE;
3618  }
3619  #endif
3620  
wmi_unified_extract_hw_mode_resp(wmi_unified_t wmi,void * evt_buf,uint32_t * cmd_status)3621  QDF_STATUS wmi_unified_extract_hw_mode_resp(wmi_unified_t wmi,
3622  					    void *evt_buf,
3623  					    uint32_t *cmd_status)
3624  {
3625  	if (wmi->ops->extract_hw_mode_resp_event)
3626  		return wmi->ops->extract_hw_mode_resp_event(wmi,
3627  							    evt_buf,
3628  							    cmd_status);
3629  
3630  	return QDF_STATUS_E_FAILURE;
3631  }
3632  
wmi_unified_extract_rf_path_resp(wmi_unified_t wmi,void * evt_buf,uint32_t * cmd_status)3633  QDF_STATUS wmi_unified_extract_rf_path_resp(wmi_unified_t wmi,
3634  					    void *evt_buf,
3635  					    uint32_t *cmd_status)
3636  {
3637  	if (wmi->ops->extract_rf_path_resp)
3638  		return wmi->ops->extract_rf_path_resp(wmi,
3639  						      evt_buf,
3640  						      cmd_status);
3641  
3642  	return QDF_STATUS_E_FAILURE;
3643  }
3644  
3645  #ifdef FEATURE_ANI_LEVEL_REQUEST
wmi_unified_ani_level_cmd_send(wmi_unified_t wmi_handle,uint32_t * freqs,uint8_t num_freqs)3646  QDF_STATUS wmi_unified_ani_level_cmd_send(wmi_unified_t wmi_handle,
3647  					  uint32_t *freqs,
3648  					  uint8_t num_freqs)
3649  {
3650  	if (wmi_handle->ops->send_ani_level_cmd)
3651  		return wmi_handle->ops->send_ani_level_cmd(wmi_handle, freqs,
3652  							   num_freqs);
3653  
3654  	return QDF_STATUS_E_FAILURE;
3655  }
3656  
wmi_unified_extract_ani_level(wmi_unified_t wmi_handle,uint8_t * data,struct wmi_host_ani_level_event ** info,uint32_t * num_channels)3657  QDF_STATUS wmi_unified_extract_ani_level(wmi_unified_t wmi_handle,
3658  					 uint8_t *data,
3659  					 struct wmi_host_ani_level_event **info,
3660  					 uint32_t *num_channels)
3661  {
3662  	if (wmi_handle->ops->extract_ani_level)
3663  		return wmi_handle->ops->extract_ani_level(data, info,
3664  							  num_channels);
3665  
3666  	return QDF_STATUS_E_FAILURE;
3667  }
3668  #endif /* FEATURE_ANI_LEVEL_REQUEST */
3669  
3670  QDF_STATUS
wmi_unified_extract_roam_trigger_stats(wmi_unified_t wmi,void * evt_buf,struct wmi_roam_trigger_info * trig,uint8_t idx,uint8_t btm_idx)3671  wmi_unified_extract_roam_trigger_stats(wmi_unified_t wmi,
3672  				       void *evt_buf,
3673  				       struct wmi_roam_trigger_info *trig,
3674  				       uint8_t idx, uint8_t btm_idx)
3675  {
3676  	if (wmi->ops->extract_roam_trigger_stats)
3677  		return wmi->ops->extract_roam_trigger_stats(wmi, evt_buf, trig,
3678  							    idx, btm_idx);
3679  
3680  	return QDF_STATUS_E_FAILURE;
3681  }
3682  
3683  QDF_STATUS
wmi_unified_extract_roam_scan_stats(wmi_unified_t wmi,void * evt_buf,struct wmi_roam_scan_data * dst,uint8_t idx,uint8_t chan_idx,uint8_t ap_idx)3684  wmi_unified_extract_roam_scan_stats(wmi_unified_t wmi, void *evt_buf,
3685  				    struct wmi_roam_scan_data *dst, uint8_t idx,
3686  				    uint8_t chan_idx, uint8_t ap_idx)
3687  {
3688  	if (wmi->ops->extract_roam_scan_stats)
3689  		return wmi->ops->extract_roam_scan_stats(wmi, evt_buf, dst,
3690  							 idx, chan_idx, ap_idx);
3691  
3692  	return QDF_STATUS_E_FAILURE;
3693  }
3694  
3695  #ifdef WLAN_FEATURE_PKT_CAPTURE
3696  QDF_STATUS
wmi_unified_extract_vdev_mgmt_offload_event(wmi_unified_t wmi,void * evt_buf,struct mgmt_offload_event_params * params)3697  wmi_unified_extract_vdev_mgmt_offload_event(
3698  				wmi_unified_t wmi, void *evt_buf,
3699  				struct mgmt_offload_event_params *params)
3700  {
3701  	if (wmi->ops->extract_vdev_mgmt_offload_event)
3702  		return wmi->ops->extract_vdev_mgmt_offload_event(wmi, evt_buf,
3703  								 params);
3704  
3705  	return QDF_STATUS_E_FAILURE;
3706  }
3707  #endif /* WLAN_FEATURE_PKT_CAPTURE */
3708  
3709  #ifdef WLAN_FEATURE_PKT_CAPTURE_V2
3710  QDF_STATUS
wmi_unified_extract_smart_monitor_event(wmi_unified_t wmi,void * evt_buf,struct smu_event_params * params)3711  wmi_unified_extract_smart_monitor_event(
3712  				wmi_unified_t wmi, void *evt_buf,
3713  				struct smu_event_params *params)
3714  {
3715  	if (wmi->ops->extract_smart_monitor_event)
3716  		return wmi->ops->extract_smart_monitor_event(wmi, evt_buf,
3717  							     params);
3718  
3719  	return QDF_STATUS_E_FAILURE;
3720  }
3721  #endif /* WLAN_FEATURE_PKT_CAPTURE_V2 */
3722  
3723  QDF_STATUS
wmi_unified_extract_roam_result_stats(wmi_unified_t wmi,void * buf,struct wmi_roam_result * dst,uint8_t idx)3724  wmi_unified_extract_roam_result_stats(wmi_unified_t wmi, void *buf,
3725  				      struct wmi_roam_result *dst,
3726  				      uint8_t idx)
3727  {
3728  	if (wmi->ops->extract_roam_result_stats)
3729  		return wmi->ops->extract_roam_result_stats(wmi, buf, dst, idx);
3730  
3731  	return QDF_STATUS_E_FAILURE;
3732  }
3733  
3734  QDF_STATUS
wmi_unified_extract_roam_11kv_stats(wmi_unified_t wmi,void * evt_buf,struct wmi_neighbor_report_data * dst,uint8_t idx,uint8_t rpt_idx)3735  wmi_unified_extract_roam_11kv_stats(wmi_unified_t wmi, void *evt_buf,
3736  				    struct wmi_neighbor_report_data *dst,
3737  				    uint8_t idx, uint8_t rpt_idx)
3738  {
3739  	if (wmi->ops->extract_roam_11kv_stats)
3740  		return wmi->ops->extract_roam_11kv_stats(wmi, evt_buf, dst, idx,
3741  							 rpt_idx);
3742  
3743  	return QDF_STATUS_E_FAILURE;
3744  }
3745  
3746  #ifdef FEATURE_WLAN_TIME_SYNC_FTM
wmi_unified_send_wlan_time_sync_ftm_trigger(wmi_unified_t wmi_handle,uint32_t vdev_id,bool burst_mode)3747  QDF_STATUS wmi_unified_send_wlan_time_sync_ftm_trigger(wmi_unified_t wmi_handle,
3748  						       uint32_t vdev_id,
3749  						       bool burst_mode)
3750  {
3751  	if (wmi_handle->ops->send_wlan_time_sync_ftm_trigger_cmd)
3752  		return wmi_handle->ops->send_wlan_time_sync_ftm_trigger_cmd
3753  				(wmi_handle, vdev_id, burst_mode);
3754  
3755  	return QDF_STATUS_E_FAILURE;
3756  }
3757  
wmi_unified_send_wlan_time_sync_qtime(wmi_unified_t wmi_handle,uint32_t vdev_id,uint64_t lpass_ts)3758  QDF_STATUS wmi_unified_send_wlan_time_sync_qtime(wmi_unified_t wmi_handle,
3759  						 uint32_t vdev_id,
3760  						 uint64_t lpass_ts)
3761  {
3762  	if (wmi_handle->ops->send_wlan_ts_qtime_cmd)
3763  		return wmi_handle->ops->send_wlan_ts_qtime_cmd(wmi_handle,
3764  					vdev_id, lpass_ts);
3765  
3766  	return QDF_STATUS_E_FAILURE;
3767  }
3768  
wmi_unified_extract_time_sync_ftm_start_stop_params(wmi_unified_t wmi_handle,void * evt_buf,struct ftm_time_sync_start_stop_params * param)3769  QDF_STATUS wmi_unified_extract_time_sync_ftm_start_stop_params(
3770  				wmi_unified_t wmi_handle, void *evt_buf,
3771  				struct ftm_time_sync_start_stop_params *param)
3772  {
3773  	if (wmi_handle->ops->extract_time_sync_ftm_start_stop_event)
3774  		return
3775  		wmi_handle->ops->extract_time_sync_ftm_start_stop_event(
3776  						wmi_handle, evt_buf, param);
3777  
3778  	return QDF_STATUS_E_FAILURE;
3779  }
3780  
wmi_unified_extract_time_sync_ftm_offset(wmi_unified_t wmi_handle,void * evt_buf,struct ftm_time_sync_offset * param)3781  QDF_STATUS wmi_unified_extract_time_sync_ftm_offset(
3782  			wmi_unified_t wmi_handle, void *evt_buf,
3783  			struct ftm_time_sync_offset *param)
3784  {
3785  	if (wmi_handle->ops->extract_time_sync_ftm_offset_event)
3786  		return
3787  		wmi_handle->ops->extract_time_sync_ftm_offset_event(
3788  						wmi_handle, evt_buf, param);
3789  
3790  	return QDF_STATUS_E_FAILURE;
3791  }
3792  #endif /* FEATURE_WLAN_TIME_SYNC_FTM */
3793  
3794  QDF_STATUS
wmi_unified_send_injector_frame_config_cmd(wmi_unified_t wmi_handle,struct wmi_host_injector_frame_params * param)3795  wmi_unified_send_injector_frame_config_cmd(wmi_unified_t wmi_handle,
3796  				 struct wmi_host_injector_frame_params *param)
3797  {
3798  	if (wmi_handle->ops->send_injector_config_cmd) {
3799  		return wmi_handle->ops->send_injector_config_cmd(wmi_handle,
3800  			param);
3801  	}
3802  
3803  	return QDF_STATUS_E_FAILURE;
3804  }
3805  
wmi_unified_send_cp_stats_cmd(wmi_unified_t wmi_handle,void * buf_ptr,uint32_t buf_len)3806  QDF_STATUS wmi_unified_send_cp_stats_cmd(wmi_unified_t wmi_handle,
3807  					 void *buf_ptr, uint32_t buf_len)
3808  {
3809  	if (wmi_handle->ops->send_cp_stats_cmd)
3810  		return wmi_handle->ops->send_cp_stats_cmd(wmi_handle, buf_ptr,
3811  							  buf_len);
3812  
3813  	return QDF_STATUS_E_FAILURE;
3814  }
3815  
wmi_unified_send_halphy_stats_cmd(wmi_unified_t wmi_handle,void * buf_ptr,uint32_t buf_len)3816  QDF_STATUS wmi_unified_send_halphy_stats_cmd(wmi_unified_t wmi_handle,
3817  					     void *buf_ptr, uint32_t buf_len)
3818  {
3819  	if (wmi_handle->ops->send_halphy_stats_cmd)
3820  		return wmi_handle->ops->send_halphy_stats_cmd(wmi_handle,
3821  							      buf_ptr,
3822  							      buf_len);
3823  
3824  	return QDF_STATUS_E_FAILURE;
3825  }
3826  
3827  QDF_STATUS
wmi_unified_extract_cp_stats_more_pending(wmi_unified_t wmi_handle,void * evt_buf,uint32_t * more_flag)3828  wmi_unified_extract_cp_stats_more_pending(wmi_unified_t wmi_handle,
3829  					  void *evt_buf, uint32_t *more_flag)
3830  {
3831  	if (wmi_handle->ops->extract_cp_stats_more_pending)
3832  		return wmi_handle->ops->extract_cp_stats_more_pending(wmi_handle,
3833  								      evt_buf,
3834  								      more_flag);
3835  
3836  	return QDF_STATUS_E_FAILURE;
3837  }
3838  
3839  QDF_STATUS
wmi_unified_extract_halphy_stats_end_of_event(wmi_unified_t wmi_handle,void * evt_buf,uint32_t * end_of_event_flag)3840  wmi_unified_extract_halphy_stats_end_of_event(wmi_unified_t wmi_handle,
3841  					      void *evt_buf,
3842  					      uint32_t *end_of_event_flag)
3843  {
3844  	if (wmi_handle->ops->extract_halphy_stats_end_of_event)
3845  		return
3846  		wmi_handle->ops->extract_halphy_stats_end_of_event(wmi_handle,
3847  							evt_buf,
3848  							end_of_event_flag);
3849  
3850  	return QDF_STATUS_E_FAILURE;
3851  }
3852  
3853  QDF_STATUS
wmi_unified_extract_halphy_stats_event_count(wmi_unified_t wmi_handle,void * evt_buf,uint32_t * event_count_flag)3854  wmi_unified_extract_halphy_stats_event_count(wmi_unified_t wmi_handle,
3855  					     void *evt_buf,
3856  					     uint32_t *event_count_flag)
3857  {
3858  	if (wmi_handle->ops->extract_halphy_stats_event_count)
3859  		return
3860  		wmi_handle->ops->extract_halphy_stats_event_count(wmi_handle,
3861  							evt_buf,
3862  							event_count_flag);
3863  
3864  	return QDF_STATUS_E_FAILURE;
3865  }
3866  
wmi_unified_send_vdev_tsf_tstamp_action_cmd(wmi_unified_t wmi_hdl,uint8_t vdev_id)3867  QDF_STATUS wmi_unified_send_vdev_tsf_tstamp_action_cmd(wmi_unified_t wmi_hdl,
3868  						       uint8_t vdev_id)
3869  {
3870  	wmi_unified_t wmi_handle = wmi_hdl;
3871  
3872  	if (wmi_handle->ops->send_vdev_tsf_tstamp_action_cmd)
3873  		return wmi_handle->ops->send_vdev_tsf_tstamp_action_cmd(
3874  						wmi_handle, vdev_id);
3875  
3876  	return QDF_STATUS_E_FAILURE;
3877  }
3878  
wmi_extract_vdev_tsf_report_event(wmi_unified_t wmi_hdl,uint8_t * evt_buf,struct wmi_host_tsf_event * param)3879  QDF_STATUS wmi_extract_vdev_tsf_report_event(wmi_unified_t wmi_hdl,
3880  					     uint8_t *evt_buf,
3881  					     struct wmi_host_tsf_event *param)
3882  {
3883  	wmi_unified_t wmi_handle = wmi_hdl;
3884  
3885  	if (wmi_handle->ops->extract_vdev_tsf_report_event)
3886  		return wmi_handle->ops->extract_vdev_tsf_report_event(
3887  						wmi_handle, evt_buf, param);
3888  
3889  	return QDF_STATUS_E_FAILURE;
3890  }
3891  
wmi_extract_pdev_csa_switch_count_status(wmi_unified_t wmi_handle,void * evt_buf,struct pdev_csa_switch_count_status * param)3892  QDF_STATUS wmi_extract_pdev_csa_switch_count_status(
3893  		wmi_unified_t wmi_handle,
3894  		void *evt_buf,
3895  		struct pdev_csa_switch_count_status *param)
3896  {
3897  	if (wmi_handle->ops->extract_pdev_csa_switch_count_status)
3898  		return wmi_handle->ops->extract_pdev_csa_switch_count_status(
3899  				wmi_handle,
3900  				evt_buf,
3901  				param);
3902  
3903  	return QDF_STATUS_E_FAILURE;
3904  }
3905  
wmi_unified_send_set_tpc_power_cmd(wmi_unified_t wmi_handle,uint8_t vdev_id,struct reg_tpc_power_info * param)3906  QDF_STATUS wmi_unified_send_set_tpc_power_cmd(wmi_unified_t wmi_handle,
3907  					      uint8_t vdev_id,
3908  					      struct reg_tpc_power_info *param)
3909  {
3910  	if (wmi_handle->ops->send_set_tpc_power_cmd)
3911  		return wmi_handle->ops->send_set_tpc_power_cmd(wmi_handle,
3912  								   vdev_id,
3913  								   param);
3914  
3915  	return QDF_STATUS_E_FAILURE;
3916  }
3917  
3918  #ifdef CONFIG_AFC_SUPPORT
3919  QDF_STATUS
wmi_unified_send_afc_cmd(wmi_unified_t wmi_handle,uint8_t pdev_id,struct reg_afc_resp_rx_ind_info * param)3920  wmi_unified_send_afc_cmd(wmi_unified_t wmi_handle, uint8_t pdev_id,
3921  			 struct reg_afc_resp_rx_ind_info *param)
3922  {
3923  	if (wmi_handle->ops->send_afc_cmd)
3924  		return wmi_handle->ops->send_afc_cmd(wmi_handle,
3925  						     pdev_id,
3926  						     param);
3927  
3928  	return QDF_STATUS_E_FAILURE;
3929  }
3930  #endif
3931  
3932  QDF_STATUS
wmi_extract_dpd_status_ev_param(wmi_unified_t wmi_handle,void * evt_buf,struct wmi_host_pdev_get_dpd_status_event * param)3933  wmi_extract_dpd_status_ev_param(wmi_unified_t wmi_handle,
3934  				void *evt_buf,
3935  				struct wmi_host_pdev_get_dpd_status_event *param)
3936  {
3937  	if (wmi_handle->ops->extract_dpd_status_ev_param)
3938  		return wmi_handle->ops->extract_dpd_status_ev_param(
3939  				wmi_handle, evt_buf, param);
3940  
3941  	return QDF_STATUS_E_FAILURE;
3942  }
3943  
3944  QDF_STATUS
wmi_extract_halphy_cal_status_ev_param(wmi_unified_t wmi_handle,void * evt_buf,struct wmi_host_pdev_get_halphy_cal_status_event * param)3945  wmi_extract_halphy_cal_status_ev_param(wmi_unified_t wmi_handle,
3946  				       void *evt_buf,
3947  				       struct wmi_host_pdev_get_halphy_cal_status_event *param)
3948  {
3949  	if (wmi_handle->ops->extract_halphy_cal_status_ev_param)
3950  		return wmi_handle->ops->extract_halphy_cal_status_ev_param(
3951  				wmi_handle, evt_buf, param);
3952  
3953  	return QDF_STATUS_E_FAILURE;
3954  }
3955  
3956  QDF_STATUS
wmi_extract_halphy_cal_ev_param(wmi_unified_t wmi_handle,void * evt_buf,struct wmi_host_pdev_set_halphy_cal_event * param)3957  wmi_extract_halphy_cal_ev_param(wmi_unified_t wmi_handle,
3958  				void *evt_buf,
3959  				struct wmi_host_pdev_set_halphy_cal_event *param)
3960  {
3961  	if (wmi_handle->ops->extract_halphy_cal_ev_param)
3962  		return wmi_handle->ops->extract_halphy_cal_ev_param(
3963  			wmi_handle, evt_buf, param);
3964  
3965  	return QDF_STATUS_E_FAILURE;
3966  }
3967  
3968  QDF_STATUS
wmi_unified_send_set_halphy_cal(wmi_unified_t wmi_handle,struct wmi_host_send_set_halphy_cal_info * param)3969  wmi_unified_send_set_halphy_cal(wmi_unified_t wmi_handle,
3970  				struct wmi_host_send_set_halphy_cal_info *param)
3971  {
3972  	if (wmi_handle->ops->send_set_halphy_cal)
3973  		return wmi_handle->ops->send_set_halphy_cal(wmi_handle, param);
3974  
3975  	return QDF_STATUS_E_FAILURE;
3976  }
3977  
3978  #ifdef FEATURE_MEC_OFFLOAD
3979  QDF_STATUS
wmi_unified_pdev_set_mec_timer(struct wmi_unified * wmi_handle,struct set_mec_timer_params * param)3980  wmi_unified_pdev_set_mec_timer(struct wmi_unified *wmi_handle,
3981  			       struct set_mec_timer_params *param)
3982  {
3983  	if (wmi_handle->ops->send_pdev_set_mec_timer_cmd)
3984  		return wmi_handle->ops->send_pdev_set_mec_timer_cmd(wmi_handle,
3985  								    param);
3986  
3987  	return QDF_STATUS_E_FAILURE;
3988  }
3989  #endif
3990  
3991  #ifdef WLAN_FEATURE_DYNAMIC_MAC_ADDR_UPDATE
wmi_unified_send_set_mac_addr(struct wmi_unified * wmi_handle,struct set_mac_addr_params * params)3992  QDF_STATUS wmi_unified_send_set_mac_addr(struct wmi_unified *wmi_handle,
3993  					 struct set_mac_addr_params *params)
3994  {
3995  	if (wmi_handle->ops->send_set_mac_address_cmd)
3996  		return wmi_handle->ops->send_set_mac_address_cmd(wmi_handle,
3997  								 params);
3998  	return QDF_STATUS_E_FAILURE;
3999  }
4000  
wmi_extract_update_mac_address_event(wmi_unified_t wmi_handle,void * evt_buf,uint8_t * vdev_id,uint8_t * status)4001  QDF_STATUS wmi_extract_update_mac_address_event(wmi_unified_t wmi_handle,
4002  						void *evt_buf, uint8_t *vdev_id,
4003  						uint8_t *status)
4004  {
4005  	if (wmi_handle->ops->extract_update_mac_address_event)
4006  		return wmi_handle->ops->extract_update_mac_address_event(
4007  					wmi_handle, evt_buf, vdev_id, status);
4008  
4009  	return QDF_STATUS_E_FAILURE;
4010  }
4011  #endif
4012  
4013  #ifdef WLAN_FEATURE_11BE_MLO
wmi_extract_quiet_offload_event(struct wmi_unified * wmi_handle,void * evt_buf,struct vdev_sta_quiet_event * quiet_event)4014  QDF_STATUS wmi_extract_quiet_offload_event(
4015  				struct wmi_unified *wmi_handle, void *evt_buf,
4016  				struct vdev_sta_quiet_event *quiet_event)
4017  {
4018  	if (wmi_handle->ops->extract_quiet_offload_event)
4019  		return wmi_handle->ops->extract_quiet_offload_event(
4020  					wmi_handle, evt_buf, quiet_event);
4021  
4022  	return QDF_STATUS_E_FAILURE;
4023  }
4024  #endif
4025  
4026  #ifdef WLAN_SUPPORT_PPEDS
4027  QDF_STATUS
wmi_unified_peer_ppe_ds_param_send(wmi_unified_t wmi_handle,struct peer_ppe_ds_param * param)4028  wmi_unified_peer_ppe_ds_param_send(wmi_unified_t wmi_handle,
4029  				   struct peer_ppe_ds_param *param)
4030  {
4031  	if (wmi_handle->ops->peer_ppe_ds_param_send)
4032  		return wmi_handle->ops->peer_ppe_ds_param_send(
4033  				wmi_handle, param);
4034  
4035  	return QDF_STATUS_E_FAILURE;
4036  }
4037  #endif /* WLAN_SUPPORT_PPEDS */
4038  
wmi_unified_pn_mgmt_rxfilter_send_cmd(struct wmi_unified * wmi_handle,struct vdev_pn_mgmt_rxfilter_params * params)4039  QDF_STATUS wmi_unified_pn_mgmt_rxfilter_send_cmd(
4040  		struct wmi_unified *wmi_handle,
4041  		struct vdev_pn_mgmt_rxfilter_params *params)
4042  {
4043  	if (wmi_handle->ops->send_vdev_pn_mgmt_rxfilter_cmd)
4044  		return wmi_handle->ops->send_vdev_pn_mgmt_rxfilter_cmd(
4045  					wmi_handle, params);
4046  	return QDF_STATUS_E_FAILURE;
4047  }
4048  
4049  QDF_STATUS
wmi_extract_pktlog_decode_info_event(wmi_unified_t wmi_handle,void * evt_buf,uint8_t * pdev_id,uint8_t * software_image,uint8_t * chip_info,uint32_t * pktlog_json_version)4050  wmi_extract_pktlog_decode_info_event(wmi_unified_t wmi_handle,
4051  				     void *evt_buf, uint8_t *pdev_id,
4052  				     uint8_t *software_image,
4053  				     uint8_t *chip_info,
4054  				     uint32_t *pktlog_json_version)
4055  {
4056  	if (wmi_handle->ops->extract_pktlog_decode_info_event)
4057  		return wmi_handle->ops->extract_pktlog_decode_info_event(
4058  					wmi_handle, evt_buf, pdev_id,
4059  					software_image, chip_info,
4060  					pktlog_json_version);
4061  	return QDF_STATUS_E_FAILURE;
4062  }
4063  
wmi_extract_pdev_telemetry_stats(wmi_unified_t wmi_handle,void * evt_buf,struct wmi_host_pdev_telemetry_stats * pdev_stats)4064  QDF_STATUS wmi_extract_pdev_telemetry_stats(
4065  		wmi_unified_t wmi_handle, void *evt_buf,
4066  		struct wmi_host_pdev_telemetry_stats *pdev_stats)
4067  {
4068  	if (wmi_handle->ops->extract_pdev_telemetry_stats)
4069  		return wmi_handle->ops->extract_pdev_telemetry_stats(
4070  			wmi_handle, evt_buf, pdev_stats);
4071  
4072  	return QDF_STATUS_E_FAILURE;
4073  }
4074  
4075  #ifdef FEATURE_SET
wmi_feature_set_cmd_send(wmi_unified_t wmi_handle,struct target_feature_set * feature_set)4076  QDF_STATUS wmi_feature_set_cmd_send(wmi_unified_t wmi_handle,
4077  				    struct target_feature_set *feature_set)
4078  {
4079  	if (wmi_handle->ops->feature_set_cmd_send)
4080  		return wmi_handle->ops->feature_set_cmd_send(wmi_handle,
4081  							     feature_set);
4082  
4083  	return QDF_STATUS_E_FAILURE;
4084  }
4085  #endif
4086  
4087  QDF_STATUS
wmi_unified_update_edca_pifs_param(wmi_unified_t wmi_handle,struct edca_pifs_vparam * edca_pifs_param)4088  wmi_unified_update_edca_pifs_param(
4089  			wmi_unified_t wmi_handle,
4090  			struct edca_pifs_vparam *edca_pifs_param)
4091  {
4092  	if (wmi_handle->ops->send_update_edca_pifs_param_cmd)
4093  		return wmi_handle->ops->send_update_edca_pifs_param_cmd(
4094  				wmi_handle, edca_pifs_param);
4095  
4096  	return QDF_STATUS_E_FAILURE;
4097  }
4098  
wmi_extract_sap_coex_cap_service_ready_ext2(wmi_unified_t wmi_handle,uint8_t * evt_buf,struct wmi_host_coex_fix_chan_cap * cap)4099  QDF_STATUS wmi_extract_sap_coex_cap_service_ready_ext2(
4100  			wmi_unified_t wmi_handle,
4101  			uint8_t *evt_buf,
4102  			struct wmi_host_coex_fix_chan_cap *cap)
4103  {
4104  	if (wmi_handle->ops->extract_sap_coex_cap_service_ready_ext2)
4105  		return wmi_handle->ops->extract_sap_coex_cap_service_ready_ext2(
4106  				wmi_handle, evt_buf, cap);
4107  
4108  	return QDF_STATUS_E_FAILURE;
4109  }
4110  
4111  QDF_STATUS
wmi_extract_csa_ie_received_event(wmi_unified_t wmi_handle,void * evt_buf,uint8_t * vdev_id,struct csa_offload_params * csa_event)4112  wmi_extract_csa_ie_received_event(wmi_unified_t wmi_handle,
4113  				  void *evt_buf, uint8_t *vdev_id,
4114  				  struct csa_offload_params *csa_event)
4115  {
4116  	if (wmi_handle->ops->extract_csa_ie_received_ev_params)
4117  		return wmi_handle->ops->extract_csa_ie_received_ev_params
4118  				(wmi_handle, evt_buf, vdev_id, csa_event);
4119  
4120  	return QDF_STATUS_E_FAILURE;
4121  }
4122  
wmi_extract_aux_dev_cap_service_ready_ext2(wmi_unified_t wmi_handle,uint8_t * evt_buf,uint8_t idx,struct wlan_psoc_host_aux_dev_caps * param)4123  QDF_STATUS wmi_extract_aux_dev_cap_service_ready_ext2(
4124  		wmi_unified_t wmi_handle,
4125  		uint8_t *evt_buf, uint8_t idx,
4126  		struct wlan_psoc_host_aux_dev_caps *param)
4127  {
4128  	if (wmi_handle->ops->extract_aux_dev_cap_service_ready_ext2)
4129  		return wmi_handle->ops->extract_aux_dev_cap_service_ready_ext2(
4130  				wmi_handle,
4131  				evt_buf, idx, param);
4132  
4133  	return QDF_STATUS_E_FAILURE;
4134  }
4135  
4136