blob: f7759015108c0f642cfecf7b06db5339e4c15278 [file] [log] [blame]
Jeff Johnson295189b2012-06-20 16:38:30 -07001/*
Gopichand Nakkala92f07d82013-01-08 21:16:34 -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.
20 */
21/*
Jeff Johnson32d95a32012-09-10 13:15:23 -070022 * Copyright (c) 2012, The Linux Foundation. All rights reserved.
Jeff Johnson295189b2012-06-20 16:38:30 -070023 *
24 * Previously licensed under the ISC license by Qualcomm Atheros, Inc.
25 *
26 *
27 * Permission to use, copy, modify, and/or distribute this software for
28 * any purpose with or without fee is hereby granted, provided that the
29 * above copyright notice and this permission notice appear in all
30 * copies.
31 *
32 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
33 * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
34 * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
35 * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
36 * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
37 * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
38 * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
39 * PERFORMANCE OF THIS SOFTWARE.
40 */
41
42/**=========================================================================
Leela V Kiran Kumar Reddy Chiralac3b9d382013-01-31 20:49:53 -080043* Copyright (c) 2013 Qualcomm Atheros, Inc.
44* All Rights Reserved.
45* Qualcomm Atheros Confidential and Proprietary.
Jeff Johnson295189b2012-06-20 16:38:30 -070046 \file limTrace.c
47
48 \brief implementation for trace related APIs
49
50 \author Sunit Bhatia
51
52 Copyright 2008 (c) Qualcomm, Incorporated. All Rights Reserved.
53
54 Qualcomm Confidential and Proprietary.
55
56 ========================================================================*/
57
58
59/*--------------------------------------------------------------------------
60 Include Files
61 ------------------------------------------------------------------------*/
62
Jeff Johnson295189b2012-06-20 16:38:30 -070063#include "aniGlobal.h" //for tpAniSirGlobal
Jeff Johnson295189b2012-06-20 16:38:30 -070064
65#include "limTrace.h"
66#include "limTimerUtils.h"
67
68
69#ifdef LIM_TRACE_RECORD
70tANI_U32 gMgmtFrameStats[14];
71
72
73
74static tANI_U8* __limTraceGetTimerString( tANI_U16 timerId )
75{
76 switch( timerId )
77 {
78 CASE_RETURN_STRING(eLIM_MIN_CHANNEL_TIMER);
79 CASE_RETURN_STRING(eLIM_MAX_CHANNEL_TIMER);
80 CASE_RETURN_STRING(eLIM_JOIN_FAIL_TIMER);
81 CASE_RETURN_STRING(eLIM_AUTH_FAIL_TIMER);
82 CASE_RETURN_STRING(eLIM_AUTH_RESP_TIMER);
83 CASE_RETURN_STRING(eLIM_ASSOC_FAIL_TIMER);
84 CASE_RETURN_STRING(eLIM_REASSOC_FAIL_TIMER);
85 CASE_RETURN_STRING(eLIM_PRE_AUTH_CLEANUP_TIMER);
86 CASE_RETURN_STRING(eLIM_HEART_BEAT_TIMER);
87 CASE_RETURN_STRING(eLIM_BACKGROUND_SCAN_TIMER);
88#ifdef ANI_PRODUCT_TYPE_AP
89 CASE_RETURN_STRING(eLIM_LEARN_INTERVAL_TIMER);
90#endif
91 CASE_RETURN_STRING(eLIM_KEEPALIVE_TIMER);
92 CASE_RETURN_STRING(eLIM_CNF_WAIT_TIMER);
93 CASE_RETURN_STRING(eLIM_AUTH_RSP_TIMER);
94 CASE_RETURN_STRING(eLIM_UPDATE_OLBC_CACHE_TIMER);
95 CASE_RETURN_STRING(eLIM_PROBE_AFTER_HB_TIMER);
96 CASE_RETURN_STRING(eLIM_ADDTS_RSP_TIMER);
97 CASE_RETURN_STRING(eLIM_CHANNEL_SWITCH_TIMER);
98 CASE_RETURN_STRING(eLIM_LEARN_DURATION_TIMER);
99 CASE_RETURN_STRING(eLIM_QUIET_TIMER);
100 CASE_RETURN_STRING(eLIM_QUIET_BSS_TIMER);
Leela V Kiran Kumar Reddy Chiralac3b9d382013-01-31 20:49:53 -0800101#ifdef WLAN_SOFTAP_FEATURE
102 CASE_RETURN_STRING(eLIM_WPS_OVERLAP_TIMER);
103#endif
104#ifdef WLAN_FEATURE_VOWIFI_11R
105 CASE_RETURN_STRING(eLIM_FT_PREAUTH_RSP_TIMER);
106#endif
107#ifdef WLAN_FEATURE_P2P
108 CASE_RETURN_STRING(eLIM_REMAIN_CHN_TIMER);
109#endif
110 CASE_RETURN_STRING(eLIM_PERIODIC_PROBE_REQ_TIMER);
111#ifdef FEATURE_WLAN_CCX
112 CASE_RETURN_STRING(eLIM_TSM_TIMER);
113#endif
114 CASE_RETURN_STRING(eLIM_DISASSOC_ACK_TIMER);
115 CASE_RETURN_STRING(eLIM_DEAUTH_ACK_TIMER);
116 CASE_RETURN_STRING(eLIM_PERIODIC_JOIN_PROBE_REQ_TIMER);
117 CASE_RETURN_STRING(eLIM_INSERT_SINGLESHOT_NOA_TIMER);
Jeff Johnson295189b2012-06-20 16:38:30 -0700118 default:
119 return( "UNKNOWN" );
120 break;
121 }
122}
123
124
125static tANI_U8* __limTraceGetMgmtDropReasonString( tANI_U16 dropReason )
126{
127
128 switch( dropReason )
129 {
130 CASE_RETURN_STRING(eMGMT_DROP_INFRA_BCN_IN_IBSS);
131 CASE_RETURN_STRING(eMGMT_DROP_INVALID_SIZE);
132 CASE_RETURN_STRING(eMGMT_DROP_NON_SCAN_MODE_FRAME);
133 CASE_RETURN_STRING(eMGMT_DROP_NOT_LAST_IBSS_BCN);
134 CASE_RETURN_STRING(eMGMT_DROP_NO_DROP);
135 CASE_RETURN_STRING(eMGMT_DROP_SCAN_MODE_FRAME);
136
137 default:
138 return( "UNKNOWN" );
139 break;
140 }
141}
142
143
144
145void limTraceInit(tpAniSirGlobal pMac)
146{
147 macTraceRegister(pMac, VOS_MODULE_ID_PE, limTraceDump);
148}
149
150
151
152
153void limTraceDump(tpAniSirGlobal pMac, tpTraceRecord pRecord, tANI_U16 recIndex)
154{
155
156 static char *frameSubtypeStr[14] =
157 {
158 "Association request",
159 "Association response",
160 "Reassociation request",
161 "Reassociation response",
162 "Probe request",
163 "Probe response",
164 NULL,
165 NULL,
166 "Beacon",
167 "ATIM",
168 "Disassocation",
169 "Authentication",
170 "Deauthentication",
171 "Action"
172 };
173
174 switch (pRecord->code) {
175 case TRACE_CODE_MLM_STATE:
176 limLog(pMac, LOGE, "%04d %012u S%d %-14s %-30s(0x%x) \n", recIndex, pRecord->time, pRecord->session,
177 "MLM State:", limTraceGetMlmStateString((tANI_U16)pRecord->data), pRecord->data );
178 break;
179 case TRACE_CODE_SME_STATE:
180 limLog(pMac, LOGE, "%04d %012u S%d %-14s %-30s(0x%x) \n", recIndex, pRecord->time, pRecord->session,
181 "SME State:", limTraceGetSmeStateString((tANI_U16)pRecord->data), pRecord->data );
182 break;
183 case TRACE_CODE_TX_MGMT:
184 limLog(pMac, LOGE, "%04d %012u S%d %-14s %-30s(0x%x) \n", recIndex, pRecord->time, pRecord->session,
185 "TX Mgmt:", frameSubtypeStr[pRecord->data], pRecord->data );
186 break;
187
188 case TRACE_CODE_RX_MGMT:
189 limLog(pMac, LOGE, "%04d %012u S%d %-14s %-30s(%d) SN: %d \n", recIndex, pRecord->time, pRecord->session,
190 "RX Mgmt:", frameSubtypeStr[LIM_TRACE_GET_SUBTYPE(pRecord->data)],
191 LIM_TRACE_GET_SUBTYPE(pRecord->data),
192 LIM_TRACE_GET_SSN(pRecord->data) );
193 break;
194 case TRACE_CODE_RX_MGMT_DROP:
195 limLog(pMac, LOGE, "%04d %012u S%d %-14s %-30s(%d) \n", recIndex, pRecord->time, pRecord->session,
196 "Drop RX Mgmt:", __limTraceGetMgmtDropReasonString((tANI_U16)pRecord->data), pRecord->data);
197 break;
198
Leela V Kiran Kumar Reddy Chiralac3b9d382013-01-31 20:49:53 -0800199
Jeff Johnson295189b2012-06-20 16:38:30 -0700200 case TRACE_CODE_RX_MGMT_TSF:
201 limLog(pMac, LOGE, "%04d %012u S%d %-14s %-30s0x%x(%d) \n", recIndex, pRecord->time, pRecord->session,
202 "RX Mgmt TSF:", " ", pRecord->data, pRecord->data );
203 break;
204
205 case TRACE_CODE_TX_COMPLETE:
206 limLog(pMac, LOGE, "%04d %012u S%d %-14s \n", recIndex, pRecord->time, pRecord->session,
207 "TX Complete" );
208 break;
209
210 case TRACE_CODE_TX_SME_MSG:
211 limLog(pMac, LOGE, "%04d %012u S%d %-14s %-30s(0x%x) \n", recIndex, pRecord->time, pRecord->session,
212 "TX SME Msg:", macTraceGetSmeMsgString((tANI_U16)pRecord->data), pRecord->data );
213 break;
214 case TRACE_CODE_RX_SME_MSG:
215 limLog(pMac, LOGE, "%04d %012u S%d %-14s %-30s(0x%x) \n", recIndex, pRecord->time, pRecord->session,
216 LIM_TRACE_GET_DEFRD_OR_DROPPED(pRecord->data) ? "Def/Drp LIM Msg:": "RX Sme Msg:",
217 macTraceGetSmeMsgString((tANI_U16)pRecord->data), pRecord->data );
218 break;
219
Leela V Kiran Kumar Reddy Chiralac3b9d382013-01-31 20:49:53 -0800220 case TRACE_CODE_TX_WDA_MSG:
Jeff Johnson295189b2012-06-20 16:38:30 -0700221 limLog(pMac, LOGE, "%04d %012u S%d %-14s %-30s(0x%x) \n", recIndex, pRecord->time, pRecord->session,
Leela V Kiran Kumar Reddy Chiralac3b9d382013-01-31 20:49:53 -0800222 "TX WDA Msg:", macTraceGetWdaMsgString((tANI_U16)pRecord->data), pRecord->data );
Jeff Johnson295189b2012-06-20 16:38:30 -0700223 break;
224
Leela V Kiran Kumar Reddy Chiralac3b9d382013-01-31 20:49:53 -0800225 case TRACE_CODE_RX_WDA_MSG:
Jeff Johnson295189b2012-06-20 16:38:30 -0700226 limLog(pMac, LOGE, "%04d %012u S%d %-14s %-30s(0x%x) \n", recIndex, pRecord->time, pRecord->session,
Leela V Kiran Kumar Reddy Chiralac3b9d382013-01-31 20:49:53 -0800227 LIM_TRACE_GET_DEFRD_OR_DROPPED(pRecord->data) ? "Def/Drp LIM Msg:": "RX WDA Msg:",
228 macTraceGetWdaMsgString((tANI_U16)pRecord->data), pRecord->data );
Jeff Johnson295189b2012-06-20 16:38:30 -0700229 break;
230
231 case TRACE_CODE_TX_LIM_MSG:
232 limLog(pMac, LOGE, "%04d %012u S%d %-14s %-30s(0x%x) \n", recIndex, pRecord->time, pRecord->session,
233 "TX LIM Msg:", macTraceGetLimMsgString((tANI_U16)pRecord->data), pRecord->data );
234 break;
235 case TRACE_CODE_RX_LIM_MSG:
236 limLog(pMac, LOGE, "%04d %012u S%d %-14s %-30s(0x%x) \n", recIndex, pRecord->time, pRecord->session,
237 LIM_TRACE_GET_DEFRD_OR_DROPPED(pRecord->data) ? "Def/Drp LIM Msg:": "RX LIM Msg",
238 macTraceGetLimMsgString((tANI_U16)pRecord->data), pRecord->data );
239 break;
240 case TRACE_CODE_TX_CFG_MSG:
241 limLog(pMac, LOGE, "%04d %012u S%d %-14s %-30s(0x%x) \n", recIndex, pRecord->time, pRecord->session,
242 "TX CFG Msg:", macTraceGetCfgMsgString((tANI_U16)pRecord->data), pRecord->data );
243 break;
244 case TRACE_CODE_RX_CFG_MSG:
245 limLog(pMac, LOGE, "%04d %012u S%d %-14s %-30s(0x%x) \n", recIndex, pRecord->time, pRecord->session,
246 LIM_TRACE_GET_DEFRD_OR_DROPPED(pRecord->data) ? "Def/Drp LIM Msg:": "RX CFG Msg:",
247 macTraceGetCfgMsgString((tANI_U16)MAC_TRACE_GET_MSG_ID(pRecord->data)),
248 pRecord->data );
249 break;
250
251 case TRACE_CODE_TIMER_ACTIVATE:
252 limLog(pMac, LOGE, "%04d %012u S%d %-14s %-30s(0x%x) \n", recIndex, pRecord->time, pRecord->session,
253 "Timer Actvtd", __limTraceGetTimerString((tANI_U16)pRecord->data), pRecord->data );
254 break;
255 case TRACE_CODE_TIMER_DEACTIVATE:
256 limLog(pMac, LOGE, "%04d %012u S%d %-14s %-30s(0x%x) \n", recIndex, pRecord->time, pRecord->session,
257 "Timer DeActvtd", __limTraceGetTimerString((tANI_U16)pRecord->data), pRecord->data );
258 break;
259
260 default :
261 limLog(pMac, LOGE, "%04d %012u S%d %-14s(%d) (0x%x) \n", recIndex, pRecord->time, pRecord->session,
262 "Unknown Code", pRecord->code, pRecord->data );
263 break;
264 }
265}
266
267
268void macTraceMsgTx(tpAniSirGlobal pMac, tANI_U8 session, tANI_U32 data)
269{
270
271 tANI_U16 msgId = (tANI_U16)MAC_TRACE_GET_MSG_ID(data);
272 tANI_U8 moduleId = (tANI_U8)MAC_TRACE_GET_MODULE_ID(data);
273
274 switch(moduleId)
275 {
276 case SIR_LIM_MODULE_ID:
277 if(msgId >= SIR_LIM_ITC_MSG_TYPES_BEGIN)
278 macTrace(pMac, TRACE_CODE_TX_LIM_MSG, session, data);
279 else
280 macTrace(pMac, TRACE_CODE_TX_SME_MSG, session, data);
281 break;
282 case SIR_WDA_MODULE_ID:
Leela V Kiran Kumar Reddy Chiralac3b9d382013-01-31 20:49:53 -0800283 macTrace(pMac, TRACE_CODE_TX_WDA_MSG, session, data);
Jeff Johnson295189b2012-06-20 16:38:30 -0700284 break;
285 case SIR_CFG_MODULE_ID:
286 macTrace(pMac, TRACE_CODE_TX_CFG_MSG, session, data);
287 break;
288 }
289}
290
291
292void macTraceMsgTxNew(tpAniSirGlobal pMac, tANI_U8 module, tANI_U8 session, tANI_U32 data)
293{
294 tANI_U16 msgId = (tANI_U16)MAC_TRACE_GET_MSG_ID(data);
295 tANI_U8 moduleId = (tANI_U8)MAC_TRACE_GET_MODULE_ID(data);
296
297 switch(moduleId)
298 {
299 case SIR_LIM_MODULE_ID:
300 if(msgId >= SIR_LIM_ITC_MSG_TYPES_BEGIN)
301 macTraceNew(pMac, module, TRACE_CODE_TX_LIM_MSG, session, data);
302 else
303 macTraceNew(pMac, module, TRACE_CODE_TX_SME_MSG, session, data);
304 break;
305 case SIR_WDA_MODULE_ID:
Leela V Kiran Kumar Reddy Chiralac3b9d382013-01-31 20:49:53 -0800306 macTraceNew(pMac, module, TRACE_CODE_TX_WDA_MSG, session, data);
Jeff Johnson295189b2012-06-20 16:38:30 -0700307 break;
308 case SIR_CFG_MODULE_ID:
309 macTraceNew(pMac, module, TRACE_CODE_TX_CFG_MSG, session, data);
310 break;
311 }
312}
313
314/*
315* bit31: Rx message defferred or not
316* bit 0-15: message ID:
317*/
318void macTraceMsgRx(tpAniSirGlobal pMac, tANI_U8 session, tANI_U32 data)
319{
320 tANI_U16 msgId = (tANI_U16)MAC_TRACE_GET_MSG_ID(data);
321 tANI_U8 moduleId = (tANI_U8)MAC_TRACE_GET_MODULE_ID(data);
322
323
324 switch(moduleId)
325 {
326 case SIR_LIM_MODULE_ID:
327 if(msgId >= SIR_LIM_ITC_MSG_TYPES_BEGIN)
328 macTrace(pMac, TRACE_CODE_RX_LIM_MSG, session, data);
329 else
330 macTrace(pMac, TRACE_CODE_RX_SME_MSG, session, data);
331 break;
332 case SIR_WDA_MODULE_ID:
Leela V Kiran Kumar Reddy Chiralac3b9d382013-01-31 20:49:53 -0800333 macTrace(pMac, TRACE_CODE_RX_WDA_MSG, session, data);
Jeff Johnson295189b2012-06-20 16:38:30 -0700334 break;
335 case SIR_CFG_MODULE_ID:
336 macTrace(pMac, TRACE_CODE_RX_CFG_MSG, session, data);
337 break;
338 }
339}
340
341
342
343/*
344* bit31: Rx message defferred or not
345* bit 0-15: message ID:
346*/
347void macTraceMsgRxNew(tpAniSirGlobal pMac, tANI_U8 module, tANI_U8 session, tANI_U32 data)
348{
349 tANI_U16 msgId = (tANI_U16)MAC_TRACE_GET_MSG_ID(data);
350 tANI_U8 moduleId = (tANI_U8)MAC_TRACE_GET_MODULE_ID(data);
351
352
353 switch(moduleId)
354 {
355 case SIR_LIM_MODULE_ID:
356 if(msgId >= SIR_LIM_ITC_MSG_TYPES_BEGIN)
357 macTraceNew(pMac, module, TRACE_CODE_RX_LIM_MSG, session, data);
358 else
359 macTraceNew(pMac, module, TRACE_CODE_RX_SME_MSG, session, data);
360 break;
361 case SIR_WDA_MODULE_ID:
Leela V Kiran Kumar Reddy Chiralac3b9d382013-01-31 20:49:53 -0800362 macTraceNew(pMac, module, TRACE_CODE_RX_WDA_MSG, session, data);
Jeff Johnson295189b2012-06-20 16:38:30 -0700363 break;
364 case SIR_CFG_MODULE_ID:
365 macTraceNew(pMac, module, TRACE_CODE_RX_CFG_MSG, session, data);
366 break;
367 }
368}
369
370
371
372tANI_U8* limTraceGetMlmStateString( tANI_U32 mlmState )
373{
374 switch( mlmState )
375 {
376 CASE_RETURN_STRING( eLIM_MLM_OFFLINE_STATE);
377 CASE_RETURN_STRING( eLIM_MLM_IDLE_STATE);
378 CASE_RETURN_STRING( eLIM_MLM_WT_PROBE_RESP_STATE);
379 CASE_RETURN_STRING( eLIM_MLM_PASSIVE_SCAN_STATE);
380 CASE_RETURN_STRING( eLIM_MLM_WT_JOIN_BEACON_STATE);
381 CASE_RETURN_STRING( eLIM_MLM_JOINED_STATE);
382 CASE_RETURN_STRING( eLIM_MLM_BSS_STARTED_STATE);
383 CASE_RETURN_STRING( eLIM_MLM_WT_AUTH_FRAME2_STATE);
384 CASE_RETURN_STRING( eLIM_MLM_WT_AUTH_FRAME3_STATE);
385 CASE_RETURN_STRING( eLIM_MLM_WT_AUTH_FRAME4_STATE);
386 CASE_RETURN_STRING( eLIM_MLM_AUTH_RSP_TIMEOUT_STATE);
387 CASE_RETURN_STRING( eLIM_MLM_AUTHENTICATED_STATE);
388 CASE_RETURN_STRING( eLIM_MLM_WT_ASSOC_RSP_STATE);
389 CASE_RETURN_STRING( eLIM_MLM_WT_REASSOC_RSP_STATE);
390 CASE_RETURN_STRING( eLIM_MLM_ASSOCIATED_STATE);
391 CASE_RETURN_STRING( eLIM_MLM_REASSOCIATED_STATE);
392 CASE_RETURN_STRING( eLIM_MLM_LINK_ESTABLISHED_STATE);
393 CASE_RETURN_STRING( eLIM_MLM_WT_ASSOC_CNF_STATE);
394 CASE_RETURN_STRING( eLIM_MLM_LEARN_STATE);
395 CASE_RETURN_STRING( eLIM_MLM_WT_ADD_BSS_RSP_STATE);
396 CASE_RETURN_STRING( eLIM_MLM_WT_DEL_BSS_RSP_STATE);
397 CASE_RETURN_STRING( eLIM_MLM_WT_ADD_BSS_RSP_ASSOC_STATE);
Leela V Kiran Kumar Reddy Chiralac3b9d382013-01-31 20:49:53 -0800398 CASE_RETURN_STRING( eLIM_MLM_WT_ADD_BSS_RSP_PREASSOC_STATE);
Jeff Johnson295189b2012-06-20 16:38:30 -0700399 CASE_RETURN_STRING( eLIM_MLM_WT_ADD_BSS_RSP_REASSOC_STATE);
400 CASE_RETURN_STRING( eLIM_MLM_WT_ADD_STA_RSP_STATE);
401 CASE_RETURN_STRING( eLIM_MLM_WT_DEL_STA_RSP_STATE);
402 CASE_RETURN_STRING( eLIM_MLM_WT_ASSOC_DEL_STA_RSP_STATE);
403 CASE_RETURN_STRING( eLIM_MLM_WT_SET_BSS_KEY_STATE);
404 CASE_RETURN_STRING( eLIM_MLM_WT_SET_STA_KEY_STATE);
405 CASE_RETURN_STRING( eLIM_MLM_WT_SET_STA_BCASTKEY_STATE);
406 CASE_RETURN_STRING( eLIM_MLM_WT_ADDBA_RSP_STATE);
407 CASE_RETURN_STRING( eLIM_MLM_WT_REMOVE_BSS_KEY_STATE);
408 CASE_RETURN_STRING( eLIM_MLM_WT_REMOVE_STA_KEY_STATE);
409 CASE_RETURN_STRING( eLIM_MLM_WT_SET_MIMOPS_STATE);
410 default:
411 return( "UNKNOWN" );
412 break;
413 }
414}
415
416
417tANI_U8* limTraceGetSmeStateString( tANI_U32 smeState )
418{
419 switch( smeState )
420 {
421
422 CASE_RETURN_STRING(eLIM_SME_OFFLINE_STATE);
423 CASE_RETURN_STRING(eLIM_SME_IDLE_STATE);
424 CASE_RETURN_STRING(eLIM_SME_SUSPEND_STATE);
425 CASE_RETURN_STRING(eLIM_SME_WT_SCAN_STATE);
426 CASE_RETURN_STRING(eLIM_SME_WT_JOIN_STATE);
427 CASE_RETURN_STRING(eLIM_SME_WT_AUTH_STATE);
428 CASE_RETURN_STRING(eLIM_SME_WT_ASSOC_STATE);
429 CASE_RETURN_STRING(eLIM_SME_WT_REASSOC_STATE);
430 CASE_RETURN_STRING(eLIM_SME_WT_REASSOC_LINK_FAIL_STATE);
431 CASE_RETURN_STRING(eLIM_SME_JOIN_FAILURE_STATE);
432 CASE_RETURN_STRING(eLIM_SME_ASSOCIATED_STATE);
433 CASE_RETURN_STRING(eLIM_SME_REASSOCIATED_STATE);
434 CASE_RETURN_STRING(eLIM_SME_LINK_EST_STATE);
435 CASE_RETURN_STRING(eLIM_SME_LINK_EST_WT_SCAN_STATE);
436 CASE_RETURN_STRING(eLIM_SME_WT_PRE_AUTH_STATE);
437 CASE_RETURN_STRING(eLIM_SME_WT_DISASSOC_STATE);
438 CASE_RETURN_STRING(eLIM_SME_WT_DEAUTH_STATE);
439 CASE_RETURN_STRING(eLIM_SME_WT_START_BSS_STATE);
440 CASE_RETURN_STRING(eLIM_SME_WT_STOP_BSS_STATE);
441 CASE_RETURN_STRING(eLIM_SME_NORMAL_STATE);
442 CASE_RETURN_STRING(eLIM_SME_CHANNEL_SCAN_STATE);
443 CASE_RETURN_STRING(eLIM_SME_NORMAL_CHANNEL_SCAN_STATE);
444 default:
445 return( "UNKNOWN" );
446 break;
447 }
448}
449
450
451
452
453
454
455#endif