xref: /wlan-dirver/qca-wifi-host-cmn/wmi/inc/wmi_unified_concurrency_api.h (revision 11f5a63a6cbdda84849a730de22f0a71e635d58c)
1 /*
2  * Copyright (c) 2013-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  * DOC: Implement API's specific to concurrency component.
20  */
21 
22 #ifndef _WMI_UNIFIED_CONCURRENCY_API_H_
23 #define _WMI_UNIFIED_CONCURRENCY_API_H_
24 
25 /**
26  * wmi_unified_set_mcc_channel_time_quota_cmd() - set MCC channel time quota
27  * @wmi_handle: wmi handle
28  * @adapter_1_chan_freq: adapter 1 channel number
29  * @adapter_1_quota: adapter 1 quota
30  * @adapter_2_chan_freq: adapter 2 channel number
31  *
32  * Return: QDF_STATUS_SUCCESS on success and QDF_STATUS_E_FAILURE for failure
33  */
34 QDF_STATUS wmi_unified_set_mcc_channel_time_quota_cmd(
35 	wmi_unified_t wmi_handle,
36 	uint32_t adapter_1_chan_freq,
37 	uint32_t adapter_1_quota, uint32_t adapter_2_chan_freq);
38 
39 /**
40  * wmi_unified_set_mcc_channel_time_latency_cmd() - set MCC channel time latency
41  * @wmi_handle: wmi handle
42  * @mcc_channel_freq: mcc channel freq
43  * @mcc_channel_time_latency: MCC channel time latency.
44  *
45  * Currently used to set time latency for an MCC vdev/adapter using operating
46  * channel of it and channel number. The info is provided run time using
47  * iwpriv command: iwpriv <wlan0 | p2p0> setMccLatency <latency in ms>.
48  *
49  * Return: QDF_STATUS_SUCCESS on success and QDF_STATUS_E_FAILURE for failure
50  */
51 QDF_STATUS wmi_unified_set_mcc_channel_time_latency_cmd(
52 	wmi_unified_t wmi_handle,
53 	uint32_t mcc_channel_freq, uint32_t mcc_channel_time_latency);
54 
55 /**
56  * wmi_unified_set_enable_disable_mcc_adaptive_scheduler_cmd() - control mcc
57  *								 scheduler
58  * @wmi_handle: wmi handle
59  * @mcc_adaptive_scheduler: enable/disable
60  * @pdev_id: pdev id
61  *
62  * This function enable/disable mcc adaptive scheduler in fw.
63  *
64  * Return: QDF_STATUS_SUCCESS for success or error code
65  */
66 QDF_STATUS wmi_unified_set_enable_disable_mcc_adaptive_scheduler_cmd(
67 		wmi_unified_t wmi_handle, uint32_t mcc_adaptive_scheduler,
68 		uint32_t pdev_id);
69 
70 #endif /* _WMI_UNIFIED_CONCURRENCY_API_H_ */
71