blob: 5e3623ec3bf0c05ef654c7b84fe31a31d198a612 [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
42 Copyright (c) 2008 QUALCOMM Incorporated. All Rights Reserved.
43 Qualcomm Confidential and Proprietary
44===========================================================================*/
45
46
47/*===========================================================================
48
49 EDIT HISTORY FOR FILE
50
51
52 This section contains comments describing changes made to the module.
53 Notice that changes are listed in reverse chronological order.
54
55
56 $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 $
57
58
59when who what, where, why
60-------- --- ----------------------------------------------------------
6110/23/08 jez Created module.
62
63===========================================================================*/
64
65
66
67/*===========================================================================
68
69 INCLUDE FILES FOR MODULE
70
71===========================================================================*/
72
73/*----------------------------------------------------------------------------
74 * Include Files
75 * -------------------------------------------------------------------------*/
76// Pick up all the BT-AMP internal definitions
77// And underlying supporting types. (Including VOSS, CSR, and...)
78#include "bapInternal.h"
79
80/* Pick up the SIRIUS and HAL types */
81// Already taken care of, above
82//#include "sirApi.h"
83//#include "halTypes.h"
84
85/* Pick up the CCM API def'n */
86#include "ccmApi.h"
87
88/*----------------------------------------------------------------------------
89 * Preprocessor Definitions and Constants
90 * -------------------------------------------------------------------------*/
91 #ifdef __cplusplus
92 extern "C" {
93 #endif
94
95
96/*----------------------------------------------------------------------------
97 * Defines
98 * -------------------------------------------------------------------------*/
99// Temporary
100//#define BAP_DEBUG
101
102
103/*----------------------------------------------------------------------------
104 * Typedefs
105 * -------------------------------------------------------------------------*/
106
107
108/*----------------------------------------------------------------------------
109 * External declarations for global context
110 * -------------------------------------------------------------------------*/
111
112
113/*----------------------------------------------------------------------------
114 * Function prototypes
115 * -------------------------------------------------------------------------*/
116
117/*----------------------------------------------------------------------------
118 * Utility Function prototypes
119 * -------------------------------------------------------------------------*/
120
121#if 0
122/*==========================================================================
123
124 FUNCTION WLANBAP_StartConnectionAcceptTimer
125
126 DESCRIPTION
127 Clear out all fields in the BAP context.
128
129 DEPENDENCIES
130
131 PARAMETERS
132
133 IN
134 pBtampCtx: pointer to the BAP control block
135 interval: time interval.
136
137 RETURN VALUE
138 The result code associated with performing the operation
139
140 VOS_STATUS_E_FAULT: access would cause a page fault
141 VOS_STATUS_SUCCESS: Everything is good :)
142
143 SIDE EFFECTS
144
145============================================================================*/
146VOS_STATUS
147WLANBAP_StartConnectionAcceptTimer
148(
149 ptBtampContext pBtampCtx,
150 v_U32_t interval
151);
152#endif // 0
153
154/* Connection Accept timer*/
155VOS_STATUS WLANBAP_InitConnectionAcceptTimer
156 ( ptBtampContext pBtampCtx);
157
158VOS_STATUS WLANBAP_DeinitConnectionAcceptTimer
159 ( ptBtampContext pBtampCtx);
160
161VOS_STATUS WLANBAP_StartConnectionAcceptTimer
162 (ptBtampContext pBtampCtx, v_U32_t interval);
163
164VOS_STATUS WLANBAP_StopConnectionAcceptTimer
165 ( ptBtampContext pBtampCtx);
166
167v_VOID_t WLANBAP_ConnectionAcceptTimerHandler
168 ( v_PVOID_t userData );
169
170/* Link Supervision timer*/
171VOS_STATUS WLANBAP_InitLinkSupervisionTimer
172 ( ptBtampContext pBtampCtx);
173
174VOS_STATUS WLANBAP_DeinitLinkSupervisionTimer
175 ( ptBtampContext pBtampCtx);
176
177VOS_STATUS WLANBAP_StartLinkSupervisionTimer
178 (ptBtampContext pBtampCtx, v_U32_t interval);
179
180VOS_STATUS WLANBAP_StopLinkSupervisionTimer
181 ( ptBtampContext pBtampCtx);
182
183v_VOID_t WLANBAP_LinkSupervisionTimerHandler
184 ( v_PVOID_t userData );
185
186/* Logical Link Accept timer*/
187VOS_STATUS WLANBAP_InitLogicalLinkAcceptTimer
188 ( ptBtampContext pBtampCtx);
189
190VOS_STATUS WLANBAP_DeinitLogicalLinkAcceptTimer
191 ( ptBtampContext pBtampCtx);
192
193VOS_STATUS WLANBAP_StartLogicalLinkAcceptTimer
194 (ptBtampContext pBtampCtx, v_U32_t interval);
195
196VOS_STATUS WLANBAP_StopLogicalLinkAcceptTimer
197 ( ptBtampContext pBtampCtx);
198
199v_VOID_t WLANBAP_LogicalLinkAcceptTimerHandler
200 ( v_PVOID_t userData );
201
202/* Best Effort Flush timer*/
203VOS_STATUS WLANBAP_InitBEFlushTimer
204 ( ptBtampContext pBtampCtx);
205
206VOS_STATUS WLANBAP_DeinitBEFlushTimer
207 ( ptBtampContext pBtampCtx);
208
209VOS_STATUS WLANBAP_StartBEFlushTimer
210 (ptBtampContext pBtampCtx, v_U32_t interval);
211
212VOS_STATUS WLANBAP_StopBEFlushTimer
213 ( ptBtampContext pBtampCtx);
214
215v_VOID_t WLANBAP_BEFlushTimerHandler
216 ( v_PVOID_t userData );
217
218/* Tx Packet monitor timer handler */
219v_VOID_t
220WLANBAP_TxPacketMonitorHandler
221(
222 v_PVOID_t userData
223);
224
225/* Tx Packet monitor start timer */
226VOS_STATUS
227WLANBAP_StartTxPacketMonitorTimer
228(
229 ptBtampContext pBtampCtx
230);
231
232/* Tx Packet monitor stop timer */
233VOS_STATUS
234WLANBAP_StopTxPacketMonitorTimer
235(
236 ptBtampContext pBtampCtx
237);
238
239#ifdef __cplusplus
240 }
241#endif
242
243
244#endif /* #ifndef WLAN_QCT_WLANBAP_API_TIMER_H */
245