xref: /OK3568_Linux_fs/kernel/drivers/net/wireless/intel/iwlwifi/iwl-devtrace-ucode.h (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun /* SPDX-License-Identifier: GPL-2.0-only */
2*4882a593Smuzhiyun /******************************************************************************
3*4882a593Smuzhiyun  *
4*4882a593Smuzhiyun  * Copyright(c) 2009 - 2014 Intel Corporation. All rights reserved.
5*4882a593Smuzhiyun  *
6*4882a593Smuzhiyun  * Contact Information:
7*4882a593Smuzhiyun  *  Intel Linux Wireless <linuxwifi@intel.com>
8*4882a593Smuzhiyun  * Intel Corporation, 5200 N.E. Elam Young Parkway, Hillsboro, OR 97124-6497
9*4882a593Smuzhiyun  *
10*4882a593Smuzhiyun  *****************************************************************************/
11*4882a593Smuzhiyun 
12*4882a593Smuzhiyun #if !defined(__IWLWIFI_DEVICE_TRACE_UCODE) || defined(TRACE_HEADER_MULTI_READ)
13*4882a593Smuzhiyun #define __IWLWIFI_DEVICE_TRACE_UCODE
14*4882a593Smuzhiyun 
15*4882a593Smuzhiyun #include <linux/tracepoint.h>
16*4882a593Smuzhiyun 
17*4882a593Smuzhiyun #undef TRACE_SYSTEM
18*4882a593Smuzhiyun #define TRACE_SYSTEM iwlwifi_ucode
19*4882a593Smuzhiyun 
20*4882a593Smuzhiyun TRACE_EVENT(iwlwifi_dev_ucode_cont_event,
21*4882a593Smuzhiyun 	TP_PROTO(const struct device *dev, u32 time, u32 data, u32 ev),
22*4882a593Smuzhiyun 	TP_ARGS(dev, time, data, ev),
23*4882a593Smuzhiyun 	TP_STRUCT__entry(
24*4882a593Smuzhiyun 		DEV_ENTRY
25*4882a593Smuzhiyun 
26*4882a593Smuzhiyun 		__field(u32, time)
27*4882a593Smuzhiyun 		__field(u32, data)
28*4882a593Smuzhiyun 		__field(u32, ev)
29*4882a593Smuzhiyun 	),
30*4882a593Smuzhiyun 	TP_fast_assign(
31*4882a593Smuzhiyun 		DEV_ASSIGN;
32*4882a593Smuzhiyun 		__entry->time = time;
33*4882a593Smuzhiyun 		__entry->data = data;
34*4882a593Smuzhiyun 		__entry->ev = ev;
35*4882a593Smuzhiyun 	),
36*4882a593Smuzhiyun 	TP_printk("[%s] EVT_LOGT:%010u:0x%08x:%04u",
37*4882a593Smuzhiyun 		  __get_str(dev), __entry->time, __entry->data, __entry->ev)
38*4882a593Smuzhiyun );
39*4882a593Smuzhiyun 
40*4882a593Smuzhiyun TRACE_EVENT(iwlwifi_dev_ucode_wrap_event,
41*4882a593Smuzhiyun 	TP_PROTO(const struct device *dev, u32 wraps, u32 n_entry, u32 p_entry),
42*4882a593Smuzhiyun 	TP_ARGS(dev, wraps, n_entry, p_entry),
43*4882a593Smuzhiyun 	TP_STRUCT__entry(
44*4882a593Smuzhiyun 		DEV_ENTRY
45*4882a593Smuzhiyun 
46*4882a593Smuzhiyun 		__field(u32, wraps)
47*4882a593Smuzhiyun 		__field(u32, n_entry)
48*4882a593Smuzhiyun 		__field(u32, p_entry)
49*4882a593Smuzhiyun 	),
50*4882a593Smuzhiyun 	TP_fast_assign(
51*4882a593Smuzhiyun 		DEV_ASSIGN;
52*4882a593Smuzhiyun 		__entry->wraps = wraps;
53*4882a593Smuzhiyun 		__entry->n_entry = n_entry;
54*4882a593Smuzhiyun 		__entry->p_entry = p_entry;
55*4882a593Smuzhiyun 	),
56*4882a593Smuzhiyun 	TP_printk("[%s] wraps=#%02d n=0x%X p=0x%X",
57*4882a593Smuzhiyun 		  __get_str(dev), __entry->wraps, __entry->n_entry,
58*4882a593Smuzhiyun 		  __entry->p_entry)
59*4882a593Smuzhiyun );
60*4882a593Smuzhiyun #endif /* __IWLWIFI_DEVICE_TRACE_UCODE */
61*4882a593Smuzhiyun 
62*4882a593Smuzhiyun #undef TRACE_INCLUDE_PATH
63*4882a593Smuzhiyun #define TRACE_INCLUDE_PATH .
64*4882a593Smuzhiyun #undef TRACE_INCLUDE_FILE
65*4882a593Smuzhiyun #define TRACE_INCLUDE_FILE iwl-devtrace-ucode
66*4882a593Smuzhiyun #include <trace/define_trace.h>
67