blob: 291457fdc9545737bc20ec76d9997f15c9c8d18f [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.
46* \file limTrace.h
Jeff Johnson295189b2012-06-20 16:38:30 -070047
Leela V Kiran Kumar Reddy Chiralac3b9d382013-01-31 20:49:53 -080048* \brief definition for trace related APIs
Jeff Johnson295189b2012-06-20 16:38:30 -070049
Leela V Kiran Kumar Reddy Chiralac3b9d382013-01-31 20:49:53 -080050* \author Sunit Bhatia
Jeff Johnson295189b2012-06-20 16:38:30 -070051
52 Copyright 2008 (c) Qualcomm, Incorporated. All Rights Reserved.
53
54 Qualcomm Confidential and Proprietary.
55
56 ========================================================================*/
57
58
59
60#ifndef __LIM_TRACE_H
61#define __LIM_TRACE_H
62
63#include "limGlobal.h"
64#include "macTrace.h"
Leela Venkata Kiran Kumar Reddy Chirala57af2692013-04-10 22:39:51 -070065#include "vos_trace.h"
Jeff Johnson295189b2012-06-20 16:38:30 -070066#ifdef LIM_TRACE_RECORD
67
Jeff Johnson295189b2012-06-20 16:38:30 -070068
69
70#define LIM_TRACE_GET_SSN(data) (((data) >> 16) & 0xff)
71#define LIM_TRACE_GET_SUBTYPE(data) (data & 0xff)
72#define LIM_TRACE_GET_DEFERRED(data) (data & 0x80000000)
73#define LIM_TRACE_GET_DEFRD_OR_DROPPED(data) (data & 0xc0000000)
74
75#define LIM_MSG_PROCESSED 0
76#define LIM_MSG_DEFERRED 1
77#define LIM_MSG_DROPPED 2
78
79#define LIM_TRACE_MAKE_RXMGMT(type, ssn) \
80 ((ssn << 16) | (type) )
81#define LIM_TRACE_MAKE_RXMSG(msg, action) \
82 ((msg) | (action << 30) )
83
84
85
86
Leela V Kiran Kumar Reddy Chiralac3b9d382013-01-31 20:49:53 -080087enum {
Jeff Johnson295189b2012-06-20 16:38:30 -070088 TRACE_CODE_MLM_STATE,
89 TRACE_CODE_SME_STATE,
90 TRACE_CODE_TX_MGMT,
91 TRACE_CODE_RX_MGMT,
92 TRACE_CODE_RX_MGMT_TSF,
93 TRACE_CODE_TX_COMPLETE,
94 TRACE_CODE_TX_SME_MSG,
95 TRACE_CODE_RX_SME_MSG,
Leela V Kiran Kumar Reddy Chiralac3b9d382013-01-31 20:49:53 -080096 TRACE_CODE_TX_WDA_MSG,
97 TRACE_CODE_RX_WDA_MSG,
Jeff Johnson295189b2012-06-20 16:38:30 -070098 TRACE_CODE_TX_LIM_MSG,
99 TRACE_CODE_RX_LIM_MSG,
100 TRACE_CODE_TX_CFG_MSG,
101 TRACE_CODE_RX_CFG_MSG,
102 TRACE_CODE_RX_MGMT_DROP,
103
104 TRACE_CODE_TIMER_ACTIVATE,
105 TRACE_CODE_TIMER_DEACTIVATE,
Leela Venkata Kiran Kumar Reddy Chiralaf3fe6302013-03-18 12:32:14 -0700106 TRACE_CODE_INFO_LOG
Jeff Johnson295189b2012-06-20 16:38:30 -0700107};
108
109
110
111
112
113
114void limTraceInit(tpAniSirGlobal pMac);
115void limTraceReset(tpAniSirGlobal pMac);
116void limTraceUpdateMgmtStat(tpAniSirGlobal pMac, tANI_U8 subtype);
117void limTraceDumpMgmtStat(tpAniSirGlobal pMac, tANI_U8 subtype);
118tANI_U8* limTraceGetMlmStateString( tANI_U32 mlmState );
119tANI_U8* limTraceGetSmeStateString( tANI_U32 smeState );
Leela Venkata Kiran Kumar Reddy Chirala57af2692013-04-10 22:39:51 -0700120void limTraceDump(tpAniSirGlobal pMac, tpvosTraceRecord pRecord, tANI_U16 recIndex);
Jeff Johnson295189b2012-06-20 16:38:30 -0700121void macTraceMsgTx(tpAniSirGlobal pMac, tANI_U8 session, tANI_U32 data);
122void macTraceMsgRx(tpAniSirGlobal pMac, tANI_U8 session, tANI_U32 data);
123
124void macTraceMsgRxNew(tpAniSirGlobal pMac, tANI_U8 module, tANI_U8 session, tANI_U32 data);
125void macTraceMsgTxNew(tpAniSirGlobal pMac, tANI_U8 module, tANI_U8 session, tANI_U32 data);
Leela Venkata Kiran Kumar Reddy Chirala57af2692013-04-10 22:39:51 -0700126#endif //endof LIM_TRACE_RECORD MACRO
Jeff Johnson295189b2012-06-20 16:38:30 -0700127
128#endif
129