Commit | Line | Data |
---|---|---|
b87700e3 AG |
1 | #undef TRACE_SYSTEM |
2 | #define TRACE_SYSTEM regmap | |
3 | ||
3bc29f0a MD |
4 | #if !defined(LTTNG_TRACE_REGMAP_H) || defined(TRACE_HEADER_MULTI_READ) |
5 | #define LTTNG_TRACE_REGMAP_H | |
b87700e3 | 6 | |
3bc29f0a | 7 | #include "../../../probes/lttng-tracepoint-event.h" |
b87700e3 | 8 | #include <linux/ktime.h> |
b87700e3 AG |
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 | ||
6bdc39b1 SM |
17 | #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,19,4)) |
18 | /* | |
19 | * Log register events | |
20 | */ | |
21 | LTTNG_TRACEPOINT_EVENT_CLASS(regmap_reg, | |
22 | ||
23 | TP_PROTO(struct regmap *map, unsigned int reg, | |
24 | unsigned int val), | |
25 | ||
26 | TP_ARGS(map, reg, val), | |
27 | ||
28 | TP_FIELDS( | |
29 | ctf_string(name, regmap_name(map)) | |
30 | ctf_integer(unsigned int, reg, reg) | |
31 | ctf_integer(unsigned int, val, val) | |
32 | ) | |
33 | ) | |
34 | LTTNG_TRACEPOINT_EVENT_INSTANCE(regmap_reg, regmap_reg_write, | |
35 | ||
36 | TP_PROTO(struct regmap *map, unsigned int reg, | |
37 | unsigned int val), | |
38 | ||
39 | TP_ARGS(map, reg, val) | |
40 | ) | |
41 | ||
42 | LTTNG_TRACEPOINT_EVENT_INSTANCE(regmap_reg, regmap_reg_read, | |
43 | ||
44 | TP_PROTO(struct regmap *map, unsigned int reg, | |
45 | unsigned int val), | |
46 | ||
47 | TP_ARGS(map, reg, val) | |
48 | ) | |
49 | #else | |
b87700e3 AG |
50 | /* |
51 | * Log register events | |
52 | */ | |
3bc29f0a | 53 | LTTNG_TRACEPOINT_EVENT_CLASS(regmap_reg, |
b87700e3 AG |
54 | |
55 | TP_PROTO(struct device *dev, unsigned int reg, | |
56 | unsigned int val), | |
57 | ||
58 | TP_ARGS(dev, reg, val), | |
59 | ||
f127e61e MD |
60 | TP_FIELDS( |
61 | ctf_string(name, dev_name(dev)) | |
62 | ctf_integer(unsigned int, reg, reg) | |
63 | ctf_integer(unsigned int, val, val) | |
64 | ) | |
b87700e3 AG |
65 | ) |
66 | ||
3bc29f0a | 67 | LTTNG_TRACEPOINT_EVENT_INSTANCE(regmap_reg, regmap_reg_write, |
b87700e3 AG |
68 | |
69 | TP_PROTO(struct device *dev, unsigned int reg, | |
70 | unsigned int val), | |
71 | ||
72 | TP_ARGS(dev, reg, val) | |
b87700e3 AG |
73 | ) |
74 | ||
3bc29f0a | 75 | LTTNG_TRACEPOINT_EVENT_INSTANCE(regmap_reg, regmap_reg_read, |
b87700e3 AG |
76 | |
77 | TP_PROTO(struct device *dev, unsigned int reg, | |
78 | unsigned int val), | |
79 | ||
80 | TP_ARGS(dev, reg, val) | |
b87700e3 | 81 | ) |
6bdc39b1 SM |
82 | #endif |
83 | ||
84 | #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,19,4)) | |
85 | LTTNG_TRACEPOINT_EVENT_INSTANCE(regmap_reg, regmap_reg_read_cache, | |
86 | ||
87 | TP_PROTO(struct regmap *map, unsigned int reg, | |
88 | unsigned int val), | |
b87700e3 | 89 | |
6bdc39b1 SM |
90 | TP_ARGS(map, reg, val) |
91 | ) | |
92 | #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(3,3,0)) | |
3bc29f0a | 93 | LTTNG_TRACEPOINT_EVENT_INSTANCE(regmap_reg, regmap_reg_read_cache, |
b87700e3 AG |
94 | |
95 | TP_PROTO(struct device *dev, unsigned int reg, | |
96 | unsigned int val), | |
97 | ||
98 | TP_ARGS(dev, reg, val) | |
b87700e3 AG |
99 | ) |
100 | #endif | |
101 | ||
6bdc39b1 SM |
102 | #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,19,4)) |
103 | LTTNG_TRACEPOINT_EVENT_CLASS(regmap_block, | |
104 | ||
105 | TP_PROTO(struct regmap *map, unsigned int reg, int count), | |
106 | ||
107 | TP_ARGS(map, reg, count), | |
108 | ||
109 | TP_FIELDS( | |
110 | ctf_string(name, regmap_name(map)) | |
111 | ctf_integer(unsigned int, reg, reg) | |
112 | ctf_integer(int, count, count) | |
113 | ) | |
114 | ) | |
115 | ||
116 | LTTNG_TRACEPOINT_EVENT_INSTANCE(regmap_block, regmap_hw_read_start, | |
117 | ||
118 | TP_PROTO(struct regmap *map, unsigned int reg, int count), | |
119 | ||
120 | TP_ARGS(map, reg, count) | |
121 | ) | |
122 | ||
123 | LTTNG_TRACEPOINT_EVENT_INSTANCE(regmap_block, regmap_hw_read_done, | |
124 | ||
125 | TP_PROTO(struct regmap *map, unsigned int reg, int count), | |
126 | ||
127 | TP_ARGS(map, reg, count) | |
128 | ) | |
129 | ||
130 | LTTNG_TRACEPOINT_EVENT_INSTANCE(regmap_block, regmap_hw_write_start, | |
131 | ||
132 | TP_PROTO(struct regmap *map, unsigned int reg, int count), | |
133 | ||
134 | TP_ARGS(map, reg, count) | |
135 | ) | |
136 | ||
137 | LTTNG_TRACEPOINT_EVENT_INSTANCE(regmap_block, regmap_hw_write_done, | |
138 | ||
139 | TP_PROTO(struct regmap *map, unsigned int reg, int count), | |
140 | ||
141 | TP_ARGS(map, reg, count) | |
142 | ) | |
143 | #else | |
3bc29f0a | 144 | LTTNG_TRACEPOINT_EVENT_CLASS(regmap_block, |
b87700e3 AG |
145 | |
146 | TP_PROTO(struct device *dev, unsigned int reg, int count), | |
147 | ||
148 | TP_ARGS(dev, reg, count), | |
149 | ||
f127e61e MD |
150 | TP_FIELDS( |
151 | ctf_string(name, dev_name(dev)) | |
152 | ctf_integer(unsigned int, reg, reg) | |
153 | ctf_integer(int, count, count) | |
154 | ) | |
b87700e3 AG |
155 | ) |
156 | ||
3bc29f0a | 157 | LTTNG_TRACEPOINT_EVENT_INSTANCE(regmap_block, regmap_hw_read_start, |
b87700e3 AG |
158 | |
159 | TP_PROTO(struct device *dev, unsigned int reg, int count), | |
160 | ||
161 | TP_ARGS(dev, reg, count) | |
162 | ) | |
163 | ||
3bc29f0a | 164 | LTTNG_TRACEPOINT_EVENT_INSTANCE(regmap_block, regmap_hw_read_done, |
b87700e3 AG |
165 | |
166 | TP_PROTO(struct device *dev, unsigned int reg, int count), | |
167 | ||
168 | TP_ARGS(dev, reg, count) | |
169 | ) | |
170 | ||
3bc29f0a | 171 | LTTNG_TRACEPOINT_EVENT_INSTANCE(regmap_block, regmap_hw_write_start, |
b87700e3 AG |
172 | |
173 | TP_PROTO(struct device *dev, unsigned int reg, int count), | |
174 | ||
175 | TP_ARGS(dev, reg, count) | |
176 | ) | |
177 | ||
3bc29f0a | 178 | LTTNG_TRACEPOINT_EVENT_INSTANCE(regmap_block, regmap_hw_write_done, |
b87700e3 AG |
179 | |
180 | TP_PROTO(struct device *dev, unsigned int reg, int count), | |
181 | ||
182 | TP_ARGS(dev, reg, count) | |
183 | ) | |
6bdc39b1 SM |
184 | #endif |
185 | ||
186 | #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,19,4)) | |
187 | LTTNG_TRACEPOINT_EVENT_MAP(regcache_sync, | |
188 | ||
189 | regmap_regcache_sync, | |
b87700e3 | 190 | |
6bdc39b1 SM |
191 | TP_PROTO(struct regmap *map, const char *type, |
192 | const char *status), | |
193 | ||
194 | TP_ARGS(map, type, status), | |
195 | ||
196 | TP_FIELDS( | |
197 | ctf_string(name, regmap_name(map)) | |
198 | ctf_string(status, status) | |
199 | ctf_string(type, type) | |
200 | ) | |
201 | ) | |
202 | #else | |
9bbf98da MD |
203 | LTTNG_TRACEPOINT_EVENT_MAP(regcache_sync, |
204 | ||
205 | regmap_regcache_sync, | |
b87700e3 AG |
206 | |
207 | TP_PROTO(struct device *dev, const char *type, | |
208 | const char *status), | |
209 | ||
210 | TP_ARGS(dev, type, status), | |
211 | ||
f127e61e MD |
212 | TP_FIELDS( |
213 | ctf_string(name, dev_name(dev)) | |
214 | ctf_string(status, status) | |
215 | ctf_string(type, type) | |
216 | ) | |
b87700e3 | 217 | ) |
6bdc39b1 SM |
218 | #endif |
219 | ||
220 | #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,19,4)) | |
221 | LTTNG_TRACEPOINT_EVENT_CLASS(regmap_bool, | |
222 | ||
223 | TP_PROTO(struct regmap *map, bool flag), | |
224 | ||
225 | TP_ARGS(map, flag), | |
226 | ||
227 | TP_FIELDS( | |
228 | ctf_string(name, regmap_name(map)) | |
229 | ctf_integer(int, flag, flag) | |
230 | ) | |
231 | ) | |
b87700e3 | 232 | |
6bdc39b1 SM |
233 | LTTNG_TRACEPOINT_EVENT_INSTANCE(regmap_bool, regmap_cache_only, |
234 | ||
235 | TP_PROTO(struct regmap *map, bool flag), | |
236 | ||
237 | TP_ARGS(map, flag) | |
238 | ) | |
239 | ||
240 | LTTNG_TRACEPOINT_EVENT_INSTANCE(regmap_bool, regmap_cache_bypass, | |
241 | ||
242 | TP_PROTO(struct regmap *map, bool flag), | |
243 | ||
244 | TP_ARGS(map, flag) | |
245 | ||
246 | ) | |
247 | #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(3,4,0)) | |
3bc29f0a | 248 | LTTNG_TRACEPOINT_EVENT_CLASS(regmap_bool, |
b87700e3 AG |
249 | |
250 | TP_PROTO(struct device *dev, bool flag), | |
251 | ||
252 | TP_ARGS(dev, flag), | |
253 | ||
f127e61e MD |
254 | TP_FIELDS( |
255 | ctf_string(name, dev_name(dev)) | |
256 | ctf_integer(int, flag, flag) | |
257 | ) | |
b87700e3 AG |
258 | ) |
259 | ||
3bc29f0a | 260 | LTTNG_TRACEPOINT_EVENT_INSTANCE(regmap_bool, regmap_cache_only, |
b87700e3 AG |
261 | |
262 | TP_PROTO(struct device *dev, bool flag), | |
263 | ||
264 | TP_ARGS(dev, flag) | |
b87700e3 AG |
265 | ) |
266 | ||
3bc29f0a | 267 | LTTNG_TRACEPOINT_EVENT_INSTANCE(regmap_bool, regmap_cache_bypass, |
b87700e3 AG |
268 | |
269 | TP_PROTO(struct device *dev, bool flag), | |
270 | ||
271 | TP_ARGS(dev, flag) | |
b87700e3 AG |
272 | ) |
273 | #endif | |
274 | ||
3bc29f0a | 275 | #endif /* LTTNG_TRACE_REGMAP_H */ |
b87700e3 AG |
276 | |
277 | /* This part must be outside protection */ | |
278 | #include "../../../probes/define_trace.h" |