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 | __field(const char *, reg) |
25 | __field(u32, offs) |
26 | __field(u32, val) |
27 | ), |
28 | TP_fast_assign( |
29 | __assign_str(dev, dev_name(dev)); |
30 | __entry->reg = reg; |
31 | __entry->offs = offs; |
32 | __entry->val = val; |
33 | ), |
34 | TP_printk("[%s] read %s:[%#x] = %#x" , |
35 | __get_str(dev), __entry->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 | __field(const char *, reg) |
44 | __field(u32, offs) |
45 | __field(u32, val) |
46 | ), |
47 | TP_fast_assign( |
48 | __assign_str(dev, dev_name(dev)); |
49 | __entry->reg = reg; |
50 | __entry->offs = offs; |
51 | __entry->val = val; |
52 | ), |
53 | TP_printk("[%s] write %s[%#x] = %#x" , |
54 | __get_str(dev), __entry->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), |
59 | TP_ARGS(dev, reg, offs, val), |
60 | TP_STRUCT__entry( |
61 | __string(dev, dev_name(dev)) |
62 | __field(const char *, reg) |
63 | __field(u32, offs) |
64 | __field(u32, val) |
65 | ), |
66 | TP_fast_assign( |
67 | __assign_str(dev, dev_name(dev)); |
68 | __entry->reg = reg; |
69 | __entry->offs = offs; |
70 | __entry->val = val; |
71 | ), |
72 | TP_printk("[%s] pci cfg read %s:[%#x] = %#x" , |
73 | __get_str(dev), __entry->reg, __entry->offs, __entry->val) |
74 | ); |
75 | |
76 | #endif /* _MEI_TRACE_H_ */ |
77 | |
78 | /* This part must be outside protection */ |
79 | #undef TRACE_INCLUDE_PATH |
80 | #undef TRACE_INCLUDE_FILE |
81 | #define TRACE_INCLUDE_PATH . |
82 | #define TRACE_INCLUDE_FILE mei-trace |
83 | #include <trace/define_trace.h> |
84 | |