Fix: x86 kvm mmutrace instrumentation for kernel < 3.6
[lttng-modules.git] / instrumentation / events / lttng-module / regmap.h
CommitLineData
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
6ec43db8 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_
13struct device;
14struct regmap;
15#endif
16
6bdc39b1
SM
17/*
18 * Log register events
19 */
20LTTNG_TRACEPOINT_EVENT_CLASS(regmap_reg,
21
22 TP_PROTO(struct regmap *map, unsigned int reg,
23 unsigned int val),
24
25 TP_ARGS(map, reg, val),
26
27 TP_FIELDS(
28 ctf_string(name, regmap_name(map))
29 ctf_integer(unsigned int, reg, reg)
30 ctf_integer(unsigned int, val, val)
31 )
32)
33LTTNG_TRACEPOINT_EVENT_INSTANCE(regmap_reg, regmap_reg_write,
34
35 TP_PROTO(struct regmap *map, unsigned int reg,
36 unsigned int val),
37
38 TP_ARGS(map, reg, val)
39)
40
41LTTNG_TRACEPOINT_EVENT_INSTANCE(regmap_reg, regmap_reg_read,
42
43 TP_PROTO(struct regmap *map, unsigned int reg,
44 unsigned int val),
45
46 TP_ARGS(map, reg, val)
47)
b87700e3 48
6bdc39b1
SM
49LTTNG_TRACEPOINT_EVENT_INSTANCE(regmap_reg, regmap_reg_read_cache,
50
51 TP_PROTO(struct regmap *map, unsigned int reg,
52 unsigned int val),
b87700e3 53
6bdc39b1
SM
54 TP_ARGS(map, reg, val)
55)
b87700e3 56
6bdc39b1
SM
57LTTNG_TRACEPOINT_EVENT_CLASS(regmap_block,
58
59 TP_PROTO(struct regmap *map, unsigned int reg, int count),
60
61 TP_ARGS(map, reg, count),
62
63 TP_FIELDS(
64 ctf_string(name, regmap_name(map))
65 ctf_integer(unsigned int, reg, reg)
66 ctf_integer(int, count, count)
67 )
68)
69
70LTTNG_TRACEPOINT_EVENT_INSTANCE(regmap_block, regmap_hw_read_start,
71
72 TP_PROTO(struct regmap *map, unsigned int reg, int count),
73
74 TP_ARGS(map, reg, count)
75)
76
77LTTNG_TRACEPOINT_EVENT_INSTANCE(regmap_block, regmap_hw_read_done,
78
79 TP_PROTO(struct regmap *map, unsigned int reg, int count),
80
81 TP_ARGS(map, reg, count)
82)
83
84LTTNG_TRACEPOINT_EVENT_INSTANCE(regmap_block, regmap_hw_write_start,
85
86 TP_PROTO(struct regmap *map, unsigned int reg, int count),
87
88 TP_ARGS(map, reg, count)
89)
90
91LTTNG_TRACEPOINT_EVENT_INSTANCE(regmap_block, regmap_hw_write_done,
92
93 TP_PROTO(struct regmap *map, unsigned int reg, int count),
94
95 TP_ARGS(map, reg, count)
96)
6bdc39b1 97
6bdc39b1
SM
98LTTNG_TRACEPOINT_EVENT_MAP(regcache_sync,
99
100 regmap_regcache_sync,
b87700e3 101
6bdc39b1
SM
102 TP_PROTO(struct regmap *map, const char *type,
103 const char *status),
104
105 TP_ARGS(map, type, status),
106
107 TP_FIELDS(
108 ctf_string(name, regmap_name(map))
109 ctf_string(status, status)
110 ctf_string(type, type)
111 )
112)
b87700e3 113
6bdc39b1
SM
114LTTNG_TRACEPOINT_EVENT_CLASS(regmap_bool,
115
116 TP_PROTO(struct regmap *map, bool flag),
117
118 TP_ARGS(map, flag),
119
120 TP_FIELDS(
121 ctf_string(name, regmap_name(map))
122 ctf_integer(int, flag, flag)
123 )
124)
b87700e3 125
6bdc39b1
SM
126LTTNG_TRACEPOINT_EVENT_INSTANCE(regmap_bool, regmap_cache_only,
127
128 TP_PROTO(struct regmap *map, bool flag),
129
130 TP_ARGS(map, flag)
131)
132
133LTTNG_TRACEPOINT_EVENT_INSTANCE(regmap_bool, regmap_cache_bypass,
134
135 TP_PROTO(struct regmap *map, bool flag),
136
137 TP_ARGS(map, flag)
138
139)
b87700e3 140
3bc29f0a 141#endif /* LTTNG_TRACE_REGMAP_H */
b87700e3
AG
142
143/* This part must be outside protection */
6ec43db8 144#include <probes/define_trace.h>
This page took 0.041495 seconds and 4 git commands to generate.