xref: /wlan-driver/qcacld-3.0/components/fw_offload/dispatcher/inc/wlan_fwol_ucfg_api.h (revision 5113495b16420b49004c444715d2daae2066e7dc)
1*5113495bSYour Name /*
2*5113495bSYour Name  * Copyright (c) 2018-2021 The Linux Foundation. All rights reserved.
3*5113495bSYour Name  * Copyright (c) 2022-2023 Qualcomm Innovation Center, Inc. All rights reserved.
4*5113495bSYour Name  *
5*5113495bSYour Name  * Permission to use, copy, modify, and/or distribute this software for
6*5113495bSYour Name  * any purpose with or without fee is hereby granted, provided that the
7*5113495bSYour Name  * above copyright notice and this permission notice appear in all
8*5113495bSYour Name  * copies.
9*5113495bSYour Name  *
10*5113495bSYour Name  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
11*5113495bSYour Name  * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
12*5113495bSYour Name  * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
13*5113495bSYour Name  * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
14*5113495bSYour Name  * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
15*5113495bSYour Name  * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
16*5113495bSYour Name  * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
17*5113495bSYour Name  * PERFORMANCE OF THIS SOFTWARE.
18*5113495bSYour Name  */
19*5113495bSYour Name /**
20*5113495bSYour Name  * DOC: declare internal API related to the fwol component
21*5113495bSYour Name  */
22*5113495bSYour Name 
23*5113495bSYour Name #ifndef _WLAN_FWOL_UCFG_API_H_
24*5113495bSYour Name #define _WLAN_FWOL_UCFG_API_H_
25*5113495bSYour Name 
26*5113495bSYour Name #include <wlan_objmgr_psoc_obj.h>
27*5113495bSYour Name #include <wlan_objmgr_global_obj.h>
28*5113495bSYour Name #include <wlan_cmn.h>
29*5113495bSYour Name #include "wlan_fw_offload_main.h"
30*5113495bSYour Name #include "wlan_fwol_public_structs.h"
31*5113495bSYour Name 
32*5113495bSYour Name #ifdef WLAN_FW_OFFLOAD
33*5113495bSYour Name /**
34*5113495bSYour Name  * ucfg_fwol_psoc_open() - FWOL component Open
35*5113495bSYour Name  * @psoc: pointer to psoc object
36*5113495bSYour Name  *
37*5113495bSYour Name  * Open the FWOL component and initialize the FWOL structure
38*5113495bSYour Name  *
39*5113495bSYour Name  * Return: QDF Status
40*5113495bSYour Name  */
41*5113495bSYour Name QDF_STATUS ucfg_fwol_psoc_open(struct wlan_objmgr_psoc *psoc);
42*5113495bSYour Name 
43*5113495bSYour Name /**
44*5113495bSYour Name  * ucfg_fwol_psoc_close() - FWOL component close
45*5113495bSYour Name  * @psoc: pointer to psoc object
46*5113495bSYour Name  *
47*5113495bSYour Name  * Close the FWOL component and clear the FWOL structures
48*5113495bSYour Name  *
49*5113495bSYour Name  * Return: None
50*5113495bSYour Name  */
51*5113495bSYour Name void ucfg_fwol_psoc_close(struct wlan_objmgr_psoc *psoc);
52*5113495bSYour Name 
53*5113495bSYour Name /**
54*5113495bSYour Name  * ucfg_fwol_psoc_enable() - FWOL component enable
55*5113495bSYour Name  * @psoc: pointer to psoc object
56*5113495bSYour Name  *
57*5113495bSYour Name  * Return: QDF Status
58*5113495bSYour Name  */
59*5113495bSYour Name QDF_STATUS ucfg_fwol_psoc_enable(struct wlan_objmgr_psoc *psoc);
60*5113495bSYour Name 
61*5113495bSYour Name /**
62*5113495bSYour Name  * ucfg_fwol_psoc_disable() - FWOL component disable
63*5113495bSYour Name  * @psoc: pointer to psoc object
64*5113495bSYour Name  *
65*5113495bSYour Name  * Return: None
66*5113495bSYour Name  */
67*5113495bSYour Name void ucfg_fwol_psoc_disable(struct wlan_objmgr_psoc *psoc);
68*5113495bSYour Name 
69*5113495bSYour Name /**
70*5113495bSYour Name  * ucfg_fwol_init() - initialize fwol_ctx context.
71*5113495bSYour Name  *
72*5113495bSYour Name  * This function initializes the fwol context.
73*5113495bSYour Name  *
74*5113495bSYour Name  * Return: QDF_STATUS_SUCCESS - in case of success else return error
75*5113495bSYour Name  */
76*5113495bSYour Name QDF_STATUS ucfg_fwol_init(void);
77*5113495bSYour Name 
78*5113495bSYour Name /**
79*5113495bSYour Name  * ucfg_fwol_deinit() - De initialize fwol_ctx context.
80*5113495bSYour Name  *
81*5113495bSYour Name  * This function De initializes fwol context.
82*5113495bSYour Name  *
83*5113495bSYour Name  * Return: QDF_STATUS_SUCCESS - in case of success else return error
84*5113495bSYour Name  */
85*5113495bSYour Name void ucfg_fwol_deinit(void);
86*5113495bSYour Name 
87*5113495bSYour Name #ifdef FW_THERMAL_THROTTLE_SUPPORT
88*5113495bSYour Name /**
89*5113495bSYour Name  * ucfg_fwol_thermal_register_callbacks() - Register thermal callbacks
90*5113495bSYour Name  * to be called by fwol thermal
91*5113495bSYour Name  * @psoc: psoc object
92*5113495bSYour Name  * @cb: callback functions
93*5113495bSYour Name  *
94*5113495bSYour Name  * Currently only one callback notify_thermal_throttle_handler can be
95*5113495bSYour Name  * registered to fwol thermal core. The client will be notified by the callback
96*5113495bSYour Name  * when new thermal throttle level is changed in target.
97*5113495bSYour Name  *
98*5113495bSYour Name  * Return: QDF_STATUS
99*5113495bSYour Name  */
100*5113495bSYour Name QDF_STATUS ucfg_fwol_thermal_register_callbacks(
101*5113495bSYour Name 				struct wlan_objmgr_psoc *psoc,
102*5113495bSYour Name 				struct fwol_thermal_callbacks *cb);
103*5113495bSYour Name 
104*5113495bSYour Name /**
105*5113495bSYour Name  * ucfg_fwol_thermal_unregister_callbacks() - unregister thermal callbacks
106*5113495bSYour Name  * @psoc: psoc object
107*5113495bSYour Name  *
108*5113495bSYour Name  * Return: QDF_STATUS
109*5113495bSYour Name  */
110*5113495bSYour Name QDF_STATUS ucfg_fwol_thermal_unregister_callbacks(
111*5113495bSYour Name 				struct wlan_objmgr_psoc *psoc);
112*5113495bSYour Name 
113*5113495bSYour Name /**
114*5113495bSYour Name  * ucfg_fwol_thermal_get_target_level() - get thermal level based on cached
115*5113495bSYour Name  *  target thermal throttle level
116*5113495bSYour Name  * @psoc: psoc object
117*5113495bSYour Name  * @level: target thermal throttle level info
118*5113495bSYour Name  *
119*5113495bSYour Name  * Return: QDF_STATUS
120*5113495bSYour Name  */
121*5113495bSYour Name QDF_STATUS
122*5113495bSYour Name ucfg_fwol_thermal_get_target_level(struct wlan_objmgr_psoc *psoc,
123*5113495bSYour Name 				   enum thermal_throttle_level *level);
124*5113495bSYour Name #else
ucfg_fwol_thermal_register_callbacks(struct wlan_objmgr_psoc * psoc,struct fwol_thermal_callbacks * cb)125*5113495bSYour Name static inline QDF_STATUS ucfg_fwol_thermal_register_callbacks(
126*5113495bSYour Name 				struct wlan_objmgr_psoc *psoc,
127*5113495bSYour Name 				struct fwol_thermal_callbacks *cb)
128*5113495bSYour Name {
129*5113495bSYour Name 	return QDF_STATUS_SUCCESS;
130*5113495bSYour Name }
131*5113495bSYour Name 
ucfg_fwol_thermal_unregister_callbacks(struct wlan_objmgr_psoc * psoc)132*5113495bSYour Name static inline QDF_STATUS ucfg_fwol_thermal_unregister_callbacks(
133*5113495bSYour Name 				struct wlan_objmgr_psoc *psoc)
134*5113495bSYour Name {
135*5113495bSYour Name 	return QDF_STATUS_SUCCESS;
136*5113495bSYour Name }
137*5113495bSYour Name 
138*5113495bSYour Name static inline QDF_STATUS
ucfg_fwol_thermal_get_target_level(struct wlan_objmgr_psoc * psoc,enum thermal_throttle_level * level)139*5113495bSYour Name ucfg_fwol_thermal_get_target_level(struct wlan_objmgr_psoc *psoc,
140*5113495bSYour Name 				   enum thermal_throttle_level *level)
141*5113495bSYour Name 
142*5113495bSYour Name {
143*5113495bSYour Name 	return QDF_STATUS_E_FAILURE;
144*5113495bSYour Name }
145*5113495bSYour Name #endif
146*5113495bSYour Name 
147*5113495bSYour Name /**
148*5113495bSYour Name  * ucfg_fwol_get_coex_config_params() - Get coex config params
149*5113495bSYour Name  * @psoc: Pointer to psoc object
150*5113495bSYour Name  * @coex_config: Pointer to struct wlan_fwol_coex_config
151*5113495bSYour Name  *
152*5113495bSYour Name  * Return: QDF_STATUS
153*5113495bSYour Name  */
154*5113495bSYour Name QDF_STATUS
155*5113495bSYour Name ucfg_fwol_get_coex_config_params(struct wlan_objmgr_psoc *psoc,
156*5113495bSYour Name 				 struct wlan_fwol_coex_config *coex_config);
157*5113495bSYour Name 
158*5113495bSYour Name /**
159*5113495bSYour Name  * ucfg_fwol_get_thermal_temp() - Get thermal temperature config params
160*5113495bSYour Name  * @psoc: Pointer to psoc object
161*5113495bSYour Name  * @thermal_temp: Pointer to struct wlan_fwol_thermal_temp
162*5113495bSYour Name  *
163*5113495bSYour Name  * Return: QDF Status
164*5113495bSYour Name  */
165*5113495bSYour Name QDF_STATUS
166*5113495bSYour Name ucfg_fwol_get_thermal_temp(struct wlan_objmgr_psoc *psoc,
167*5113495bSYour Name 			   struct wlan_fwol_thermal_temp *thermal_temp);
168*5113495bSYour Name 
169*5113495bSYour Name /**
170*5113495bSYour Name  * ucfg_fwol_is_neighbor_report_req_supported() - Get neighbor report request
171*5113495bSYour Name  *                                                supported bit
172*5113495bSYour Name  * @psoc: Pointer to psoc object
173*5113495bSYour Name  * @neighbor_report_req: Pointer to return value
174*5113495bSYour Name  *
175*5113495bSYour Name  * Return: QDF Status
176*5113495bSYour Name  */
177*5113495bSYour Name QDF_STATUS
178*5113495bSYour Name ucfg_fwol_is_neighbor_report_req_supported(struct wlan_objmgr_psoc *psoc,
179*5113495bSYour Name 					   bool *neighbor_report_req);
180*5113495bSYour Name 
181*5113495bSYour Name /**
182*5113495bSYour Name  * ucfg_fwol_get_ie_allowlist() - Get IE allowlist param value
183*5113495bSYour Name  * @psoc: Pointer to psoc object
184*5113495bSYour Name  * @ie_allowlist: Pointer to return the IE allowlist param value
185*5113495bSYour Name  *
186*5113495bSYour Name  * Return: QDF Status
187*5113495bSYour Name  */
188*5113495bSYour Name QDF_STATUS
189*5113495bSYour Name ucfg_fwol_get_ie_allowlist(struct wlan_objmgr_psoc *psoc, bool *ie_allowlist);
190*5113495bSYour Name 
191*5113495bSYour Name /**
192*5113495bSYour Name  * ucfg_fwol_set_ie_allowlist() - Set IE allowlist param value
193*5113495bSYour Name  * @psoc: Pointer to psoc object
194*5113495bSYour Name  * @ie_allowlist: Value to set IE allowlist param
195*5113495bSYour Name  *
196*5113495bSYour Name  * Return: QDF Status
197*5113495bSYour Name  */
198*5113495bSYour Name QDF_STATUS
199*5113495bSYour Name ucfg_fwol_set_ie_allowlist(struct wlan_objmgr_psoc *psoc, bool ie_allowlist);
200*5113495bSYour Name 
201*5113495bSYour Name /**
202*5113495bSYour Name  * ucfg_fwol_get_all_allowlist_params() - Get all IE allowlist param values
203*5113495bSYour Name  * @psoc: Pointer to psoc object
204*5113495bSYour Name  * @allowlist: Pointer to struct wlan_fwol_ie_allowlist
205*5113495bSYour Name  *
206*5113495bSYour Name  * Return: QDF Status
207*5113495bSYour Name  */
208*5113495bSYour Name QDF_STATUS
209*5113495bSYour Name ucfg_fwol_get_all_allowlist_params(struct wlan_objmgr_psoc *psoc,
210*5113495bSYour Name 				   struct wlan_fwol_ie_allowlist *allowlist);
211*5113495bSYour Name 
212*5113495bSYour Name /**
213*5113495bSYour Name  * ucfg_fwol_get_ani_enabled() - Assigns the ani_enabled value
214*5113495bSYour Name  * @psoc: pointer to the psoc object
215*5113495bSYour Name  * @ani_enabled: pointer to return ani_enabled value
216*5113495bSYour Name  *
217*5113495bSYour Name  * Return: QDF Status
218*5113495bSYour Name  */
219*5113495bSYour Name QDF_STATUS ucfg_fwol_get_ani_enabled(struct wlan_objmgr_psoc *psoc,
220*5113495bSYour Name 				     bool *ani_enabled);
221*5113495bSYour Name 
222*5113495bSYour Name /**
223*5113495bSYour Name  * ucfg_fwol_get_pcie_config() - Assigns the pcie_config value
224*5113495bSYour Name  * @psoc: pointer to the psoc object
225*5113495bSYour Name  * @pcie_config: pointer to return pcie_config value
226*5113495bSYour Name  *
227*5113495bSYour Name  * Return: QDF Status
228*5113495bSYour Name  */
229*5113495bSYour Name QDF_STATUS ucfg_fwol_get_pcie_config(struct wlan_objmgr_psoc *psoc,
230*5113495bSYour Name 				     uint8_t *pcie_config);
231*5113495bSYour Name 
232*5113495bSYour Name /**
233*5113495bSYour Name  * ucfg_get_enable_rts_sifsbursting() - Assigns the enable_rts_sifsbursting
234*5113495bSYour Name  *                                      value
235*5113495bSYour Name  * @psoc: pointer to the psoc object
236*5113495bSYour Name  * @enable_rts_sifsbursting: pointer to return enable_rts_sifsbursting value
237*5113495bSYour Name  *
238*5113495bSYour Name  * Return: QDF Status
239*5113495bSYour Name  */
240*5113495bSYour Name QDF_STATUS ucfg_get_enable_rts_sifsbursting(struct wlan_objmgr_psoc *psoc,
241*5113495bSYour Name 					    bool *enable_rts_sifsbursting);
242*5113495bSYour Name 
243*5113495bSYour Name /**
244*5113495bSYour Name  * ucfg_get_enable_sifs_burst() - Get the enable_sifs_burst value
245*5113495bSYour Name  * @psoc: pointer to the psoc object
246*5113495bSYour Name  * @enable_sifs_burst: pointer to return enable_sifs_burst value
247*5113495bSYour Name  *
248*5113495bSYour Name  * Return: QDF Status
249*5113495bSYour Name  */
250*5113495bSYour Name QDF_STATUS ucfg_get_enable_sifs_burst(struct wlan_objmgr_psoc *psoc,
251*5113495bSYour Name 				      uint8_t *enable_sifs_burst);
252*5113495bSYour Name 
253*5113495bSYour Name /**
254*5113495bSYour Name  * ucfg_get_max_mpdus_inampdu() - Assigns the max_mpdus_inampdu value
255*5113495bSYour Name  * @psoc: pointer to the psoc object
256*5113495bSYour Name  * @max_mpdus_inampdu: pointer to return max_mpdus_inampdu value
257*5113495bSYour Name  *
258*5113495bSYour Name  * Return: QDF Status
259*5113495bSYour Name  */
260*5113495bSYour Name QDF_STATUS ucfg_get_max_mpdus_inampdu(struct wlan_objmgr_psoc *psoc,
261*5113495bSYour Name 				      uint8_t *max_mpdus_inampdu);
262*5113495bSYour Name 
263*5113495bSYour Name /**
264*5113495bSYour Name  * ucfg_get_enable_phy_reg_retention() - Assigns enable_phy_reg_retention value
265*5113495bSYour Name  * @psoc: pointer to the psoc object
266*5113495bSYour Name  * @enable_phy_reg_retention: pointer to return enable_phy_reg_retention value
267*5113495bSYour Name  *
268*5113495bSYour Name  * Return: QDF Status
269*5113495bSYour Name  */
270*5113495bSYour Name QDF_STATUS ucfg_get_enable_phy_reg_retention(struct wlan_objmgr_psoc *psoc,
271*5113495bSYour Name 					     uint8_t *enable_phy_reg_retention);
272*5113495bSYour Name 
273*5113495bSYour Name /**
274*5113495bSYour Name  * ucfg_get_upper_brssi_thresh() - Assigns upper_brssi_thresh value
275*5113495bSYour Name  * @psoc: pointer to the psoc object
276*5113495bSYour Name  * @upper_brssi_thresh: pointer to return upper_brssi_thresh value
277*5113495bSYour Name  *
278*5113495bSYour Name  * Return: QDF Status
279*5113495bSYour Name  */
280*5113495bSYour Name QDF_STATUS ucfg_get_upper_brssi_thresh(struct wlan_objmgr_psoc *psoc,
281*5113495bSYour Name 				       uint16_t *upper_brssi_thresh);
282*5113495bSYour Name 
283*5113495bSYour Name /**
284*5113495bSYour Name  * ucfg_get_lower_brssi_thresh() - Assigns lower_brssi_thresh value
285*5113495bSYour Name  * @psoc: pointer to the psoc object
286*5113495bSYour Name  * @lower_brssi_thresh: pointer to return lower_brssi_thresh value
287*5113495bSYour Name  *
288*5113495bSYour Name  * Return: QDF Status
289*5113495bSYour Name  */
290*5113495bSYour Name QDF_STATUS ucfg_get_lower_brssi_thresh(struct wlan_objmgr_psoc *psoc,
291*5113495bSYour Name 				       uint16_t *lower_brssi_thresh);
292*5113495bSYour Name 
293*5113495bSYour Name /**
294*5113495bSYour Name  * ucfg_get_enable_dtim_1chrx() - Assigns enable_dtim_1chrx value
295*5113495bSYour Name  * @psoc: pointer to the psoc object
296*5113495bSYour Name  * @enable_dtim_1chrx: pointer to return enable_dtim_1chrx value
297*5113495bSYour Name  *
298*5113495bSYour Name  * Return: QDF Status
299*5113495bSYour Name  */
300*5113495bSYour Name QDF_STATUS ucfg_get_enable_dtim_1chrx(struct wlan_objmgr_psoc *psoc,
301*5113495bSYour Name 				      bool *enable_dtim_1chrx);
302*5113495bSYour Name 
303*5113495bSYour Name /**
304*5113495bSYour Name  * ucfg_get_alternative_chainmask_enabled() - Assigns alt chainmask_enabled
305*5113495bSYour Name  *                                            value
306*5113495bSYour Name  * @psoc: pointer to the psoc object
307*5113495bSYour Name  * @alternative_chainmask_enabled: pointer to return
308*5113495bSYour Name  *                                 alternative_chainmask_enabled value
309*5113495bSYour Name  *
310*5113495bSYour Name  * Return: QDF Status
311*5113495bSYour Name  */
312*5113495bSYour Name QDF_STATUS
313*5113495bSYour Name ucfg_get_alternative_chainmask_enabled(struct wlan_objmgr_psoc *psoc,
314*5113495bSYour Name 				       bool *alternative_chainmask_enabled);
315*5113495bSYour Name 
316*5113495bSYour Name /**
317*5113495bSYour Name  * ucfg_get_smart_chainmask_enabled() - Assigns smart_chainmask_enabled value
318*5113495bSYour Name  * @psoc: pointer to the psoc object
319*5113495bSYour Name  * @smart_chainmask_enabled: pointer to return smart_chainmask_enabled value
320*5113495bSYour Name  *
321*5113495bSYour Name  * Return: QDF Status
322*5113495bSYour Name  */
323*5113495bSYour Name QDF_STATUS ucfg_get_smart_chainmask_enabled(struct wlan_objmgr_psoc *psoc,
324*5113495bSYour Name 					    bool *smart_chainmask_enabled);
325*5113495bSYour Name 
326*5113495bSYour Name /**
327*5113495bSYour Name  * ucfg_fwol_get_rts_profile() - Assigns get_rts_profile value
328*5113495bSYour Name  * @psoc: pointer to the psoc object
329*5113495bSYour Name  * @get_rts_profile: pointer to return RTS profile value
330*5113495bSYour Name  *
331*5113495bSYour Name  * Return: QDF Status
332*5113495bSYour Name  */
333*5113495bSYour Name QDF_STATUS ucfg_fwol_get_rts_profile(struct wlan_objmgr_psoc *psoc,
334*5113495bSYour Name 				     uint16_t *get_rts_profile);
335*5113495bSYour Name 
336*5113495bSYour Name /**
337*5113495bSYour Name  * ucfg_fwol_get_enable_fw_log_level() - Assigns enable_fw_log_level value
338*5113495bSYour Name  * @psoc: pointer to the psoc object
339*5113495bSYour Name  * @enable_fw_log_level: pointer to return firmware log level enable bitmap
340*5113495bSYour Name  *
341*5113495bSYour Name  * Return: QDF Status
342*5113495bSYour Name  */
343*5113495bSYour Name QDF_STATUS ucfg_fwol_get_enable_fw_log_level(struct wlan_objmgr_psoc *psoc,
344*5113495bSYour Name 					     uint16_t *enable_fw_log_level);
345*5113495bSYour Name 
346*5113495bSYour Name /**
347*5113495bSYour Name  * ucfg_fwol_get_enable_fw_log_type() - Assigns enable_fw_log_type value
348*5113495bSYour Name  * @psoc: pointer to the psoc object
349*5113495bSYour Name  * @enable_fw_log_type: pointer to return firmware log type bitmap
350*5113495bSYour Name  *
351*5113495bSYour Name  * Return: QDF Status
352*5113495bSYour Name  */
353*5113495bSYour Name QDF_STATUS ucfg_fwol_get_enable_fw_log_type(struct wlan_objmgr_psoc *psoc,
354*5113495bSYour Name 					    uint16_t *enable_fw_log_type);
355*5113495bSYour Name 
356*5113495bSYour Name /**
357*5113495bSYour Name  * ucfg_fwol_get_enable_fw_module_log_level() - Assigns
358*5113495bSYour Name  * enable_fw_module_log_level string
359*5113495bSYour Name  * @psoc: pointer to the psoc object
360*5113495bSYour Name  * @enable_fw_module_log_level:
361*5113495bSYour Name  * pointer to enable_fw_module_log_level array
362*5113495bSYour Name  * @enable_fw_module_log_level_num:
363*5113495bSYour Name  * pointer to enable_fw_module_log_level array element num
364*5113495bSYour Name  *
365*5113495bSYour Name  * Return: QDF Status
366*5113495bSYour Name  */
367*5113495bSYour Name QDF_STATUS ucfg_fwol_get_enable_fw_module_log_level(
368*5113495bSYour Name 				struct wlan_objmgr_psoc *psoc,
369*5113495bSYour Name 				uint8_t **enable_fw_module_log_level,
370*5113495bSYour Name 				uint8_t *enable_fw_module_log_level_num);
371*5113495bSYour Name 
372*5113495bSYour Name /**
373*5113495bSYour Name  * ucfg_fwol_wow_get_enable_fw_module_log_level() - Assigns
374*5113495bSYour Name  * enable_fw_module_log_level string
375*5113495bSYour Name  *
376*5113495bSYour Name  * @psoc: pointer to the psoc object
377*5113495bSYour Name  * @enable_fw_wow_module_log_level:
378*5113495bSYour Name  * pointer to enable_fw_wow_module_log_level array
379*5113495bSYour Name  * @enable_fw_wow_module_log_level_num:
380*5113495bSYour Name  * pointer to enable_fw_wow_module_log_level array element num
381*5113495bSYour Name  *
382*5113495bSYour Name  * Return: QDF Status
383*5113495bSYour Name  */
384*5113495bSYour Name QDF_STATUS ucfg_fwol_wow_get_enable_fw_module_log_level(
385*5113495bSYour Name 				struct wlan_objmgr_psoc *psoc,
386*5113495bSYour Name 				uint8_t **enable_fw_wow_module_log_level,
387*5113495bSYour Name 				uint8_t *enable_fw_wow_module_log_level_num);
388*5113495bSYour Name 
389*5113495bSYour Name /**
390*5113495bSYour Name  * ucfg_fwol_get_sap_xlna_bypass() - Assigns sap_xlna_bypass value
391*5113495bSYour Name  * @psoc: pointer to the psoc object
392*5113495bSYour Name  * @sap_xlna_bypass: pointer to return sap_xlna_bypass bool
393*5113495bSYour Name  *
394*5113495bSYour Name  * Return: QDF Status
395*5113495bSYour Name  */
396*5113495bSYour Name QDF_STATUS ucfg_fwol_get_sap_xlna_bypass(struct wlan_objmgr_psoc *psoc,
397*5113495bSYour Name 					 bool *sap_xlna_bypass);
398*5113495bSYour Name 
399*5113495bSYour Name #ifdef FEATURE_WLAN_RA_FILTERING
400*5113495bSYour Name /**
401*5113495bSYour Name  * ucfg_fwol_set_is_rate_limit_enabled() - Sets the is_rate_limit_enabled value
402*5113495bSYour Name  * @psoc: pointer to the psoc object
403*5113495bSYour Name  * @is_rate_limit_enabled: value to set rate limit enabled bool
404*5113495bSYour Name  *
405*5113495bSYour Name  * Return: QDF Status
406*5113495bSYour Name  */
407*5113495bSYour Name QDF_STATUS ucfg_fwol_set_is_rate_limit_enabled(struct wlan_objmgr_psoc *psoc,
408*5113495bSYour Name 					       bool is_rate_limit_enabled);
409*5113495bSYour Name 
410*5113495bSYour Name /**
411*5113495bSYour Name  * ucfg_fwol_get_is_rate_limit_enabled() - Assigns is_rate_limit_enabled value
412*5113495bSYour Name  * @psoc: pointer to the psoc object
413*5113495bSYour Name  * @is_rate_limit_enabled: pointer to return rate limit enabled bool
414*5113495bSYour Name  *
415*5113495bSYour Name  * Return: QDF Status
416*5113495bSYour Name  */
417*5113495bSYour Name QDF_STATUS ucfg_fwol_get_is_rate_limit_enabled(struct wlan_objmgr_psoc *psoc,
418*5113495bSYour Name 					       bool *is_rate_limit_enabled);
419*5113495bSYour Name 
420*5113495bSYour Name #endif /* FEATURE_WLAN_RA_FILTERING */
421*5113495bSYour Name 
422*5113495bSYour Name /**
423*5113495bSYour Name  * ucfg_fwol_get_tsf_gpio_pin() - Assigns tsf_gpio_pin value
424*5113495bSYour Name  * @psoc: pointer to the psoc object
425*5113495bSYour Name  * @tsf_gpio_pin: pointer to return TSF GPIO pin value
426*5113495bSYour Name  *
427*5113495bSYour Name  * Return: QDF Status
428*5113495bSYour Name  */
429*5113495bSYour Name 
430*5113495bSYour Name QDF_STATUS ucfg_fwol_get_tsf_gpio_pin(struct wlan_objmgr_psoc *psoc,
431*5113495bSYour Name 				      uint32_t *tsf_gpio_pin);
432*5113495bSYour Name 
433*5113495bSYour Name #ifdef WLAN_FEATURE_TSF_PLUS_EXT_GPIO_IRQ
434*5113495bSYour Name /**
435*5113495bSYour Name  * ucfg_fwol_get_tsf_irq_host_gpio_pin() - Assigns tsf_irq_host_gpio_pin value
436*5113495bSYour Name  * @psoc: pointer to the psoc object
437*5113495bSYour Name  * @tsf_irq_host_gpio_pin: pointer to return the TSF IRQ GPIO pin number
438*5113495bSYour Name  *
439*5113495bSYour Name  * Return: QDF Status
440*5113495bSYour Name  */
441*5113495bSYour Name 
442*5113495bSYour Name QDF_STATUS
443*5113495bSYour Name ucfg_fwol_get_tsf_irq_host_gpio_pin(struct wlan_objmgr_psoc *psoc,
444*5113495bSYour Name 				    uint32_t *tsf_irq_host_gpio_pin);
445*5113495bSYour Name #endif
446*5113495bSYour Name 
447*5113495bSYour Name #ifdef WLAN_FEATURE_TSF_PLUS_EXT_GPIO_SYNC
448*5113495bSYour Name /**
449*5113495bSYour Name  * ucfg_fwol_get_tsf_sync_host_gpio_pin() - Assigns tsf_sync_host_gpio_pin value
450*5113495bSYour Name  * @psoc: pointer to the psoc object
451*5113495bSYour Name  * @tsf_irq_host_gpio_pin: pointer to return the TSF sync GPIO pin number
452*5113495bSYour Name  *
453*5113495bSYour Name  * Return: QDF Status
454*5113495bSYour Name  */
455*5113495bSYour Name 
456*5113495bSYour Name QDF_STATUS
457*5113495bSYour Name ucfg_fwol_get_tsf_sync_host_gpio_pin(struct wlan_objmgr_psoc *psoc,
458*5113495bSYour Name 				     uint32_t *tsf_irq_host_gpio_pin);
459*5113495bSYour Name #endif
460*5113495bSYour Name 
461*5113495bSYour Name #ifdef DHCP_SERVER_OFFLOAD
462*5113495bSYour Name /**
463*5113495bSYour Name  * ucfg_fwol_get_enable_dhcp_server_offload()-Assign enable_dhcp_server_offload
464*5113495bSYour Name  * @psoc: pointer to the psoc object
465*5113495bSYour Name  * @enable_dhcp_server_offload: pointer to return enable_dhcp_server_offload
466*5113495bSYour Name  *                              value
467*5113495bSYour Name  *
468*5113495bSYour Name  * Return: QDF Status
469*5113495bSYour Name  */
470*5113495bSYour Name QDF_STATUS
471*5113495bSYour Name ucfg_fwol_get_enable_dhcp_server_offload(struct wlan_objmgr_psoc *psoc,
472*5113495bSYour Name 					 bool *enable_dhcp_server_offload);
473*5113495bSYour Name 
474*5113495bSYour Name /**
475*5113495bSYour Name  * ucfg_fwol_get_dhcp_max_num_clients() - Assigns dhcp_max_num_clients value
476*5113495bSYour Name  * @psoc: pointer to the psoc object
477*5113495bSYour Name  * @dhcp_max_num_clients: pointer to return the max number of DHC clients value
478*5113495bSYour Name  *
479*5113495bSYour Name  * Return: QDF Status
480*5113495bSYour Name  */
481*5113495bSYour Name QDF_STATUS ucfg_fwol_get_dhcp_max_num_clients(struct wlan_objmgr_psoc *psoc,
482*5113495bSYour Name 					      uint32_t *dhcp_max_num_clients);
483*5113495bSYour Name #endif
484*5113495bSYour Name 
485*5113495bSYour Name /**
486*5113495bSYour Name  * ucfg_fwol_get_tsf_sync_enable() - Get TSF sync enabled
487*5113495bSYour Name  * @psoc: pointer to the psoc object
488*5113495bSYour Name  * @tsf_sync_enable: Pointer to tsf sync enabled
489*5113495bSYour Name  *
490*5113495bSYour Name  * Return: QDF Status
491*5113495bSYour Name  */
492*5113495bSYour Name QDF_STATUS ucfg_fwol_get_tsf_sync_enable(struct wlan_objmgr_psoc *psoc,
493*5113495bSYour Name 					 bool *tsf_sync_enable);
494*5113495bSYour Name 
495*5113495bSYour Name #ifdef WLAN_FEATURE_TSF_ACCURACY
496*5113495bSYour Name /**
497*5113495bSYour Name  * ucfg_fwol_get_tsf_accuracy_configs() - Get TSF accuracy configs
498*5113495bSYour Name  * @psoc: pointer to the psoc object
499*5113495bSYour Name  * @config: Pointer to hold TSF Accuracy Feature configs
500*5113495bSYour Name  *
501*5113495bSYour Name  * Return: QDF Status
502*5113495bSYour Name  */
503*5113495bSYour Name QDF_STATUS ucfg_fwol_get_tsf_accuracy_configs(struct wlan_objmgr_psoc *psoc,
504*5113495bSYour Name 					      struct wlan_fwol_tsf_accuracy_configs **config);
505*5113495bSYour Name #endif
506*5113495bSYour Name 
507*5113495bSYour Name /**
508*5113495bSYour Name  * ucfg_fwol_get_tsf_ptp_options() - Get TSF Plus feature options
509*5113495bSYour Name  * @psoc: pointer to the psoc object
510*5113495bSYour Name  * @tsf_ptp_options: Pointer to return tsf ptp options
511*5113495bSYour Name  *
512*5113495bSYour Name  * Return: QDF Status
513*5113495bSYour Name  */
514*5113495bSYour Name QDF_STATUS ucfg_fwol_get_tsf_ptp_options(struct wlan_objmgr_psoc *psoc,
515*5113495bSYour Name 					 uint32_t *tsf_ptp_options);
516*5113495bSYour Name 
517*5113495bSYour Name /**
518*5113495bSYour Name  * ucfg_fwol_get_sae_enable() - Get SAE feature enable status
519*5113495bSYour Name  * @psoc: pointer to the psoc object
520*5113495bSYour Name  *
521*5113495bSYour Name  * Return: True if enabled else false
522*5113495bSYour Name  */
523*5113495bSYour Name bool ucfg_fwol_get_sae_enable(struct wlan_objmgr_psoc *psoc);
524*5113495bSYour Name 
525*5113495bSYour Name /**
526*5113495bSYour Name  * ucfg_fwol_get_gcmp_enable() - Get GCMP feature enable status
527*5113495bSYour Name  * @psoc: pointer to the psoc object
528*5113495bSYour Name  *
529*5113495bSYour Name  * Return: True if enabled else false
530*5113495bSYour Name  */
531*5113495bSYour Name bool ucfg_fwol_get_gcmp_enable(struct wlan_objmgr_psoc *psoc);
532*5113495bSYour Name 
533*5113495bSYour Name /**
534*5113495bSYour Name  * ucfg_fwol_get_enable_tx_sch_delay() - Get enable tx sch delay
535*5113495bSYour Name  * @psoc: pointer to the psoc object
536*5113495bSYour Name  * @enable_tx_sch_delay: Pointer to return enable_tx_sch_delay value
537*5113495bSYour Name  *
538*5113495bSYour Name  * Return: QDF Status
539*5113495bSYour Name  */
540*5113495bSYour Name QDF_STATUS ucfg_fwol_get_enable_tx_sch_delay(struct wlan_objmgr_psoc *psoc,
541*5113495bSYour Name 					     uint8_t *enable_tx_sch_delay);
542*5113495bSYour Name 
543*5113495bSYour Name #ifdef WLAN_FEATURE_OFDM_SCRAMBLER_SEED
544*5113495bSYour Name /**
545*5113495bSYour Name  * ucfg_fwol_get_ofdm_scrambler_seed() - Assigns enable_ofdm_scrambler_seed
546*5113495bSYour Name  * @psoc: pointer to psoc object
547*5113495bSYour Name  * @enable_ofdm_scrambler_seed: Pointer to return enable_ofdm_scrambler_seed
548*5113495bSYour Name  * value
549*5113495bSYour Name  *
550*5113495bSYour Name  * Return: QDF_STATUS_SUCCESS - in case of success
551*5113495bSYour Name  */
552*5113495bSYour Name QDF_STATUS ucfg_fwol_get_ofdm_scrambler_seed(struct wlan_objmgr_psoc *psoc,
553*5113495bSYour Name 					     bool *enable_ofdm_scrambler_seed);
554*5113495bSYour Name #else
ucfg_fwol_get_ofdm_scrambler_seed(struct wlan_objmgr_psoc * psoc,bool * enable_ofdm_scrambler_seed)555*5113495bSYour Name static inline QDF_STATUS ucfg_fwol_get_ofdm_scrambler_seed(
556*5113495bSYour Name 				struct wlan_objmgr_psoc *psoc,
557*5113495bSYour Name 				bool *enable_ofdm_scrambler_seed)
558*5113495bSYour Name {
559*5113495bSYour Name 	return QDF_STATUS_E_NOSUPPORT;
560*5113495bSYour Name }
561*5113495bSYour Name #endif
562*5113495bSYour Name 
563*5113495bSYour Name /**
564*5113495bSYour Name  * ucfg_fwol_get_enable_secondary_rate() - Get enable secondary rate
565*5113495bSYour Name  * @psoc: pointer to the psoc object
566*5113495bSYour Name  * @enable_secondary_rate: Pointer to return enable secondary rate value
567*5113495bSYour Name  *
568*5113495bSYour Name  * Return: QDF Status
569*5113495bSYour Name  */
570*5113495bSYour Name QDF_STATUS ucfg_fwol_get_enable_secondary_rate(struct wlan_objmgr_psoc *psoc,
571*5113495bSYour Name 					       uint32_t *enable_secondary_rate);
572*5113495bSYour Name /**
573*5113495bSYour Name  * ucfg_fwol_get_all_adaptive_dwelltime_params() - Get all adaptive
574*5113495bSYour Name  *						   dwelltime_params
575*5113495bSYour Name  * @psoc: Pointer to psoc object
576*5113495bSYour Name  * @dwelltime_params: Pointer to struct adaptive_dwelltime_params
577*5113495bSYour Name  *
578*5113495bSYour Name  * Return: QDF Status
579*5113495bSYour Name  */
580*5113495bSYour Name QDF_STATUS
581*5113495bSYour Name ucfg_fwol_get_all_adaptive_dwelltime_params(
582*5113495bSYour Name 			struct wlan_objmgr_psoc *psoc,
583*5113495bSYour Name 			struct adaptive_dwelltime_params *dwelltime_params);
584*5113495bSYour Name /**
585*5113495bSYour Name  * ucfg_fwol_get_adaptive_dwell_mode_enabled() - API to globally disable/enable
586*5113495bSYour Name  *                                               the adaptive dwell config.
587*5113495bSYour Name  * Acceptable values for this:
588*5113495bSYour Name  * 0: Config is disabled
589*5113495bSYour Name  * 1: Config is enabled
590*5113495bSYour Name  *
591*5113495bSYour Name  * @psoc: pointer to psoc object
592*5113495bSYour Name  * @adaptive_dwell_mode_enabled: adaptive dwell mode enable/disable
593*5113495bSYour Name  *
594*5113495bSYour Name  * Return: QDF Status
595*5113495bSYour Name  */
596*5113495bSYour Name QDF_STATUS
597*5113495bSYour Name ucfg_fwol_get_adaptive_dwell_mode_enabled(struct wlan_objmgr_psoc *psoc,
598*5113495bSYour Name 					  bool *adaptive_dwell_mode_enabled);
599*5113495bSYour Name 
600*5113495bSYour Name /**
601*5113495bSYour Name  * ucfg_fwol_get_global_adapt_dwelltime_mode() - API to set default
602*5113495bSYour Name  *                                               adaptive mode.
603*5113495bSYour Name  * It will be used if any of the scan dwell mode is set to default.
604*5113495bSYour Name  * For uses : see enum scan_dwelltime_adaptive_mode
605*5113495bSYour Name  *
606*5113495bSYour Name  * @psoc: pointer to psoc object
607*5113495bSYour Name  * @global_adapt_dwelltime_mode: global adaptive dwell mode value
608*5113495bSYour Name  *
609*5113495bSYour Name  * Return: QDF Status
610*5113495bSYour Name  */
611*5113495bSYour Name QDF_STATUS
612*5113495bSYour Name ucfg_fwol_get_global_adapt_dwelltime_mode(struct wlan_objmgr_psoc *psoc,
613*5113495bSYour Name 					  uint8_t *global_adapt_dwelltime_mode);
614*5113495bSYour Name /**
615*5113495bSYour Name  * ucfg_fwol_get_adapt_dwell_lpf_weight() - API to get weight to calculate
616*5113495bSYour Name  *                       the average low pass filter for channel congestion
617*5113495bSYour Name  * @psoc: pointer to psoc object
618*5113495bSYour Name  * @adapt_dwell_lpf_weight: adaptive low pass filter weight
619*5113495bSYour Name  *
620*5113495bSYour Name  * Return: QDF Status
621*5113495bSYour Name  */
622*5113495bSYour Name QDF_STATUS
623*5113495bSYour Name ucfg_fwol_get_adapt_dwell_lpf_weight(struct wlan_objmgr_psoc *psoc,
624*5113495bSYour Name 				     uint8_t *adapt_dwell_lpf_weight);
625*5113495bSYour Name 
626*5113495bSYour Name /**
627*5113495bSYour Name  * ucfg_fwol_get_adapt_dwell_passive_mon_intval() - API to get interval value
628*5113495bSYour Name  *                      for montitoring wifi activity in passive scan in msec.
629*5113495bSYour Name  * @psoc: pointer to psoc object
630*5113495bSYour Name  * @adapt_dwell_passive_mon_intval: adaptive monitor interval in passive scan
631*5113495bSYour Name  *
632*5113495bSYour Name  * Return: QDF Status
633*5113495bSYour Name  */
634*5113495bSYour Name QDF_STATUS
635*5113495bSYour Name ucfg_fwol_get_adapt_dwell_passive_mon_intval(
636*5113495bSYour Name 				struct wlan_objmgr_psoc *psoc,
637*5113495bSYour Name 				uint8_t *adapt_dwell_passive_mon_intval);
638*5113495bSYour Name 
639*5113495bSYour Name /**
640*5113495bSYour Name  * ucfg_fwol_get_adapt_dwell_wifi_act_threshold - API to get % of wifi activity
641*5113495bSYour Name  *                                                used in passive scan
642*5113495bSYour Name  * @psoc: pointer to psoc object
643*5113495bSYour Name  * @adapt_dwell_wifi_act_threshold: percent of wifi activity in passive scan
644*5113495bSYour Name  *
645*5113495bSYour Name  * Return: QDF Status
646*5113495bSYour Name  */
647*5113495bSYour Name QDF_STATUS ucfg_fwol_get_adapt_dwell_wifi_act_threshold(
648*5113495bSYour Name 				struct wlan_objmgr_psoc *psoc,
649*5113495bSYour Name 				uint8_t *adapt_dwell_wifi_act_threshold);
650*5113495bSYour Name 
651*5113495bSYour Name /**
652*5113495bSYour Name  * ucfg_fwol_init_adapt_dwelltime_in_cfg - API to initialize adaptive
653*5113495bSYour Name  *                                         dwell params
654*5113495bSYour Name  * @psoc: pointer to psoc object
655*5113495bSYour Name  * @dwelltime_params: pointer to adaptive_dwelltime_params structure
656*5113495bSYour Name  *
657*5113495bSYour Name  * Return: QDF Status
658*5113495bSYour Name  */
659*5113495bSYour Name static inline QDF_STATUS
ucfg_fwol_init_adapt_dwelltime_in_cfg(struct wlan_objmgr_psoc * psoc,struct adaptive_dwelltime_params * dwelltime_params)660*5113495bSYour Name ucfg_fwol_init_adapt_dwelltime_in_cfg(
661*5113495bSYour Name 			struct wlan_objmgr_psoc *psoc,
662*5113495bSYour Name 			struct adaptive_dwelltime_params *dwelltime_params)
663*5113495bSYour Name {
664*5113495bSYour Name 	return fwol_init_adapt_dwelltime_in_cfg(psoc, dwelltime_params);
665*5113495bSYour Name }
666*5113495bSYour Name 
667*5113495bSYour Name /**
668*5113495bSYour Name  * ucfg_fwol_set_adaptive_dwelltime_config - API to set adaptive
669*5113495bSYour Name  *                                           dwell params config
670*5113495bSYour Name  * @dwelltime_params: adaptive_dwelltime_params structure
671*5113495bSYour Name  *
672*5113495bSYour Name  * Return: QDF Status
673*5113495bSYour Name  */
674*5113495bSYour Name static inline QDF_STATUS
ucfg_fwol_set_adaptive_dwelltime_config(struct adaptive_dwelltime_params * dwelltime_params)675*5113495bSYour Name ucfg_fwol_set_adaptive_dwelltime_config(
676*5113495bSYour Name 			struct adaptive_dwelltime_params *dwelltime_params)
677*5113495bSYour Name {
678*5113495bSYour Name 	return fwol_set_adaptive_dwelltime_config(dwelltime_params);
679*5113495bSYour Name }
680*5113495bSYour Name 
681*5113495bSYour Name #ifdef WLAN_FEATURE_ELNA
682*5113495bSYour Name /**
683*5113495bSYour Name  * ucfg_fwol_set_elna_bypass() - send set eLNA bypass request
684*5113495bSYour Name  * @vdev: vdev handle
685*5113495bSYour Name  * @req: set eLNA bypass request
686*5113495bSYour Name  *
687*5113495bSYour Name  * Return: QDF_STATUS_SUCCESS on success
688*5113495bSYour Name  */
689*5113495bSYour Name QDF_STATUS ucfg_fwol_set_elna_bypass(struct wlan_objmgr_vdev *vdev,
690*5113495bSYour Name 				     struct set_elna_bypass_request *req);
691*5113495bSYour Name 
692*5113495bSYour Name /**
693*5113495bSYour Name  * ucfg_fwol_get_elna_bypass() - send get eLNA bypass request
694*5113495bSYour Name  * @vdev: vdev handle
695*5113495bSYour Name  * @req: get eLNA bypass request
696*5113495bSYour Name  * @callback: get eLNA bypass response callback
697*5113495bSYour Name  * @context: request manager context
698*5113495bSYour Name  *
699*5113495bSYour Name  * Return: QDF_STATUS_SUCCESS on success
700*5113495bSYour Name  */
701*5113495bSYour Name QDF_STATUS ucfg_fwol_get_elna_bypass(struct wlan_objmgr_vdev *vdev,
702*5113495bSYour Name 				     struct get_elna_bypass_request *req,
703*5113495bSYour Name 				     void (*callback)(void *context,
704*5113495bSYour Name 				     struct get_elna_bypass_response *response),
705*5113495bSYour Name 				     void *context);
706*5113495bSYour Name #endif /* WLAN_FEATURE_ELNA */
707*5113495bSYour Name 
708*5113495bSYour Name #ifdef WLAN_SEND_DSCP_UP_MAP_TO_FW
709*5113495bSYour Name /**
710*5113495bSYour Name  * ucfg_fwol_send_dscp_up_map_to_fw() - send dscp_up map to FW
711*5113495bSYour Name  * @vdev: vdev handle
712*5113495bSYour Name  * @dscp_to_up_map: DSCP to UP map array
713*5113495bSYour Name  *
714*5113495bSYour Name  * Return: QDF_STATUS_SUCCESS on success
715*5113495bSYour Name  */
716*5113495bSYour Name QDF_STATUS ucfg_fwol_send_dscp_up_map_to_fw(
717*5113495bSYour Name 		struct wlan_objmgr_vdev *vdev,
718*5113495bSYour Name 		uint32_t *dscp_to_up_map);
719*5113495bSYour Name #else
720*5113495bSYour Name static inline
ucfg_fwol_send_dscp_up_map_to_fw(struct wlan_objmgr_vdev * vdev,uint32_t * dscp_to_up_map)721*5113495bSYour Name QDF_STATUS ucfg_fwol_send_dscp_up_map_to_fw(
722*5113495bSYour Name 		struct wlan_objmgr_vdev *vdev,
723*5113495bSYour Name 		uint32_t *dscp_to_up_map)
724*5113495bSYour Name {
725*5113495bSYour Name 	return QDF_STATUS_SUCCESS;
726*5113495bSYour Name }
727*5113495bSYour Name #endif
728*5113495bSYour Name 
729*5113495bSYour Name #ifdef WLAN_FEATURE_MDNS_OFFLOAD
730*5113495bSYour Name /**
731*5113495bSYour Name  * ucfg_fwol_set_mdns_config() - set mdns config
732*5113495bSYour Name  * @psoc: pointer to psoc object
733*5113495bSYour Name  * @mdns_info: mdns config info pointer
734*5113495bSYour Name  *
735*5113495bSYour Name  * Return: QDF_STATUS_SUCCESS on success
736*5113495bSYour Name  */
737*5113495bSYour Name QDF_STATUS ucfg_fwol_set_mdns_config(struct wlan_objmgr_psoc *psoc,
738*5113495bSYour Name 				     struct mdns_config_info *mdns_info);
739*5113495bSYour Name #endif /* WLAN_FEATURE_MDNS_OFFLOAD */
740*5113495bSYour Name 
741*5113495bSYour Name /**
742*5113495bSYour Name  * ucfg_fwol_update_fw_cap_info - API to update fwol capability info
743*5113495bSYour Name  * @psoc: pointer to psoc object
744*5113495bSYour Name  * @caps: pointer to wlan_fwol_capability_info struct
745*5113495bSYour Name  *
746*5113495bSYour Name  * Used to update fwol capability info.
747*5113495bSYour Name  *
748*5113495bSYour Name  * Return: void
749*5113495bSYour Name  */
750*5113495bSYour Name void ucfg_fwol_update_fw_cap_info(struct wlan_objmgr_psoc *psoc,
751*5113495bSYour Name 				  struct wlan_fwol_capability_info *caps);
752*5113495bSYour Name 
753*5113495bSYour Name #ifdef THERMAL_STATS_SUPPORT
754*5113495bSYour Name QDF_STATUS ucfg_fwol_send_get_thermal_stats_cmd(struct wlan_objmgr_psoc *psoc,
755*5113495bSYour Name 				      enum thermal_stats_request_type req_type,
756*5113495bSYour Name 				      void (*callback)(void *context,
757*5113495bSYour Name 				      struct thermal_throttle_info *response),
758*5113495bSYour Name 				      void *context);
759*5113495bSYour Name #endif /* THERMAL_STATS_SUPPORT */
760*5113495bSYour Name 
761*5113495bSYour Name /**
762*5113495bSYour Name  * ucfg_fwol_configure_global_params - API to configure global params
763*5113495bSYour Name  * @psoc: pointer to psoc object
764*5113495bSYour Name  * @pdev: pointer to pdev object
765*5113495bSYour Name  *
766*5113495bSYour Name  * Used to configure global firmware params. This is invoked from hdd during
767*5113495bSYour Name  * bootup.
768*5113495bSYour Name  *
769*5113495bSYour Name  * Return: QDF Status
770*5113495bSYour Name  */
771*5113495bSYour Name QDF_STATUS ucfg_fwol_configure_global_params(struct wlan_objmgr_psoc *psoc,
772*5113495bSYour Name 					     struct wlan_objmgr_pdev *pdev);
773*5113495bSYour Name 
774*5113495bSYour Name /**
775*5113495bSYour Name  * ucfg_fwol_set_ilp_config - API to configure Interface Low Power (ILP)
776*5113495bSYour Name  * @psoc: pointer to psoc object
777*5113495bSYour Name  * @pdev: pointer to pdev object
778*5113495bSYour Name  * @enable: enable
779*5113495bSYour Name  *
780*5113495bSYour Name  * This API is used to enable/disable Interface Low Power (IPL) feature.
781*5113495bSYour Name  *
782*5113495bSYour Name  * Return: QDF Status
783*5113495bSYour Name  */
784*5113495bSYour Name QDF_STATUS ucfg_fwol_set_ilp_config(struct wlan_objmgr_psoc *psoc,
785*5113495bSYour Name 				    struct wlan_objmgr_pdev *pdev,
786*5113495bSYour Name 				    uint32_t enable);
787*5113495bSYour Name 
788*5113495bSYour Name /**
789*5113495bSYour Name  * ucfg_fwol_configure_vdev_params - API to configure vdev specific params
790*5113495bSYour Name  * @psoc: pointer to psoc object
791*5113495bSYour Name  * @vdev: pointer to vdev object
792*5113495bSYour Name  *
793*5113495bSYour Name  * Used to configure per vdev firmware params based on device mode. This is
794*5113495bSYour Name  * invoked from hdd during vdev creation.
795*5113495bSYour Name  *
796*5113495bSYour Name  * Return: QDF Status
797*5113495bSYour Name  */
798*5113495bSYour Name QDF_STATUS ucfg_fwol_configure_vdev_params(struct wlan_objmgr_psoc *psoc,
799*5113495bSYour Name 					   struct wlan_objmgr_vdev *vdev);
800*5113495bSYour Name #else
ucfg_fwol_psoc_open(struct wlan_objmgr_psoc * psoc)801*5113495bSYour Name static inline QDF_STATUS ucfg_fwol_psoc_open(struct wlan_objmgr_psoc *psoc)
802*5113495bSYour Name {
803*5113495bSYour Name 	return QDF_STATUS_SUCCESS;
804*5113495bSYour Name }
805*5113495bSYour Name 
ucfg_fwol_psoc_close(struct wlan_objmgr_psoc * psoc)806*5113495bSYour Name static inline void ucfg_fwol_psoc_close(struct wlan_objmgr_psoc *psoc)
807*5113495bSYour Name {
808*5113495bSYour Name }
809*5113495bSYour Name 
ucfg_fwol_psoc_enable(struct wlan_objmgr_psoc * psoc)810*5113495bSYour Name static inline QDF_STATUS ucfg_fwol_psoc_enable(struct wlan_objmgr_psoc *psoc)
811*5113495bSYour Name {
812*5113495bSYour Name 	return QDF_STATUS_SUCCESS;
813*5113495bSYour Name }
814*5113495bSYour Name 
ucfg_fwol_psoc_disable(struct wlan_objmgr_psoc * psoc)815*5113495bSYour Name static inline void ucfg_fwol_psoc_disable(struct wlan_objmgr_psoc *psoc)
816*5113495bSYour Name {
817*5113495bSYour Name }
818*5113495bSYour Name 
ucfg_fwol_init(void)819*5113495bSYour Name static inline QDF_STATUS ucfg_fwol_init(void)
820*5113495bSYour Name {
821*5113495bSYour Name 	return QDF_STATUS_SUCCESS;
822*5113495bSYour Name }
823*5113495bSYour Name 
ucfg_fwol_deinit(void)824*5113495bSYour Name static inline void ucfg_fwol_deinit(void)
825*5113495bSYour Name {
826*5113495bSYour Name }
827*5113495bSYour Name 
ucfg_fwol_thermal_register_callbacks(struct wlan_objmgr_psoc * psoc,struct fwol_thermal_callbacks * cb)828*5113495bSYour Name static inline QDF_STATUS ucfg_fwol_thermal_register_callbacks(
829*5113495bSYour Name 				struct wlan_objmgr_psoc *psoc,
830*5113495bSYour Name 				struct fwol_thermal_callbacks *cb)
831*5113495bSYour Name {
832*5113495bSYour Name 	return QDF_STATUS_SUCCESS;
833*5113495bSYour Name }
834*5113495bSYour Name 
ucfg_fwol_thermal_unregister_callbacks(struct wlan_objmgr_psoc * psoc)835*5113495bSYour Name static inline QDF_STATUS ucfg_fwol_thermal_unregister_callbacks(
836*5113495bSYour Name 				struct wlan_objmgr_psoc *psoc)
837*5113495bSYour Name {
838*5113495bSYour Name 	return QDF_STATUS_SUCCESS;
839*5113495bSYour Name }
840*5113495bSYour Name 
841*5113495bSYour Name static inline QDF_STATUS
ucfg_fwol_thermal_get_target_level(struct wlan_objmgr_psoc * psoc,enum thermal_throttle_level * level)842*5113495bSYour Name ucfg_fwol_thermal_get_target_level(struct wlan_objmgr_psoc *psoc,
843*5113495bSYour Name 				   enum thermal_throttle_level *level)
844*5113495bSYour Name {
845*5113495bSYour Name 	return QDF_STATUS_E_FAILURE;
846*5113495bSYour Name }
847*5113495bSYour Name 
848*5113495bSYour Name static inline QDF_STATUS
ucfg_fwol_get_coex_config_params(struct wlan_objmgr_psoc * psoc,struct wlan_fwol_coex_config * coex_config)849*5113495bSYour Name ucfg_fwol_get_coex_config_params(struct wlan_objmgr_psoc *psoc,
850*5113495bSYour Name 				 struct wlan_fwol_coex_config *coex_config)
851*5113495bSYour Name {
852*5113495bSYour Name 	return QDF_STATUS_E_FAILURE;
853*5113495bSYour Name }
854*5113495bSYour Name 
855*5113495bSYour Name static inline QDF_STATUS
ucfg_fwol_get_thermal_temp(struct wlan_objmgr_psoc * psoc,struct wlan_fwol_thermal_temp * thermal_temp)856*5113495bSYour Name ucfg_fwol_get_thermal_temp(struct wlan_objmgr_psoc *psoc,
857*5113495bSYour Name 			   struct wlan_fwol_thermal_temp *thermal_temp)
858*5113495bSYour Name {
859*5113495bSYour Name 	return QDF_STATUS_E_FAILURE;
860*5113495bSYour Name }
861*5113495bSYour Name 
862*5113495bSYour Name static inline QDF_STATUS
ucfg_fwol_is_neighbor_report_req_supported(struct wlan_objmgr_psoc * psoc,bool * neighbor_report_req)863*5113495bSYour Name ucfg_fwol_is_neighbor_report_req_supported(struct wlan_objmgr_psoc *psoc,
864*5113495bSYour Name 					   bool *neighbor_report_req)
865*5113495bSYour Name {
866*5113495bSYour Name 	return QDF_STATUS_E_FAILURE;
867*5113495bSYour Name }
868*5113495bSYour Name 
869*5113495bSYour Name static inline QDF_STATUS
ucfg_fwol_get_ie_allowlist(struct wlan_objmgr_psoc * psoc,bool * ie_allowlist)870*5113495bSYour Name ucfg_fwol_get_ie_allowlist(struct wlan_objmgr_psoc *psoc, bool *ie_allowlist)
871*5113495bSYour Name {
872*5113495bSYour Name 	return QDF_STATUS_E_FAILURE;
873*5113495bSYour Name }
874*5113495bSYour Name 
875*5113495bSYour Name static inline QDF_STATUS
ucfg_fwol_set_ie_allowlist(struct wlan_objmgr_psoc * psoc,bool ie_allowlist)876*5113495bSYour Name ucfg_fwol_set_ie_allowlist(struct wlan_objmgr_psoc *psoc, bool ie_allowlist)
877*5113495bSYour Name {
878*5113495bSYour Name 	return QDF_STATUS_E_FAILURE;
879*5113495bSYour Name }
880*5113495bSYour Name 
881*5113495bSYour Name static inline QDF_STATUS
ucfg_fwol_get_all_allowlist_params(struct wlan_objmgr_psoc * psoc,struct wlan_fwol_ie_allowlist * allowlist)882*5113495bSYour Name ucfg_fwol_get_all_allowlist_params(struct wlan_objmgr_psoc *psoc,
883*5113495bSYour Name 				   struct wlan_fwol_ie_allowlist *allowlist)
884*5113495bSYour Name {
885*5113495bSYour Name 	return QDF_STATUS_E_FAILURE;
886*5113495bSYour Name }
887*5113495bSYour Name 
888*5113495bSYour Name static inline QDF_STATUS
ucfg_fwol_get_ani_enabled(struct wlan_objmgr_psoc * psoc,bool * ani_enabled)889*5113495bSYour Name ucfg_fwol_get_ani_enabled(struct wlan_objmgr_psoc *psoc,
890*5113495bSYour Name 			  bool *ani_enabled)
891*5113495bSYour Name {
892*5113495bSYour Name 	return QDF_STATUS_E_FAILURE;
893*5113495bSYour Name }
894*5113495bSYour Name 
895*5113495bSYour Name static inline QDF_STATUS
ucfg_fwol_get_pcie_config(struct wlan_objmgr_psoc * psoc,uint8_t * pcie_config)896*5113495bSYour Name ucfg_fwol_get_pcie_config(struct wlan_objmgr_psoc *psoc,
897*5113495bSYour Name 			  uint8_t *pcie_config)
898*5113495bSYour Name {
899*5113495bSYour Name 	return QDF_STATUS_E_FAILURE;
900*5113495bSYour Name }
901*5113495bSYour Name 
902*5113495bSYour Name static inline QDF_STATUS
ucfg_get_enable_rts_sifsbursting(struct wlan_objmgr_psoc * psoc,bool * enable_rts_sifsbursting)903*5113495bSYour Name ucfg_get_enable_rts_sifsbursting(struct wlan_objmgr_psoc *psoc,
904*5113495bSYour Name 				 bool *enable_rts_sifsbursting)
905*5113495bSYour Name {
906*5113495bSYour Name 	return QDF_STATUS_E_FAILURE;
907*5113495bSYour Name }
908*5113495bSYour Name 
909*5113495bSYour Name static inline QDF_STATUS
ucfg_get_max_mpdus_inampdu(struct wlan_objmgr_psoc * psoc,uint8_t * max_mpdus_inampdu)910*5113495bSYour Name ucfg_get_max_mpdus_inampdu(struct wlan_objmgr_psoc *psoc,
911*5113495bSYour Name 			   uint8_t *max_mpdus_inampdu)
912*5113495bSYour Name {
913*5113495bSYour Name 	return QDF_STATUS_E_FAILURE;
914*5113495bSYour Name }
915*5113495bSYour Name 
916*5113495bSYour Name static inline QDF_STATUS
ucfg_get_enable_phy_reg_retention(struct wlan_objmgr_psoc * psoc,uint8_t * enable_phy_reg_retention)917*5113495bSYour Name ucfg_get_enable_phy_reg_retention(struct wlan_objmgr_psoc *psoc,
918*5113495bSYour Name 				  uint8_t *enable_phy_reg_retention)
919*5113495bSYour Name {
920*5113495bSYour Name 	return QDF_STATUS_E_FAILURE;
921*5113495bSYour Name }
922*5113495bSYour Name 
923*5113495bSYour Name static inline QDF_STATUS
ucfg_get_upper_brssi_thresh(struct wlan_objmgr_psoc * psoc,uint16_t * upper_brssi_thresh)924*5113495bSYour Name ucfg_get_upper_brssi_thresh(struct wlan_objmgr_psoc *psoc,
925*5113495bSYour Name 			    uint16_t *upper_brssi_thresh)
926*5113495bSYour Name {
927*5113495bSYour Name 	return QDF_STATUS_E_FAILURE;
928*5113495bSYour Name }
929*5113495bSYour Name 
930*5113495bSYour Name static inline QDF_STATUS
ucfg_get_lower_brssi_thresh(struct wlan_objmgr_psoc * psoc,uint16_t * lower_brssi_thresh)931*5113495bSYour Name ucfg_get_lower_brssi_thresh(struct wlan_objmgr_psoc *psoc,
932*5113495bSYour Name 			    uint16_t *lower_brssi_thresh)
933*5113495bSYour Name {
934*5113495bSYour Name 	return QDF_STATUS_E_FAILURE;
935*5113495bSYour Name }
936*5113495bSYour Name 
937*5113495bSYour Name static inline QDF_STATUS
ucfg_get_enable_dtim_1chrx(struct wlan_objmgr_psoc * psoc,bool * enable_dtim_1chrx)938*5113495bSYour Name ucfg_get_enable_dtim_1chrx(struct wlan_objmgr_psoc *psoc,
939*5113495bSYour Name 			   bool *enable_dtim_1chrx)
940*5113495bSYour Name {
941*5113495bSYour Name 	return QDF_STATUS_E_FAILURE;
942*5113495bSYour Name }
943*5113495bSYour Name 
944*5113495bSYour Name static inline QDF_STATUS
ucfg_get_alternative_chainmask_enabled(struct wlan_objmgr_psoc * psoc,bool * alternative_chainmask_enabled)945*5113495bSYour Name ucfg_get_alternative_chainmask_enabled(struct wlan_objmgr_psoc *psoc,
946*5113495bSYour Name 				       bool *alternative_chainmask_enabled)
947*5113495bSYour Name {
948*5113495bSYour Name 	return QDF_STATUS_E_FAILURE;
949*5113495bSYour Name }
950*5113495bSYour Name 
951*5113495bSYour Name static inline QDF_STATUS
ucfg_get_smart_chainmask_enabled(struct wlan_objmgr_psoc * psoc,bool * smart_chainmask_enabled)952*5113495bSYour Name ucfg_get_smart_chainmask_enabled(struct wlan_objmgr_psoc *psoc,
953*5113495bSYour Name 				 bool *smart_chainmask_enabled)
954*5113495bSYour Name {
955*5113495bSYour Name 	return QDF_STATUS_E_FAILURE;
956*5113495bSYour Name }
957*5113495bSYour Name 
958*5113495bSYour Name static inline QDF_STATUS
ucfg_fwol_get_rts_profile(struct wlan_objmgr_psoc * psoc,uint16_t * get_rts_profile)959*5113495bSYour Name ucfg_fwol_get_rts_profile(struct wlan_objmgr_psoc *psoc,
960*5113495bSYour Name 			  uint16_t *get_rts_profile)
961*5113495bSYour Name {
962*5113495bSYour Name 	return QDF_STATUS_E_FAILURE;
963*5113495bSYour Name }
964*5113495bSYour Name 
965*5113495bSYour Name static inline QDF_STATUS
ucfg_fwol_get_enable_fw_log_level(struct wlan_objmgr_psoc * psoc,uint16_t * enable_fw_log_level)966*5113495bSYour Name ucfg_fwol_get_enable_fw_log_level(struct wlan_objmgr_psoc *psoc,
967*5113495bSYour Name 				  uint16_t *enable_fw_log_level)
968*5113495bSYour Name {
969*5113495bSYour Name 	return QDF_STATUS_E_FAILURE;
970*5113495bSYour Name }
971*5113495bSYour Name 
972*5113495bSYour Name static inline QDF_STATUS
ucfg_fwol_get_enable_fw_log_type(struct wlan_objmgr_psoc * psoc,uint16_t * enable_fw_log_type)973*5113495bSYour Name ucfg_fwol_get_enable_fw_log_type(struct wlan_objmgr_psoc *psoc,
974*5113495bSYour Name 				 uint16_t *enable_fw_log_type)
975*5113495bSYour Name {
976*5113495bSYour Name 	return QDF_STATUS_E_FAILURE;
977*5113495bSYour Name }
978*5113495bSYour Name 
979*5113495bSYour Name static inline QDF_STATUS
ucfg_fwol_get_enable_fw_module_log_level(struct wlan_objmgr_psoc * psoc,uint8_t ** enable_fw_module_log_level,uint8_t * enable_fw_module_log_level_num)980*5113495bSYour Name ucfg_fwol_get_enable_fw_module_log_level(
981*5113495bSYour Name 				struct wlan_objmgr_psoc *psoc,
982*5113495bSYour Name 				uint8_t **enable_fw_module_log_level,
983*5113495bSYour Name 				uint8_t *enable_fw_module_log_level_num)
984*5113495bSYour Name {
985*5113495bSYour Name 	return QDF_STATUS_E_FAILURE;
986*5113495bSYour Name }
987*5113495bSYour Name 
988*5113495bSYour Name static inline QDF_STATUS
ucfg_fwol_get_sap_xlna_bypass(struct wlan_objmgr_psoc * psoc,uint8_t * sap_xlna_bypass)989*5113495bSYour Name ucfg_fwol_get_sap_xlna_bypass(struct wlan_objmgr_psoc *psoc,
990*5113495bSYour Name 			      uint8_t *sap_xlna_bypass)
991*5113495bSYour Name {
992*5113495bSYour Name 	return QDF_STATUS_E_FAILURE;
993*5113495bSYour Name }
994*5113495bSYour Name 
995*5113495bSYour Name static inline QDF_STATUS
ucfg_fwol_get_tsf_gpio_pin(struct wlan_objmgr_psoc * psoc,uint32_t * tsf_gpio_pin)996*5113495bSYour Name ucfg_fwol_get_tsf_gpio_pin(struct wlan_objmgr_psoc *psoc,
997*5113495bSYour Name 			   uint32_t *tsf_gpio_pin)
998*5113495bSYour Name {
999*5113495bSYour Name 	return QDF_STATUS_E_FAILURE;
1000*5113495bSYour Name }
1001*5113495bSYour Name 
1002*5113495bSYour Name static inline QDF_STATUS
ucfg_fwol_get_tsf_ptp_options(struct wlan_objmgr_psoc * psoc,uint32_t * tsf_ptp_options)1003*5113495bSYour Name ucfg_fwol_get_tsf_ptp_options(struct wlan_objmgr_psoc *psoc,
1004*5113495bSYour Name 			      uint32_t *tsf_ptp_options)
1005*5113495bSYour Name {
1006*5113495bSYour Name 	return QDF_STATUS_E_FAILURE;
1007*5113495bSYour Name }
1008*5113495bSYour Name 
ucfg_fwol_get_sae_enable(struct wlan_objmgr_psoc * psoc)1009*5113495bSYour Name static inline bool ucfg_fwol_get_sae_enable(struct wlan_objmgr_psoc *psoc)
1010*5113495bSYour Name {
1011*5113495bSYour Name 	return false;
1012*5113495bSYour Name }
1013*5113495bSYour Name 
ucfg_fwol_get_gcmp_enable(struct wlan_objmgr_psoc * psoc)1014*5113495bSYour Name static inline bool ucfg_fwol_get_gcmp_enable(struct wlan_objmgr_psoc *psoc)
1015*5113495bSYour Name {
1016*5113495bSYour Name 	return false;
1017*5113495bSYour Name }
1018*5113495bSYour Name 
1019*5113495bSYour Name static inline QDF_STATUS
ucfg_fwol_get_enable_tx_sch_delay(struct wlan_objmgr_psoc * psoc,uint8_t * enable_tx_sch_delay)1020*5113495bSYour Name ucfg_fwol_get_enable_tx_sch_delay(struct wlan_objmgr_psoc *psoc,
1021*5113495bSYour Name 				  uint8_t *enable_tx_sch_delay)
1022*5113495bSYour Name {
1023*5113495bSYour Name 	return QDF_STATUS_E_FAILURE;
1024*5113495bSYour Name }
1025*5113495bSYour Name 
1026*5113495bSYour Name static inline QDF_STATUS
ucfg_fwol_get_enable_secondary_rate(struct wlan_objmgr_psoc * psoc,uint32_t * enable_secondary_rate)1027*5113495bSYour Name ucfg_fwol_get_enable_secondary_rate(struct wlan_objmgr_psoc *psoc,
1028*5113495bSYour Name 				    uint32_t *enable_secondary_rate)
1029*5113495bSYour Name {
1030*5113495bSYour Name 	return QDF_STATUS_E_FAILURE;
1031*5113495bSYour Name }
1032*5113495bSYour Name 
1033*5113495bSYour Name static inline QDF_STATUS
ucfg_fwol_get_all_adaptive_dwelltime_params(struct wlan_objmgr_psoc * psoc,struct adaptive_dwelltime_params * dwelltime_params)1034*5113495bSYour Name ucfg_fwol_get_all_adaptive_dwelltime_params(
1035*5113495bSYour Name 			struct wlan_objmgr_psoc *psoc,
1036*5113495bSYour Name 			struct adaptive_dwelltime_params *dwelltime_params)
1037*5113495bSYour Name {
1038*5113495bSYour Name 	return QDF_STATUS_E_FAILURE;
1039*5113495bSYour Name }
1040*5113495bSYour Name 
1041*5113495bSYour Name static inline QDF_STATUS
ucfg_fwol_get_adaptive_dwell_mode_enabled(struct wlan_objmgr_psoc * psoc,bool * adaptive_dwell_mode_enabled)1042*5113495bSYour Name ucfg_fwol_get_adaptive_dwell_mode_enabled(struct wlan_objmgr_psoc *psoc,
1043*5113495bSYour Name 					  bool *adaptive_dwell_mode_enabled)
1044*5113495bSYour Name {
1045*5113495bSYour Name 	return QDF_STATUS_E_FAILURE;
1046*5113495bSYour Name }
1047*5113495bSYour Name 
1048*5113495bSYour Name static inline QDF_STATUS
ucfg_fwol_get_global_adapt_dwelltime_mode(struct wlan_objmgr_psoc * psoc,uint8_t * global_adapt_dwelltime_mode)1049*5113495bSYour Name ucfg_fwol_get_global_adapt_dwelltime_mode(struct wlan_objmgr_psoc *psoc,
1050*5113495bSYour Name 					  uint8_t *global_adapt_dwelltime_mode)
1051*5113495bSYour Name {
1052*5113495bSYour Name 	return QDF_STATUS_E_FAILURE;
1053*5113495bSYour Name }
1054*5113495bSYour Name 
1055*5113495bSYour Name static inline QDF_STATUS
ucfg_fwol_get_adapt_dwell_lpf_weight(struct wlan_objmgr_psoc * psoc,uint8_t * adapt_dwell_lpf_weight)1056*5113495bSYour Name ucfg_fwol_get_adapt_dwell_lpf_weight(struct wlan_objmgr_psoc *psoc,
1057*5113495bSYour Name 				     uint8_t *adapt_dwell_lpf_weight)
1058*5113495bSYour Name {
1059*5113495bSYour Name 	return QDF_STATUS_E_FAILURE;
1060*5113495bSYour Name }
1061*5113495bSYour Name 
1062*5113495bSYour Name static inline QDF_STATUS
ucfg_fwol_get_adapt_dwell_passive_mon_intval(struct wlan_objmgr_psoc * psoc,uint8_t * adapt_dwell_passive_mon_intval)1063*5113495bSYour Name ucfg_fwol_get_adapt_dwell_passive_mon_intval(
1064*5113495bSYour Name 				struct wlan_objmgr_psoc *psoc,
1065*5113495bSYour Name 				uint8_t *adapt_dwell_passive_mon_intval)
1066*5113495bSYour Name {
1067*5113495bSYour Name 	return QDF_STATUS_E_FAILURE;
1068*5113495bSYour Name }
1069*5113495bSYour Name 
1070*5113495bSYour Name static inline QDF_STATUS
ucfg_fwol_get_adapt_dwell_wifi_act_threshold(struct wlan_objmgr_psoc * psoc,uint8_t * adapt_dwell_wifi_act_threshold)1071*5113495bSYour Name ucfg_fwol_get_adapt_dwell_wifi_act_threshold(
1072*5113495bSYour Name 				struct wlan_objmgr_psoc *psoc,
1073*5113495bSYour Name 				uint8_t *adapt_dwell_wifi_act_threshold)
1074*5113495bSYour Name {
1075*5113495bSYour Name 	return QDF_STATUS_E_FAILURE;
1076*5113495bSYour Name }
1077*5113495bSYour Name 
1078*5113495bSYour Name static inline QDF_STATUS
ucfg_fwol_init_adapt_dwelltime_in_cfg(struct wlan_objmgr_psoc * psoc,struct adaptive_dwelltime_params * dwelltime_params)1079*5113495bSYour Name ucfg_fwol_init_adapt_dwelltime_in_cfg(
1080*5113495bSYour Name 			struct wlan_objmgr_psoc *psoc,
1081*5113495bSYour Name 			struct adaptive_dwelltime_params *dwelltime_params)
1082*5113495bSYour Name {
1083*5113495bSYour Name 	return QDF_STATUS_E_FAILURE;
1084*5113495bSYour Name }
1085*5113495bSYour Name 
1086*5113495bSYour Name static inline QDF_STATUS
ucfg_fwol_set_adaptive_dwelltime_config(struct adaptive_dwelltime_params * dwelltime_params)1087*5113495bSYour Name ucfg_fwol_set_adaptive_dwelltime_config(
1088*5113495bSYour Name 			struct adaptive_dwelltime_params *dwelltime_params)
1089*5113495bSYour Name {
1090*5113495bSYour Name 	return QDF_STATUS_E_FAILURE;
1091*5113495bSYour Name }
1092*5113495bSYour Name 
1093*5113495bSYour Name #ifdef FEATURE_WLAN_RA_FILTERING
1094*5113495bSYour Name static inline QDF_STATUS
ucfg_fwol_set_is_rate_limit_enabled(struct wlan_objmgr_psoc * psoc,bool is_rate_limit_enabled)1095*5113495bSYour Name ucfg_fwol_set_is_rate_limit_enabled(struct wlan_objmgr_psoc *psoc,
1096*5113495bSYour Name 				    bool is_rate_limit_enabled)
1097*5113495bSYour Name {
1098*5113495bSYour Name 	return QDF_STATUS_E_FAILURE;
1099*5113495bSYour Name }
1100*5113495bSYour Name 
1101*5113495bSYour Name static inline QDF_STATUS
ucfg_fwol_get_is_rate_limit_enabled(struct wlan_objmgr_psoc * psoc,bool * is_rate_limit_enabled)1102*5113495bSYour Name ucfg_fwol_get_is_rate_limit_enabled(struct wlan_objmgr_psoc *psoc,
1103*5113495bSYour Name 				    bool *is_rate_limit_enabled)
1104*5113495bSYour Name {
1105*5113495bSYour Name 	return QDF_STATUS_E_FAILURE;
1106*5113495bSYour Name }
1107*5113495bSYour Name #endif /* FEATURE_WLAN_RA_FILTERING */
1108*5113495bSYour Name 
1109*5113495bSYour Name static inline QDF_STATUS
ucfg_fwol_configure_global_params(struct wlan_objmgr_psoc * psoc,struct wlan_objmgr_pdev * pdev)1110*5113495bSYour Name ucfg_fwol_configure_global_params(struct wlan_objmgr_psoc *psoc,
1111*5113495bSYour Name 				  struct wlan_objmgr_pdev *pdev)
1112*5113495bSYour Name {
1113*5113495bSYour Name 	return QDF_STATUS_E_FAILURE;
1114*5113495bSYour Name }
1115*5113495bSYour Name 
1116*5113495bSYour Name static inline QDF_STATUS
ucfg_fwol_configure_vdev_params(struct wlan_objmgr_psoc * psoc,struct wlan_objmgr_vdev * vdev)1117*5113495bSYour Name ucfg_fwol_configure_vdev_params(struct wlan_objmgr_psoc *psoc,
1118*5113495bSYour Name 				struct wlan_objmgr_vdev *vdev)
1119*5113495bSYour Name {
1120*5113495bSYour Name 	return QDF_STATUS_E_FAILURE;
1121*5113495bSYour Name }
1122*5113495bSYour Name 
1123*5113495bSYour Name #endif /* WLAN_FW_OFFLOAD */
1124*5113495bSYour Name 
1125*5113495bSYour Name #endif /* _WLAN_FWOL_UCFG_API_H_ */
1126