xref: /wlan-dirver/qca-wifi-host-cmn/wmi/src/wmi_unified_dbr_api.c (revision 503663c6daafffe652fa360bde17243568cd6d2a)
1 /*
2  * Copyright (c) 2016-2019 The Linux Foundation. All rights reserved.
3  *
4  * Permission to use, copy, modify, and/or distribute this software for
5  * any purpose with or without fee is hereby granted, provided that the
6  * above copyright notice and this permission notice appear in all
7  * copies.
8  *
9  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
10  * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
11  * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
12  * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
13  * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
14  * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
15  * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
16  * PERFORMANCE OF THIS SOFTWARE.
17  */
18 
19 #include "wmi_unified_priv.h"
20 #include "qdf_module.h"
21 
22 QDF_STATUS wmi_unified_dbr_ring_cfg(wmi_unified_t wmi_handle,
23 				    struct direct_buf_rx_cfg_req *cfg)
24 {
25 	if (wmi_handle->ops->send_dbr_cfg_cmd)
26 		return wmi_handle->ops->send_dbr_cfg_cmd(wmi_handle, cfg);
27 
28 	return QDF_STATUS_E_FAILURE;
29 }
30 
31 QDF_STATUS wmi_extract_dbr_buf_release_fixed(
32 			wmi_unified_t wmi_handle,
33 			uint8_t *evt_buf,
34 			struct direct_buf_rx_rsp *param)
35 {
36 	if (wmi_handle->ops->extract_dbr_buf_release_fixed)
37 		return wmi_handle->ops->extract_dbr_buf_release_fixed(
38 				wmi_handle,
39 				evt_buf, param);
40 
41 	return QDF_STATUS_E_FAILURE;
42 }
43 
44 QDF_STATUS wmi_extract_dbr_buf_release_entry(
45 			wmi_unified_t wmi_handle,
46 			uint8_t *evt_buf, uint8_t idx,
47 			struct direct_buf_rx_entry *param)
48 {
49 	if (wmi_handle->ops->extract_dbr_buf_release_entry)
50 		return wmi_handle->ops->extract_dbr_buf_release_entry(
51 				wmi_handle,
52 				evt_buf, idx, param);
53 
54 	return QDF_STATUS_E_FAILURE;
55 }
56 
57 QDF_STATUS wmi_extract_dbr_buf_metadata(
58 			wmi_unified_t wmi_handle,
59 			uint8_t *evt_buf, uint8_t idx,
60 			struct direct_buf_rx_metadata *param)
61 {
62 	if (wmi_handle->ops->extract_dbr_buf_metadata)
63 		return wmi_handle->ops->extract_dbr_buf_metadata(
64 				wmi_handle,
65 				evt_buf, idx, param);
66 
67 	return QDF_STATUS_E_FAILURE;
68 }
69