xref: /wlan-driver/qca-wifi-host-cmn/umac/cp_stats/core/src/wlan_cp_stats_cmn_api_i.h (revision 5113495b16420b49004c444715d2daae2066e7dc)
1 /*
2  * Copyright (c) 2018 The Linux Foundation. All rights reserved.
3  * Copyright (c) 2023 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 /**
21  * DOC: wlan_cp_stats_cmn_api_i.h
22  *
23  * This header filed declare APIs which have separate definition for both mc
24  * and ic
25  */
26 #ifndef __WLAN_CP_STATS_CMN_API_I_H__
27 #define __WLAN_CP_STATS_CMN_API_I_H__
28 #ifdef QCA_SUPPORT_CP_STATS
29 #include "wlan_cp_stats_defs.h"
30 
31 /**
32  * wlan_cp_stats_psoc_cs_init() - common psoc obj initialization
33  * @psoc_cs: pointer to psoc control path statistics
34  *
35  * Return: QDF_STATUS - Success or Failure
36  */
37 QDF_STATUS wlan_cp_stats_psoc_cs_init(struct psoc_cp_stats *psoc_cs);
38 
39 /**
40  * wlan_cp_stats_psoc_cs_deinit() - common psoc obj deinitialization
41  * @psoc_cs: pointer to psoc control path statistics
42  *
43  * Return: QDF_STATUS - Success or Failure
44  */
45 QDF_STATUS wlan_cp_stats_psoc_cs_deinit(struct psoc_cp_stats *psoc_cs);
46 
47 /**
48  * wlan_cp_stats_pdev_cs_init() - common pdev obj initialization
49  * @pdev_cs: pointer to pdev control path statistics
50  *
51  * Return: QDF_STATUS - Success or Failure
52  */
53 QDF_STATUS wlan_cp_stats_pdev_cs_init(struct pdev_cp_stats *pdev_cs);
54 
55 /**
56  * wlan_cp_stats_pdev_cs_deinit() - common pdev obj deinitialization
57  * @pdev_cs: pointer to pdev control path statistics
58  *
59  * Return: QDF_STATUS - Success or Failure
60  */
61 QDF_STATUS wlan_cp_stats_pdev_cs_deinit(struct pdev_cp_stats *pdev_cs);
62 
63 /**
64  * wlan_cp_stats_vdev_cs_init() - common vdev obj initialization
65  * @vdev_cs: pointer to vdev control path statistics
66  *
67  * Return: QDF_STATUS - Success or Failure
68  */
69 QDF_STATUS wlan_cp_stats_vdev_cs_init(struct vdev_cp_stats *vdev_cs);
70 
71 /**
72  * wlan_cp_stats_vdev_cs_deinit() - common vdev obj deinitialization
73  * @vdev_cs: pointer to vdev control path statistics
74  *
75  * Return: QDF_STATUS - Success or Failure
76  */
77 QDF_STATUS wlan_cp_stats_vdev_cs_deinit(struct vdev_cp_stats *vdev_cs);
78 
79 /**
80  * wlan_cp_stats_peer_cs_init() - common peer obj initialization
81  * @peer_cs: pointer to peer control path statistics
82  *
83  * Return: QDF_STATUS - Success or Failure
84  */
85 QDF_STATUS wlan_cp_stats_peer_cs_init(struct peer_cp_stats *peer_cs);
86 
87 /**
88  * wlan_cp_stats_peer_cs_deinit() - common peer obj deinitialization
89  * @peer_cs: pointer to peer control path statistics
90  *
91  * Return: QDF_STATUS - Success or Failure
92  */
93 QDF_STATUS wlan_cp_stats_peer_cs_deinit(struct peer_cp_stats *peer_cs);
94 
95 #endif /* QCA_SUPPORT_CP_STATS */
96 #endif /* __WLAN_CP_STATS_CMN_API_I_H__ */
97