69e421610aaec4ae90fa6a12f82785ae7cc5a458
[lttng-modules.git] / instrumentation / events / lttng-module / regmap.h
1 #undef TRACE_SYSTEM
2 #define TRACE_SYSTEM regmap
3
4 #if !defined(LTTNG_TRACE_REGMAP_H) || defined(TRACE_HEADER_MULTI_READ)
5 #define LTTNG_TRACE_REGMAP_H
6
7 #include "../../../probes/lttng-tracepoint-event.h"
8 #include <linux/ktime.h>
9 #include <linux/version.h>
10
11 #ifndef _TRACE_REGMAP_DEF_
12 #define _TRACE_REGMAP_DEF_
13 struct device;
14 struct regmap;
15 #endif
16
17 /*
18 * Log register events
19 */
20 LTTNG_TRACEPOINT_EVENT_CLASS(regmap_reg,
21
22 TP_PROTO(struct device *dev, unsigned int reg,
23 unsigned int val),
24
25 TP_ARGS(dev, reg, val),
26
27 TP_STRUCT__entry(
28 __string( name, dev_name(dev) )
29 __field( unsigned int, reg )
30 __field( unsigned int, val )
31 ),
32
33 TP_fast_assign(
34 tp_strcpy(name, dev_name(dev))
35 tp_assign(reg, reg)
36 tp_assign(val, val)
37 ),
38
39 TP_printk("%s reg=%x val=%x", __get_str(name),
40 (unsigned int)__entry->reg,
41 (unsigned int)__entry->val)
42 )
43
44 LTTNG_TRACEPOINT_EVENT_INSTANCE(regmap_reg, regmap_reg_write,
45
46 TP_PROTO(struct device *dev, unsigned int reg,
47 unsigned int val),
48
49 TP_ARGS(dev, reg, val)
50
51 )
52
53 LTTNG_TRACEPOINT_EVENT_INSTANCE(regmap_reg, regmap_reg_read,
54
55 TP_PROTO(struct device *dev, unsigned int reg,
56 unsigned int val),
57
58 TP_ARGS(dev, reg, val)
59
60 )
61
62 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,3,0))
63 LTTNG_TRACEPOINT_EVENT_INSTANCE(regmap_reg, regmap_reg_read_cache,
64
65 TP_PROTO(struct device *dev, unsigned int reg,
66 unsigned int val),
67
68 TP_ARGS(dev, reg, val)
69
70 )
71 #endif
72
73 LTTNG_TRACEPOINT_EVENT_CLASS(regmap_block,
74
75 TP_PROTO(struct device *dev, unsigned int reg, int count),
76
77 TP_ARGS(dev, reg, count),
78
79 TP_STRUCT__entry(
80 __string( name, dev_name(dev) )
81 __field( unsigned int, reg )
82 __field( int, count )
83 ),
84
85 TP_fast_assign(
86 tp_strcpy(name, dev_name(dev))
87 tp_assign(reg, reg)
88 tp_assign(count, count)
89 ),
90
91 TP_printk("%s reg=%x count=%d", __get_str(name),
92 (unsigned int)__entry->reg,
93 (int)__entry->count)
94 )
95
96 LTTNG_TRACEPOINT_EVENT_INSTANCE(regmap_block, regmap_hw_read_start,
97
98 TP_PROTO(struct device *dev, unsigned int reg, int count),
99
100 TP_ARGS(dev, reg, count)
101 )
102
103 LTTNG_TRACEPOINT_EVENT_INSTANCE(regmap_block, regmap_hw_read_done,
104
105 TP_PROTO(struct device *dev, unsigned int reg, int count),
106
107 TP_ARGS(dev, reg, count)
108 )
109
110 LTTNG_TRACEPOINT_EVENT_INSTANCE(regmap_block, regmap_hw_write_start,
111
112 TP_PROTO(struct device *dev, unsigned int reg, int count),
113
114 TP_ARGS(dev, reg, count)
115 )
116
117 LTTNG_TRACEPOINT_EVENT_INSTANCE(regmap_block, regmap_hw_write_done,
118
119 TP_PROTO(struct device *dev, unsigned int reg, int count),
120
121 TP_ARGS(dev, reg, count)
122 )
123
124 LTTNG_TRACEPOINT_EVENT_MAP(regcache_sync,
125
126 regmap_regcache_sync,
127
128 TP_PROTO(struct device *dev, const char *type,
129 const char *status),
130
131 TP_ARGS(dev, type, status),
132
133 TP_STRUCT__entry(
134 __string( name, dev_name(dev) )
135 __string( status, status )
136 __string( type, type )
137 ),
138
139 TP_fast_assign(
140 tp_strcpy(name, dev_name(dev))
141 tp_strcpy(status, status)
142 tp_strcpy(type, type)
143 ),
144
145 TP_printk("%s type=%s status=%s", __get_str(name),
146 __get_str(type), __get_str(status))
147 )
148
149 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,4,0))
150 LTTNG_TRACEPOINT_EVENT_CLASS(regmap_bool,
151
152 TP_PROTO(struct device *dev, bool flag),
153
154 TP_ARGS(dev, flag),
155
156 TP_STRUCT__entry(
157 __string( name, dev_name(dev) )
158 __field( int, flag )
159 ),
160
161 TP_fast_assign(
162 tp_strcpy(name, dev_name(dev))
163 tp_assign(flag, flag)
164 ),
165
166 TP_printk("%s flag=%d", __get_str(name),
167 (int)__entry->flag)
168 )
169
170 LTTNG_TRACEPOINT_EVENT_INSTANCE(regmap_bool, regmap_cache_only,
171
172 TP_PROTO(struct device *dev, bool flag),
173
174 TP_ARGS(dev, flag)
175
176 )
177
178 LTTNG_TRACEPOINT_EVENT_INSTANCE(regmap_bool, regmap_cache_bypass,
179
180 TP_PROTO(struct device *dev, bool flag),
181
182 TP_ARGS(dev, flag)
183
184 )
185 #endif
186
187 #endif /* LTTNG_TRACE_REGMAP_H */
188
189 /* This part must be outside protection */
190 #include "../../../probes/define_trace.h"
This page took 0.031917 seconds and 3 git commands to generate.