xref: /wlan-dirver/qca-wifi-host-cmn/umac/cp_stats/core/src/wlan_cp_stats_obj_mgr_handler.h (revision 6ecd284e5a94a1c96e26d571dd47419ac305990d)
1 /*
2  * Copyright (c) 2018 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 /**
20  * DOC: wlan_cp_stats_obj_mgr_handler.h
21  *
22  * This header file provide declarations for APIs to handle events from object
23  * manager for registered events from wlan_cp_stats_init()
24  */
25 
26 #ifndef __WLAN_CP_STATS_OBJ_MGR_HANDLER_H__
27 #define __WLAN_CP_STATS_OBJ_MGR_HANDLER_H__
28 
29 #ifdef QCA_SUPPORT_CP_STATS
30 #include <wlan_objmgr_cmn.h>
31 #include <wlan_objmgr_global_obj.h>
32 #include <wlan_objmgr_psoc_obj.h>
33 #include <wlan_objmgr_pdev_obj.h>
34 #include <wlan_objmgr_vdev_obj.h>
35 #include <wlan_objmgr_peer_obj.h>
36 
37 /**
38  * wlan_cp_stats_psoc_obj_create_handler() - psoc create notification handler
39  * callback function
40  * @psoc:		pointer to psoc object
41  * @data:		pointer to arg data
42  *
43  * Return: QDF_STATUS - Success or Failure
44  */
45 QDF_STATUS wlan_cp_stats_psoc_obj_create_handler(
46 		struct wlan_objmgr_psoc *psoc, void *data);
47 
48 /**
49  * wlan_cp_stats_psoc_obj_destroy_handler() - psoc destroy notification handler
50  * callback function
51  * @psoc:		pointer to psoc object
52  * @data:		pointer to arg data
53  *
54  * Return: QDF_STATUS - Success or Failure
55  */
56 QDF_STATUS wlan_cp_stats_psoc_obj_destroy_handler(
57 		struct wlan_objmgr_psoc *psoc, void *data);
58 
59 /**
60  * wlan_cp_stats_pdev_obj_create_handler() - Pdev create notification handler
61  * callback function
62  * @pdev:		pointer to pdev object
63  * @data:		pointer to arg data
64  *
65  * Return: QDF_STATUS - Success or Failure
66  */
67 QDF_STATUS wlan_cp_stats_pdev_obj_create_handler(
68 		struct wlan_objmgr_pdev *pdev, void *data);
69 
70 /**
71  * wlan_cp_stats_pdev_obj_destroy_handler() - Pdev destroy notification handler
72  * callback function
73  * @pdev:		pointer to pdev object
74  * @data:		pointer to arg data
75  *
76  * Return: QDF_STATUS - Success or Failure
77  */
78 QDF_STATUS wlan_cp_stats_pdev_obj_destroy_handler(
79 		struct wlan_objmgr_pdev *pdev, void *data);
80 
81 /**
82  * wlan_cp_stats_vdev_obj_create_handler() - vdev create notification handler
83  * callback function
84  * @vdev:		pointer to vdev object
85  * @data:		pointer to arg data
86  *
87  * Return: QDF_STATUS - Success or Failure
88  */
89 QDF_STATUS wlan_cp_stats_vdev_obj_create_handler(
90 		struct wlan_objmgr_vdev *vdev, void *data);
91 
92 /**
93  * wlan_cp_stats_vdev_obj_destroy_handler() - vdev destroy notification handler
94  * callback function
95  * @vdev:		pointer to vdev object
96  * @data:		pointer to arg data
97  *
98  * Return: QDF_STATUS - Success or Failure
99  */
100 QDF_STATUS wlan_cp_stats_vdev_obj_destroy_handler(
101 		struct wlan_objmgr_vdev *vdev, void *data);
102 
103 /**
104  * wlan_cp_stats_peer_obj_create_handler() - peer create notification handler
105  * callback function
106  * @peer:		pointer to peer object
107  * @data:		pointer to arg data
108  *
109  * Return: QDF_STATUS - Success or Failure
110  */
111 QDF_STATUS wlan_cp_stats_peer_obj_create_handler(
112 		struct wlan_objmgr_peer *peer, void *data);
113 
114 /**
115  * wlan_cp_stats_peer_obj_destroy_handler() - peer destroy notification handler
116  * callback function
117  * @peer:		pointer to peer object
118  * @data:		pointer to arg data
119  *
120  * Return: QDF_STATUS - Success or Failure
121  */
122 QDF_STATUS wlan_cp_stats_peer_obj_destroy_handler(
123 		struct wlan_objmgr_peer *peer, void *data);
124 
125 #endif /* QCA_SUPPORT_CP_STATS */
126 #endif /* __WLAN_CP_STATS_OBJ_MGR_HANDLER_H__ */
127