1 /*
2  * Copyright (c) 2013-2020 The Linux Foundation. All rights reserved.
3  * Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved.
4  *
5  * Permission to use, copy, modify, and/or distribute this software for
6  * any purpose with or without fee is hereby granted, provided that the
7  * above copyright notice and this permission notice appear in all
8  * copies.
9  *
10  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
11  * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
12  * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
13  * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
14  * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
15  * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
16  * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
17  * PERFORMANCE OF THIS SOFTWARE.
18  */
19 
20 /**
21  * \sme_trace.h
22  *
23  * \brief definition for trace related APIs
24  */
25 
26 #ifndef __SME_TRACE_H__
27 #define __SME_TRACE_H__
28 
29 #include "mac_trace.h"
30 
31 #define NO_SESSION 0xFF
32 enum smecodetype {
33 	TRACE_CODE_SME_RX_HDD_MSG_SCAN_REQ,
34 	TRACE_CODE_SME_RX_HDD_MSG_SCAN_GET_RESULTS,
35 	TRACE_CODE_SME_RX_HDD_MSG_CONNECT,
36 	TRACE_CODE_SME_RX_HDD_MSG_SET_11DINFO,
37 	TRACE_CODE_SME_RX_HDD_MSG_GET_SOFTAP_DOMAIN,
38 	TRACE_CODE_SME_RX_HDD_MSG_SET_REGINFO,
39 	TRACE_CODE_SME_RX_HDD_MSG_UPDATE_CHANNEL_CONFIG,
40 	TRACE_CODE_SME_RX_HDD_MSG_UPDATE_CONFIG,
41 	TRACE_CODE_SME_RX_HDD_MSG_HDDREADYIND,
42 	TRACE_CODE_SME_RX_HDD_MSG_SCAN_FLUSH_RESULTS,
43 	TRACE_CODE_SME_RX_HDD_MSG_SCAN_FLUSH_P2PRESULTS,
44 	TRACE_CODE_SME_RX_HDD_MSG_SCAN_RESULT_GETFIRST,
45 	TRACE_CODE_SME_RX_HDD_MSG_SCAN_RESULT_GETNEXT,
46 	TRACE_CODE_SME_RX_HDD_MSG_SCAN_RESULT_PURGE,
47 	TRACE_CODE_SME_RX_HDD_ROAM_REASSOC,
48 	TRACE_CODE_SME_RX_HDD_ROAM_DISCONNECT,
49 	TRACE_CODE_SME_RX_HDD_ROAM_GET_CONNECTPROFILE,
50 	TRACE_CODE_SME_RX_HDD_ROAM_FREE_CONNECTPROFILE,
51 	TRACE_CODE_SME_RX_HDD_ROAM_SET_PMKIDCACHE,
52 	TRACE_CODE_SME_RX_HDD_ROAM_GET_PMKIDCACHE,
53 	TRACE_CODE_SME_RX_HDD_GET_CONFIGPARAM,
54 	TRACE_CODE_SME_RX_HDD_GET_MODPROFFIELDS,
55 	TRACE_CODE_SME_RX_HDD_SET_CONFIG_PWRSAVE,
56 	TRACE_CODE_SME_RX_HDD_GET_CONFIG_PWRSAVE,
57 	TRACE_CODE_SME_RX_HDD_ENABLE_PWRSAVE,
58 	TRACE_CODE_SME_RX_HDD_DISABLE_PWRSAVE,
59 	TRACE_CODE_SME_RX_HDD_SIGNAL_POWER_EVENT,
60 	TRACE_CODE_SME_RX_HDD_START_AUTO_BMPSTIMER,
61 	TRACE_CODE_SME_RX_HDD_STOP_AUTO_BMPSTIMER,
62 	TRACE_CODE_SME_RX_HDD_IS_PWRSAVE_ENABLED,
63 	TRACE_CODE_SME_RX_HDD_REQUEST_FULLPOWER,
64 	TRACE_CODE_SME_RX_HDD_REQUEST_BMPS,
65 	TRACE_CODE_SME_RX_HDD_SET_DHCP_FLAG,
66 	TRACE_CODE_SME_RX_HDD_REQUEST_STANDBY,
67 	TRACE_CODE_SME_RX_HDD_WOWL_ADDBCAST_PATTERN,
68 	TRACE_CODE_SME_RX_HDD_WOWL_DELBCAST_PATTERN,
69 	TRACE_CODE_SME_RX_HDD_ENTER_WOWL,
70 	TRACE_CODE_SME_RX_HDD_EXIT_WOWL,
71 	TRACE_CODE_SME_RX_HDD_SET_KEY,
72 	TRACE_CODE_SME_RX_HDD_REMOVE_KEY,
73 	TRACE_CODE_SME_RX_HDD_GET_CNTRYCODE,
74 	TRACE_CODE_SME_RX_HDD_SET_CNTRYCODE,
75 	TRACE_CODE_SME_RX_HDD_SET_CFGPRIVACY,
76 	TRACE_CODE_SME_RX_HDD_NEIGHBOR_REPORTREQ,
77 	TRACE_CODE_SME_RX_HDD_DBG_READREG,
78 	TRACE_CODE_SME_RX_HDD_DBG_WRITEREG,
79 	TRACE_CODE_SME_RX_HDD_DBG_READMEM,
80 	TRACE_CODE_SME_RX_HDD_DBG_WRITEMEM,
81 	TRACE_CODE_SME_RX_HDD_OPEN_SESSION,
82 	TRACE_CODE_SME_RX_HDD_CLOSE_SESSION,
83 	TRACE_CODE_SME_RX_HDD_SET_HOSTOFFLOAD,
84 	TRACE_CODE_SME_RX_HDD_SET_GTKOFFLOAD,
85 	TRACE_CODE_SME_RX_HDD_GET_GTKOFFLOAD,
86 	TRACE_CODE_SME_RX_HDD_ABORT_MACSCAN,
87 	TRACE_CODE_SME_RX_HDD_REGISTER_MGMTFR,
88 	TRACE_CODE_SME_RX_HDD_DEREGISTER_MGMTFR,
89 	TRACE_CODE_SME_RX_HDD_REMAIN_ONCHAN,
90 	TRACE_CODE_SME_RX_HDD_SEND_ACTION,
91 	TRACE_CODE_SME_RX_HDD_CANCEL_REMAIN_ONCHAN,
92 	TRACE_CODE_SME_RX_HDD_CONFIG_RXPFIL,
93 	TRACE_CODE_SME_RX_HDD_CONFIG_SUSPENDIND,
94 	TRACE_CODE_SME_RX_HDD_CONFIG_RESUMEREQ,
95 #ifdef WLAN_FEATURE_EXTWOW_SUPPORT
96 	TRACE_CODE_SME_RX_HDD_CONFIG_EXTWOW,
97 	TRACE_CODE_SME_RX_HDD_CONFIG_APP_TYPE1,
98 	TRACE_CODE_SME_RX_HDD_CONFIG_APP_TYPE2,
99 #endif
100 	TRACE_CODE_SME_RX_HDD_SET_MAXTXPOW,
101 	TRACE_CODE_SME_RX_HDD_SET_TXPOW,
102 	TRACE_CODE_SME_RX_HDD_SET_TMLEVEL,
103 	TRACE_CODE_SME_RX_HDD_CAPS_EXCH,
104 	TRACE_CODE_SME_RX_HDD_DISABLE_CAP,
105 	TRACE_CODE_SME_RX_HDD_GET_DEFCCNV,
106 	TRACE_CODE_SME_RX_HDD_GET_CURCC,
107 	TRACE_CODE_SME_RX_HDD_RESET_PW5G,
108 	TRACE_CODE_SME_RX_HDD_UPDATE_RP5G,
109 	TRACE_CODE_SME_RX_HDD_SET_ROAMIBAND,
110 	TRACE_CODE_SME_RX_HDD_UPDATE_RSSIDIFF,
111 	TRACE_CODE_SME_RX_HDD_UPDATE_IMMRSSIDIFF,
112 	TRACE_CODE_SME_RX_HDD_UPDATE_FTENABLED,
113 	TRACE_CODE_SME_RX_HDD_UPDATE_WESMODE,
114 	TRACE_CODE_SME_RX_HDD_SET_SCANCTRL,
115 	TRACE_CODE_SME_RX_HDD_UPDATE_P2P_IE,
116 	TRACE_CODE_SME_RX_HDD_UPDATE_ROAM_SCAN_N_PROBES,
117 	TRACE_CODE_SME_RX_HDD_UPDATE_ROAM_SCAN_HOME_AWAY_TIME,
118 	TRACE_CODE_SME_RX_HDD_STORE_JOIN_REQ,
119 	TRACE_CODE_SME_RX_HDD_CLEAR_JOIN_REQ,
120 	TRACE_CODE_SME_RX_HDD_ISSUE_JOIN_REQ,
121 	TRACE_CODE_SME_RX_HDD_MSG_DEAUTH_STA,
122 #ifdef FEATURE_WLAN_TDLS
123 	TRACE_CODE_SME_RX_HDD_TDLS_LINK_ESTABLISH_PARAM,
124 	TRACE_CODE_SME_RX_HDD_TDLS_CHAN_SWITCH_REQ,
125 	TRACE_CODE_SME_RX_HDD_TDLS_SEND_MGMT_FRAME,
126 	TRACE_CODE_SME_RX_HDD_TDLS_CHANGE_PEER_STA,
127 	TRACE_CODE_SME_RX_HDD_TDLS_ADD_PEER_STA,
128 	TRACE_CODE_SME_RX_HDD_TDLS_DEL_PEER_STA,
129 #endif
130 	TRACE_CODE_SME_RX_HDD_PREF_NET_LIST,
131 	TRACE_CODE_SME_RX_HDD_ROAM_DEL_PMKIDCACHE,
132 	TRACE_CODE_SME_RX_HDD_SEND_MGMT_TX,
133 	/*
134 	 * New trace commands to be added before this comment not at the end
135 	 * Trace codes for SME commands
136 	 */
137 	TRACE_CODE_SME_COMMAND = 250,
138 	TRACE_CODE_SME_TX_WMA_MSG,
139 	TRACE_CODE_SME_RX_WMA_MSG,
140 };
141 
142 void sme_trace_init(struct mac_context *mac);
143 #endif /* __SME_TRACE_H__ */
144