xref: /linux/drivers/misc/mei/mei-trace.h (revision cb4eb6771c0f8fd1c52a8f6fdec7762fb087380a)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  * Copyright (c) 2015-2016, Intel Corporation. All rights reserved.
4  * Intel Management Engine Interface (Intel MEI) Linux driver
5  */
6 
7 #if !defined(_MEI_TRACE_H_) || defined(TRACE_HEADER_MULTI_READ)
8 #define _MEI_TRACE_H_
9 
10 #include <linux/stringify.h>
11 #include <linux/types.h>
12 #include <linux/tracepoint.h>
13 
14 #include <linux/device.h>
15 
16 #undef TRACE_SYSTEM
17 #define TRACE_SYSTEM mei
18 
19 TRACE_EVENT(mei_reg_read,
20 	TP_PROTO(const struct device *dev, const char *reg, u32 offs, u32 val),
21 	TP_ARGS(dev, reg, offs, val),
22 	TP_STRUCT__entry(
23 		__string(dev, dev_name(dev))
24 		__string(reg, reg)
25 		__field(u32, offs)
26 		__field(u32, val)
27 	),
28 	TP_fast_assign(
29 		__assign_str(dev);
30 		__assign_str(reg);
31 		__entry->offs = offs;
32 		__entry->val = val;
33 	),
34 	TP_printk("[%s] read %s:[%#x] = %#x",
35 		  __get_str(dev), __get_str(reg), __entry->offs, __entry->val)
36 );
37 
38 TRACE_EVENT(mei_reg_write,
39 	TP_PROTO(const struct device *dev, const char *reg, u32 offs, u32 val),
40 	TP_ARGS(dev, reg, offs, val),
41 	TP_STRUCT__entry(
42 		__string(dev, dev_name(dev))
43 		__string(reg, reg)
44 		__field(u32, offs)
45 		__field(u32, val)
46 	),
47 	TP_fast_assign(
48 		__assign_str(dev);
49 		__assign_str(reg);
50 		__entry->offs = offs;
51 		__entry->val = val;
52 	),
53 	TP_printk("[%s] write %s[%#x] = %#x",
54 		  __get_str(dev), __get_str(reg),  __entry->offs, __entry->val)
55 );
56 
57 TRACE_EVENT(mei_pci_cfg_read,
58 	TP_PROTO(const struct device *dev, const char *reg, u32 offs, u32 val, int ret),
59 	TP_ARGS(dev, reg, offs, val, ret),
60 	TP_STRUCT__entry(
61 		__string(dev, dev_name(dev))
62 		__string(reg, reg)
63 		__field(u32, offs)
64 		__field(u32, val)
65 		__field(int, ret)
66 	),
67 	TP_fast_assign(
68 		__assign_str(dev);
69 		__assign_str(reg);
70 		__entry->offs = offs;
71 		__entry->val = val;
72 		__entry->ret = ret;
73 	),
74 	TP_printk("[%s] pci cfg read %s:[%#x] = %#x, ret = %d",
75 		  __get_str(dev), __get_str(reg), __entry->offs, __entry->val, __entry->ret)
76 );
77 
78 #endif /* _MEI_TRACE_H_ */
79 
80 /* This part must be outside protection */
81 #undef TRACE_INCLUDE_PATH
82 #undef TRACE_INCLUDE_FILE
83 #define TRACE_INCLUDE_PATH .
84 #define TRACE_INCLUDE_FILE mei-trace
85 #include <trace/define_trace.h>
86