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