blob: 2c6a101b7641285d201db1c8868e40e6f87d8520 [file] [log] [blame]
Jeff Johnson295189b2012-06-20 16:38:30 -07001/*
Kiet Lam842dad02014-02-18 18:44:02 -08002 * Copyright (c) 2012-2013 The Linux Foundation. All rights reserved.
3 *
4 * Previously licensed under the ISC license by Qualcomm Atheros, Inc.
5 *
6 *
7 * Permission to use, copy, modify, and/or distribute this software for
8 * any purpose with or without fee is hereby granted, provided that the
9 * above copyright notice and this permission notice appear in all
10 * copies.
11 *
12 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
13 * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
14 * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
15 * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
16 * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
17 * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
18 * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
19 * PERFORMANCE OF THIS SOFTWARE.
Gopichand Nakkala92f07d82013-01-08 21:16:34 -080020 */
Kiet Lam842dad02014-02-18 18:44:02 -080021
22/*
23 * This file was originally distributed by Qualcomm Atheros, Inc.
24 * under proprietary terms before Copyright ownership was assigned
25 * to the Linux Foundation.
26 */
27
Jeff Johnson295189b2012-06-20 16:38:30 -070028#ifndef WLAN_QCT_WLANBAP_API_TIMER_H
29#define WLAN_QCT_WLANBAP_API_TIMER_H
30
31/*===========================================================================
32
33 W L A N B T - A M P P A L L A Y E R
34 T I M E R S E R V I C E S A P I
35
36
37DESCRIPTION
38 This file contains the timer APIs used by the wlan BT-AMP PAL layer
39 module.
40
41
Jeff Johnson295189b2012-06-20 16:38:30 -070042===========================================================================*/
43
44
45/*===========================================================================
46
47 EDIT HISTORY FOR FILE
48
49
50 This section contains comments describing changes made to the module.
51 Notice that changes are listed in reverse chronological order.
52
53
54 $Header: /cygdrive/e/Builds/M7201JSDCAAPAD52240B/WM/platform/msm7200/Src/Drivers/SD/ClientDrivers/WLAN/QCT/CORE/BAP/src/bapApiTimer.h,v 1.1 2008/11/21 20:30:20 jzmuda Exp jzmuda $ $DateTime: $ $Author: jzmuda $
55
56
57when who what, where, why
58-------- --- ----------------------------------------------------------
5910/23/08 jez Created module.
60
61===========================================================================*/
62
63
64
65/*===========================================================================
66
67 INCLUDE FILES FOR MODULE
68
69===========================================================================*/
70
71/*----------------------------------------------------------------------------
72 * Include Files
73 * -------------------------------------------------------------------------*/
74// Pick up all the BT-AMP internal definitions
75// And underlying supporting types. (Including VOSS, CSR, and...)
76#include "bapInternal.h"
77
78/* Pick up the SIRIUS and HAL types */
79// Already taken care of, above
80//#include "sirApi.h"
81//#include "halTypes.h"
82
83/* Pick up the CCM API def'n */
84#include "ccmApi.h"
85
86/*----------------------------------------------------------------------------
87 * Preprocessor Definitions and Constants
88 * -------------------------------------------------------------------------*/
89 #ifdef __cplusplus
90 extern "C" {
91 #endif
92
93
94/*----------------------------------------------------------------------------
95 * Defines
96 * -------------------------------------------------------------------------*/
97// Temporary
98//#define BAP_DEBUG
99
100
101/*----------------------------------------------------------------------------
102 * Typedefs
103 * -------------------------------------------------------------------------*/
104
105
106/*----------------------------------------------------------------------------
107 * External declarations for global context
108 * -------------------------------------------------------------------------*/
109
110
111/*----------------------------------------------------------------------------
112 * Function prototypes
113 * -------------------------------------------------------------------------*/
114
115/*----------------------------------------------------------------------------
116 * Utility Function prototypes
117 * -------------------------------------------------------------------------*/
118
119#if 0
120/*==========================================================================
121
122 FUNCTION WLANBAP_StartConnectionAcceptTimer
123
124 DESCRIPTION
125 Clear out all fields in the BAP context.
126
127 DEPENDENCIES
128
129 PARAMETERS
130
131 IN
132 pBtampCtx: pointer to the BAP control block
133 interval: time interval.
134
135 RETURN VALUE
136 The result code associated with performing the operation
137
138 VOS_STATUS_E_FAULT: access would cause a page fault
139 VOS_STATUS_SUCCESS: Everything is good :)
140
141 SIDE EFFECTS
142
143============================================================================*/
144VOS_STATUS
145WLANBAP_StartConnectionAcceptTimer
146(
147 ptBtampContext pBtampCtx,
148 v_U32_t interval
149);
150#endif // 0
151
152/* Connection Accept timer*/
153VOS_STATUS WLANBAP_InitConnectionAcceptTimer
154 ( ptBtampContext pBtampCtx);
155
156VOS_STATUS WLANBAP_DeinitConnectionAcceptTimer
157 ( ptBtampContext pBtampCtx);
158
159VOS_STATUS WLANBAP_StartConnectionAcceptTimer
160 (ptBtampContext pBtampCtx, v_U32_t interval);
161
162VOS_STATUS WLANBAP_StopConnectionAcceptTimer
163 ( ptBtampContext pBtampCtx);
164
165v_VOID_t WLANBAP_ConnectionAcceptTimerHandler
166 ( v_PVOID_t userData );
167
168/* Link Supervision timer*/
169VOS_STATUS WLANBAP_InitLinkSupervisionTimer
170 ( ptBtampContext pBtampCtx);
171
172VOS_STATUS WLANBAP_DeinitLinkSupervisionTimer
173 ( ptBtampContext pBtampCtx);
174
175VOS_STATUS WLANBAP_StartLinkSupervisionTimer
176 (ptBtampContext pBtampCtx, v_U32_t interval);
177
178VOS_STATUS WLANBAP_StopLinkSupervisionTimer
179 ( ptBtampContext pBtampCtx);
180
181v_VOID_t WLANBAP_LinkSupervisionTimerHandler
182 ( v_PVOID_t userData );
183
184/* Logical Link Accept timer*/
185VOS_STATUS WLANBAP_InitLogicalLinkAcceptTimer
186 ( ptBtampContext pBtampCtx);
187
188VOS_STATUS WLANBAP_DeinitLogicalLinkAcceptTimer
189 ( ptBtampContext pBtampCtx);
190
191VOS_STATUS WLANBAP_StartLogicalLinkAcceptTimer
192 (ptBtampContext pBtampCtx, v_U32_t interval);
193
194VOS_STATUS WLANBAP_StopLogicalLinkAcceptTimer
195 ( ptBtampContext pBtampCtx);
196
197v_VOID_t WLANBAP_LogicalLinkAcceptTimerHandler
198 ( v_PVOID_t userData );
199
200/* Best Effort Flush timer*/
201VOS_STATUS WLANBAP_InitBEFlushTimer
202 ( ptBtampContext pBtampCtx);
203
204VOS_STATUS WLANBAP_DeinitBEFlushTimer
205 ( ptBtampContext pBtampCtx);
206
207VOS_STATUS WLANBAP_StartBEFlushTimer
208 (ptBtampContext pBtampCtx, v_U32_t interval);
209
210VOS_STATUS WLANBAP_StopBEFlushTimer
211 ( ptBtampContext pBtampCtx);
212
213v_VOID_t WLANBAP_BEFlushTimerHandler
214 ( v_PVOID_t userData );
215
216/* Tx Packet monitor timer handler */
217v_VOID_t
218WLANBAP_TxPacketMonitorHandler
219(
220 v_PVOID_t userData
221);
222
223/* Tx Packet monitor start timer */
224VOS_STATUS
225WLANBAP_StartTxPacketMonitorTimer
226(
227 ptBtampContext pBtampCtx
228);
229
230/* Tx Packet monitor stop timer */
231VOS_STATUS
232WLANBAP_StopTxPacketMonitorTimer
233(
234 ptBtampContext pBtampCtx
235);
236
237#ifdef __cplusplus
238 }
239#endif
240
241
242#endif /* #ifndef WLAN_QCT_WLANBAP_API_TIMER_H */
243