• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /** \file configMgr.h
2  *  \brief config manager module internal header file
3  *
4  *  \see configMgr.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:   configMgr.h                                                 */
44 /*    PURPOSE:  Config manager module internal header file                          */
45 /*                                                                          */
46 /***************************************************************************/
47 #ifndef __CONFIG_MGR_H__
48 #define __CONFIG_MGR_H__
49 
50 #include "osTIType.h"
51 #include "paramOut.h"
52 #include "paramIn.h"
53 #include "fsm.h"
54 
55 /* Config manager state machine defintions */
56 typedef enum
57 {
58     CFG_MGR_STATE_IDLE              = 0,
59     CFG_MGR_STATE_RUNNING           = 1,
60     CFG_MGR_STATE_STOPPED           = 2,
61 } stateCfg_e;
62 
63 typedef struct
64 {
65     paramFunc_t         set;
66     paramFunc_t         get;
67     TI_HANDLE           handle;
68 } paramAccess_t;
69 
70 /* Configuration manager handle */
71 typedef struct
72 {
73     UINT8               state;
74     fsm_stateMachine_t  *pFsm;
75 
76     paramAccess_t       paramAccessTable[MAX_PARAM_MODULE_NUMBER];
77 
78     /* SME handles */
79     TI_HANDLE           hSmeSm;
80     TI_HANDLE           hSiteMgr;
81     TI_HANDLE           hConn;
82 
83     /* MLME handles */
84     TI_HANDLE           hMlmeSm;
85     TI_HANDLE           hAuth;
86     TI_HANDLE           hAssoc;
87 
88     /* Data handles */
89     TI_HANDLE           hRxData;
90     TI_HANDLE           hTxData;
91     TI_HANDLE           hCtrlData;
92 
93     /* Traffic Monitor */
94     TI_HANDLE           hTrafficMon;
95 
96     /* RSN handle */
97     TI_HANDLE           hRsn;
98 
99     /* HAL handles */
100     TI_HANDLE           hHalCtrl;
101 
102     /* Network Control */
103     TI_HANDLE           hRegulatoryDomain;
104     TI_HANDLE           hMeasurementMgr;
105     TI_HANDLE           hSoftGemini;
106 
107     /* EXC Manager*/
108     TI_HANDLE           hExcMngr;
109 
110     /* Roaming Manager */
111     TI_HANDLE           hRoamingMngr;
112 
113     /* QOS Manager */
114     TI_HANDLE           hQosMngr;
115 
116     /* Utils handles */
117     TI_HANDLE           hReport;
118     TI_HANDLE           hMemMgr;
119 
120     /* OS handle */
121     TI_HANDLE           hOs;
122 
123     /* Power handles */
124     TI_HANDLE           hPowerMgr;
125     TI_HANDLE           hPowerSrv;
126 
127     /* Event Handler Handles */
128     TI_HANDLE           hEvHandler;
129 
130     /* AP Connection Handles */
131     TI_HANDLE           hAPConnection;
132 
133     /* Current BSS Handles */
134     TI_HANDLE           hCurrBss;
135 
136     /* SwitchChannel Handles */
137     TI_HANDLE           hSwitchChannel;
138 
139     /* Services handles */
140     TI_HANDLE           hSCR;               /* SCR */
141     TI_HANDLE           hMacServices;       /* MacServices */
142 
143     /* Management handles */
144     TI_HANDLE           hScanCncn;          /* Scan Concentrator */
145 
146     /* Application handles */
147     TI_HANDLE           hScanMngr;          /* Scan Manager */
148 
149     /* Health Monitor */
150     TI_HANDLE           hHealthMonitor;
151 
152 	TI_HANDLE           hRecoveryMgr;
153 
154     /* Core Callbacks pointers to be used in the config phase */
155     /*TI_HANDLE         hcoreCallbacks;*/
156 
157     TI_HANDLE           hTnetwDrv;
158 
159     /* Pointer to configuration parameters */
160     initTable_t        *pInitTable;
161 
162     /* Pointer to driver's mac address */
163     macAddress_t       *pMacAddr;
164 
165 } configMgr_t;
166 
167 #endif /* __CONFIG_MGR_H__ */
168