blob: ecb97c8f730c157cc53ed8d364bf01f0078cf6b0 [file] [log] [blame]
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08001/*
Srinivas Girigowda609fa842017-03-25 00:58:13 -07002 * Copyright (c) 2014-2017 The Linux Foundation. All rights reserved.
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003 *
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08004 * Permission to use, copy, modify, and/or distribute this software for
5 * any purpose with or without fee is hereby granted, provided that the
6 * above copyright notice and this permission notice appear in all
7 * copies.
8 *
9 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
10 * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
11 * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
12 * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
13 * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
14 * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
15 * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
16 * PERFORMANCE OF THIS SOFTWARE.
17 */
18
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080019#ifndef __WLAN_HDD_TRACE_H__
20#define __WLAN_HDD_TRACE_H__
21
22#include "mac_trace.h"
23
24#define NO_SESSION 0xFF
25
26#undef ENUMS
27#define ENUMS \
28 ENUM(TRACE_CODE_HDD_OPEN_REQUEST) \
29 ENUM(TRACE_CODE_HDD_STOP_REQUEST) \
30 ENUM(TRACE_CODE_HDD_TX_TIMEOUT) \
31 ENUM(TRACE_CODE_HDD_P2P_DEV_ADDR_IOCTL) \
32 ENUM(TRACE_CODE_HDD_SETSUSPENDMODE_IOCTL) \
33 ENUM(TRACE_CODE_HDD_SETROAMTRIGGER_IOCTL) \
34 ENUM(TRACE_CODE_HDD_GETROAMTRIGGER_IOCTL) \
35 ENUM(TRACE_CODE_HDD_SETROAMSCANPERIOD_IOCTL) \
36 ENUM(TRACE_CODE_HDD_GETROAMSCANPERIOD_IOCTL) \
37 ENUM(TRACE_CODE_HDD_SETROAMDELTA_IOCTL) \
38 ENUM(TRACE_CODE_HDD_GETROAMDELTA_IOCTL) \
39 ENUM(TRACE_CODE_HDD_GETBAND_IOCTL) \
40 ENUM(TRACE_CODE_HDD_GETCOUNTRYREV_IOCTL) \
41 ENUM(TRACE_CODE_HDD_SETROAMSCANCHANNELS_IOCTL) \
42 ENUM(TRACE_CODE_HDD_GETROAMSCANCHANNELS_IOCTL) \
43 ENUM(TRACE_CODE_HDD_HOSTAPD_OPEN_REQUEST) \
44 ENUM(TRACE_CODE_HDD_HOSTAPD_STOP_REQUEST) \
45 ENUM(TRACE_CODE_HDD_HOSTAPD_UNINIT_REQUEST) \
46 ENUM(TRACE_CODE_HDD_SOFTAP_TX_TIMEOUT) \
47 ENUM(TRACE_CODE_HDD_HOSTAPD_SET_MAC_ADDR) \
48 ENUM(TRACE_CODE_HDD_HOSTAPD_P2P_SET_NOA_IOCTL) \
49 ENUM(TRACE_CODE_HDD_HOSTAPD_P2P_SET_PS_IOCTL) \
50 ENUM(TRACE_CODE_HDD_HOSTAPD_SET_SAP_CHANNEL_LIST_IOCTL) \
51 ENUM(TRACE_CODE_HDD_ADD_VIRTUAL_INTF) \
52 ENUM(TRACE_CODE_HDD_DEL_VIRTUAL_INTF) \
53 ENUM(TRACE_CODE_HDD_CHANGE_VIRTUAL_INTF) \
54 ENUM(TRACE_CODE_HDD_CFG80211_START_AP) \
55 ENUM(TRACE_CODE_HDD_CFG80211_CHANGE_BEACON) \
56 ENUM(TRACE_CODE_HDD_CFG80211_STOP_AP) \
57 ENUM(TRACE_CODE_HDD_CFG80211_CHANGE_BSS) \
58 ENUM(TRACE_CODE_HDD_CFG80211_ADD_KEY) \
59 ENUM(TRACE_CODE_HDD_CFG80211_GET_KEY) \
60 ENUM(TRACE_CODE_HDD_CFG80211_SET_DEFAULT_KEY) \
61 ENUM(TRACE_CODE_HDD_CFG80211_CONNECT) \
62 ENUM(TRACE_CODE_HDD_CFG80211_DISCONNECT) \
63 ENUM(TRACE_CODE_HDD_CFG80211_JOIN_IBSS) \
64 ENUM(TRACE_CODE_HDD_CFG80211_LEAVE_IBSS) \
65 ENUM(TRACE_CODE_HDD_CFG80211_SET_WIPHY_PARAMS) \
66 ENUM(TRACE_CODE_HDD_CFG80211_SET_TXPOWER) \
67 ENUM(TRACE_CODE_HDD_CFG80211_GET_TXPOWER) \
68 ENUM(TRACE_CODE_HDD_CFG80211_SET_CHANNEL) \
69 ENUM(TRACE_CODE_HDD_CFG80211_ADD_BEACON) \
70 ENUM(TRACE_CODE_HDD_CFG80211_SET_BEACON) \
71 ENUM(TRACE_CODE_HDD_CFG80211_CHANGE_IFACE) \
72 ENUM(TRACE_CODE_HDD_CHANGE_STATION) \
73 ENUM(TRACE_CODE_HDD_CFG80211_UPDATE_BSS) \
74 ENUM(TRACE_CODE_HDD_CFG80211_SCAN) \
75 ENUM(TRACE_CODE_HDD_REMAIN_ON_CHANNEL) \
76 ENUM(TRACE_CODE_HDD_REMAINCHANREADYHANDLER) \
77 ENUM(TRACE_CODE_HDD_CFG80211_CANCEL_REMAIN_ON_CHANNEL) \
78 ENUM(TRACE_CODE_HDD_ACTION) \
79 ENUM(TRACE_CODE_HDD_MGMT_TX_CANCEL_WAIT) \
80 ENUM(TRACE_CODE_HDD_CFG80211_GET_STA) \
81 ENUM(TRACE_CODE_HDD_CFG80211_SET_POWER_MGMT) \
82 ENUM(TRACE_CODE_HDD_CFG80211_DEL_STA) \
83 ENUM(TRACE_CODE_HDD_CFG80211_ADD_STA) \
84 ENUM(TRACE_CODE_HDD_CFG80211_SET_PMKSA) \
85 ENUM(TRACE_CODE_HDD_CFG80211_UPDATE_FT_IES) \
86 ENUM(TRACE_CODE_HDD_CFG80211_TDLS_MGMT) \
87 ENUM(TRACE_CODE_HDD_CFG80211_TDLS_OPER) \
88 ENUM(TRACE_CODE_HDD_CFG80211_SET_REKEY_DATA) \
89 ENUM(TRACE_CODE_HDD_UNSUPPORTED_IOCTL) \
90 ENUM(TRACE_CODE_HDD_SETROAMSCANCHANNELMINTIME_IOCTL) \
91 ENUM(TRACE_CODE_HDD_GETROAMSCANCHANNELMINTIME_IOCTL) \
92 ENUM(TRACE_CODE_HDD_STORE_JOIN_REQ) \
93 ENUM(TRACE_CODE_HDD_CLEAR_JOIN_REQ) \
Sreelakshmi Konamki6744cff2015-09-07 12:10:39 +053094 ENUM(TRACE_CODE_HDD_ISSUE_JOIN_REQ) \
95 ENUM(TRACE_CODE_HDD_CFG80211_RESUME_WLAN) \
96 ENUM(TRACE_CODE_HDD_CFG80211_SUSPEND_WLAN) \
97 ENUM(TRACE_CODE_HDD_CFG80211_SET_MAC_ACL) \
98 ENUM(TRACE_CODE_HDD_CFG80211_TESTMODE) \
Sreelakshmi Konamkic88f5372015-12-22 12:50:15 +053099 ENUM(TRACE_CODE_HDD_CFG80211_DUMP_SURVEY) \
Sreelakshmi Konamki8dfe91a2016-02-26 16:49:15 +0530100 ENUM(TRACE_CODE_HDD_CFG80211_SCHED_SCAN_START) \
101 ENUM(TRACE_CODE_HDD_CFG80211_SCHED_SCAN_STOP) \
102 ENUM(TRACE_CODE_HDD_CFG80211_DEL_PMKSA) \
103 /*
104 * New CFG80211 enums to be added before this comment.
105 * TRACE_CODE_HDD_RX_SME_MSG is used as code for MTRACE commands.
106 */ \
Sreelakshmi Konamkic88f5372015-12-22 12:50:15 +0530107 ENUM(TRACE_CODE_HDD_RX_SME_MSG)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800108
109enum {
110#undef ENUM
111#define ENUM(enum) enum,
112 ENUMS
113};
114
115/**
116 * hdd_trace_event_string() - Convert trace event to string
117 * @code: trace event enumeration to convert
118 *
119 * Return: string representation of the input enumeration
120 */
121static inline const char *hdd_trace_event_string(uint32_t code)
122{
123 switch (code) {
124 default:
125 return "UNKNOWN";
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800126#undef ENUM
127#define ENUM(enum) CASE_RETURN_STRING(enum)
128 ENUMS
129 }
130}
131
132#undef ENUMS
133#undef ENUM
134
135#ifdef HDD_TRACE_RECORD
136void hdd_trace_init(void);
137#else
138static inline void hdd_trace_init(void) {}
139#endif
140
141#endif