• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /** \file connApi.h
2  *  \brief connection module API
3  *
4  *  \see conn.c
5  */
6 /****************************************************************************
7 **+-----------------------------------------------------------------------+**
8 **|                                                                       |**
9 **| Copyright(c) 1998 - 2008 Texas Instruments. All rights reserved.      |**
10 **| All rights reserved.                                                  |**
11 **|                                                                       |**
12 **| Redistribution and use in source and binary forms, with or without    |**
13 **| modification, are permitted provided that the following conditions    |**
14 **| are met:                                                              |**
15 **|                                                                       |**
16 **|  * Redistributions of source code must retain the above copyright     |**
17 **|    notice, this list of conditions and the following disclaimer.      |**
18 **|  * Redistributions in binary form must reproduce the above copyright  |**
19 **|    notice, this list of conditions and the following disclaimer in    |**
20 **|    the documentation and/or other materials provided with the         |**
21 **|    distribution.                                                      |**
22 **|  * Neither the name Texas Instruments nor the names of its            |**
23 **|    contributors may be used to endorse or promote products derived    |**
24 **|    from this software without specific prior written permission.      |**
25 **|                                                                       |**
26 **| THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS   |**
27 **| "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT     |**
28 **| LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |**
29 **| A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT  |**
30 **| OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |**
31 **| SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT      |**
32 **| LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |**
33 **| DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |**
34 **| THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT   |**
35 **| (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |**
36 **| OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.  |**
37 **|                                                                       |**
38 **+-----------------------------------------------------------------------+**
39 ****************************************************************************/
40 
41 /***************************************************************************/
42 /*																									*/
43 /*	  MODULE:	connApi.h																*/
44 /*    PURPOSE:	connection module API			 								*/
45 /*																									*/
46 /***************************************************************************/
47 #ifndef __CONN_API_H__
48 #define __CONN_API_H__
49 
50 #include "osTIType.h"
51 #include "paramOut.h"
52 #include "paramIn.h"
53 #include "802_11Defs.h"
54 #include "mlmeApi.h"
55 
56 /*
57  * Connection type enum
58  */
59 typedef enum{
60 	CONN_TYPE_FIRST_CONN    = 0,  /* Standart 802.11 association */
61 	CONN_TYPE_ROAM           /* Perform roaming connection. (Re Association) */
62 }connType_e;
63 
64 
65 /*
66 	Prototype for connection status announcment, this function is called upon connection
67    lost or connection establishment.
68 */
69 typedef TI_STATUS (*conn_status_callback_t)( TI_HANDLE hObj, mgmtStatus_e status, UINT32 uStatusCode);
70 
71 
72 /* Connection interface functions prototypes */
73 
74 TI_HANDLE conn_create(TI_HANDLE hOs);
75 
76 TI_STATUS conn_config(TI_HANDLE 	hConn,
77 				   TI_HANDLE 	hSiteMgr,
78 				   TI_HANDLE	hSmeSm,
79 				   TI_HANDLE	hMlmeSm,
80 				   TI_HANDLE	hRsn,
81 				   TI_HANDLE	hRxData,
82 				   TI_HANDLE	hTxData,
83 				   TI_HANDLE 	hReport,
84 				   TI_HANDLE 	hOs,
85 				   TI_HANDLE	hPwrMngr,
86 				   TI_HANDLE    hCtrlData,
87 				   TI_HANDLE	hMeasurementMgr,
88 				   TI_HANDLE	hTrafficMonitor,
89 				   TI_HANDLE	hScr,
90 				   TI_HANDLE	hExcMngr,
91 				   TI_HANDLE	hQosMngr,
92 				   TI_HANDLE	hHalCtrl,
93 				   TI_HANDLE	hScanCnc,
94 				   TI_HANDLE	hCurrBss,
95 				   TI_HANDLE	hSwitchChannel,
96 				   TI_HANDLE	hEvHandler,
97 				   TI_HANDLE	hHealthMonitor,
98 				   TI_HANDLE	hMacServices,
99                    TI_HANDLE    hRegulatoryDomain,
100 				   TI_HANDLE    hSoftGemini,
101 				   connInitParams_t		*pConnInitParams);
102 
103 TI_STATUS conn_unLoad(TI_HANDLE hConn);
104 
105 TI_STATUS conn_setParam(TI_HANDLE		hConn,
106 					 paramInfo_t	*pParam);
107 
108 TI_STATUS conn_getParam(TI_HANDLE		hConn,
109 					 paramInfo_t	*pParam);
110 
111 TI_STATUS conn_start(TI_HANDLE hConn ,connType_e connType,
112 					 	conn_status_callback_t  pConnStatusCB,
113 						TI_HANDLE connStatCbObj,
114 						BOOL disConEraseKeys,
115 						BOOL reNegotiateTspec);
116 void connInfraJoinCmdCmpltNotification(TI_HANDLE CB_handle);
117 
118 TI_STATUS conn_stop(TI_HANDLE hConn, disConnType_e disConnType,
119 					mgmtStatus_e 			reason,
120 					BOOL					disConEraseKeys,
121 					conn_status_callback_t  pConnStatusCB,
122 					TI_HANDLE				connStatCbObj );
123 
124 
125 TI_STATUS conn_ibssStaJoined(TI_HANDLE hConn);
126 
127 void conn_disConnFrameSentCBFunc(TI_HANDLE hConn);
128 
129 void conn_ibssPrintStatistics(TI_HANDLE hConn);
130 
131 #endif /* __CONN_API_H__ */
132