blob: fed8c192154865e77f50461aae0cc264d6951ced [file] [log] [blame]
Mukul Sharmad75a6672017-06-22 15:40:53 +05301/*
Jeff Johnsonb4c29962017-10-07 19:35:14 -07002 * Copyright (c) 2017 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 */
Mukul Sharmad75a6672017-06-22 15:40:53 +053018/**
19 * DOC: Declare ns offload feature API's
20 */
21
22#ifndef _WLAN_PMO_NS_H_
23#define _WLAN_PMO_NS_H_
24
25#include "wlan_pmo_common_public_struct.h"
26#include "wlan_pmo_ns_public_struct.h"
27
28/**
29 * pmo_core_cache_ns_offload_req() - API to cache ns req in pmo vdev priv ctx
30 * @ns_req: ns offload request
31 *
32 * API to cache ns offload in pmo vdev priv ctx
33 *
34 * Return:QDF_STATUS_SUCCESS in case of success else return error
35 */
36QDF_STATUS pmo_core_cache_ns_offload_req(struct pmo_ns_req *ns_req);
37
38/**
39 * pmo_core_flush_ns_offload_req() - API to flush ns req from pmo vdev priv ctx
40 * @vdev: vdev objmgr handle
41 *
42 * API to flush ns offload from pmo vdev priv ctx
43 *
44 * Return: QDF_STATUS_SUCCESS in case of success else return error
45 */
46QDF_STATUS pmo_core_flush_ns_offload_req(struct wlan_objmgr_vdev *vdev);
47
48/**
49 * pmo_core_enable_ns_offload_in_fwr() - API to enable ns offload in fwr
50 * @vdev: objmgr vdev
51 * @trigger: trigger reason enable ns offload
52 *
53 * API to enable ns offload in fwr from vdev priv ctx
54 *
55 * Return: QDF_STATUS_SUCCESS in case of success else return error
56 */
57QDF_STATUS pmo_core_enable_ns_offload_in_fwr(struct wlan_objmgr_vdev *vdev,
58 enum pmo_offload_trigger trigger);
59
60/**
61 * pmo_core_disable_ns_offload_in_fwr() - API to disable ns offload in fwr
62 * @vdev: objmgr vdev
63 * @trigger: trigger reason disable ns offload
64 *
65 * API to disable arp offload in fwr
66 *
67 * Return: QDF_STATUS_SUCCESS in case of success else return error
68 */
69QDF_STATUS pmo_core_disable_ns_offload_in_fwr(struct wlan_objmgr_vdev *vdev,
70 enum pmo_offload_trigger trigger);
71
72#endif /* end of _WLAN_PMO_NS_H_ */