603f5a0f0365019eb758d2d2aec492a1b8f89b6c
[firefly-linux-kernel-4.4.55.git] / include / trace / events / asoc.h
1 #undef TRACE_SYSTEM
2 #define TRACE_SYSTEM asoc
3
4 #if !defined(_TRACE_ASOC_H) || defined(TRACE_HEADER_MULTI_READ)
5 #define _TRACE_ASOC_H
6
7 #include <linux/ktime.h>
8 #include <linux/tracepoint.h>
9
10 struct snd_soc_jack;
11 struct snd_soc_codec;
12 struct snd_soc_platform;
13 struct snd_soc_card;
14 struct snd_soc_dapm_widget;
15
16 /*
17  * Log register events
18  */
19 DECLARE_EVENT_CLASS(snd_soc_reg,
20
21         TP_PROTO(struct snd_soc_codec *codec, unsigned int reg,
22                  unsigned int val),
23
24         TP_ARGS(codec, reg, val),
25
26         TP_STRUCT__entry(
27                 __string(       name,           codec->name     )
28                 __field(        int,            id              )
29                 __field(        unsigned int,   reg             )
30                 __field(        unsigned int,   val             )
31         ),
32
33         TP_fast_assign(
34                 __assign_str(name, codec->name);
35                 __entry->id = codec->id;
36                 __entry->reg = reg;
37                 __entry->val = val;
38         ),
39
40         TP_printk("codec=%s.%d reg=%x val=%x", __get_str(name),
41                   (int)__entry->id, (unsigned int)__entry->reg,
42                   (unsigned int)__entry->val)
43 );
44
45 DEFINE_EVENT(snd_soc_reg, snd_soc_reg_write,
46
47         TP_PROTO(struct snd_soc_codec *codec, unsigned int reg,
48                  unsigned int val),
49
50         TP_ARGS(codec, reg, val)
51
52 );
53
54 DEFINE_EVENT(snd_soc_reg, snd_soc_reg_read,
55
56         TP_PROTO(struct snd_soc_codec *codec, unsigned int reg,
57                  unsigned int val),
58
59         TP_ARGS(codec, reg, val)
60
61 );
62
63 DECLARE_EVENT_CLASS(snd_soc_preg,
64
65         TP_PROTO(struct snd_soc_platform *platform, unsigned int reg,
66                  unsigned int val),
67
68         TP_ARGS(platform, reg, val),
69
70         TP_STRUCT__entry(
71                 __string(       name,           platform->name  )
72                 __field(        int,            id              )
73                 __field(        unsigned int,   reg             )
74                 __field(        unsigned int,   val             )
75         ),
76
77         TP_fast_assign(
78                 __assign_str(name, platform->name);
79                 __entry->id = platform->id;
80                 __entry->reg = reg;
81                 __entry->val = val;
82         ),
83
84         TP_printk("platform=%s.%d reg=%x val=%x", __get_str(name),
85                   (int)__entry->id, (unsigned int)__entry->reg,
86                   (unsigned int)__entry->val)
87 );
88
89 DEFINE_EVENT(snd_soc_preg, snd_soc_preg_write,
90
91         TP_PROTO(struct snd_soc_platform *platform, unsigned int reg,
92                  unsigned int val),
93
94         TP_ARGS(platform, reg, val)
95
96 );
97
98 DEFINE_EVENT(snd_soc_preg, snd_soc_preg_read,
99
100         TP_PROTO(struct snd_soc_platform *platform, unsigned int reg,
101                  unsigned int val),
102
103         TP_ARGS(platform, reg, val)
104
105 );
106
107 DECLARE_EVENT_CLASS(snd_soc_card,
108
109         TP_PROTO(struct snd_soc_card *card, int val),
110
111         TP_ARGS(card, val),
112
113         TP_STRUCT__entry(
114                 __string(       name,           card->name      )
115                 __field(        int,            val             )
116         ),
117
118         TP_fast_assign(
119                 __assign_str(name, card->name);
120                 __entry->val = val;
121         ),
122
123         TP_printk("card=%s val=%d", __get_str(name), (int)__entry->val)
124 );
125
126 DEFINE_EVENT(snd_soc_card, snd_soc_bias_level_start,
127
128         TP_PROTO(struct snd_soc_card *card, int val),
129
130         TP_ARGS(card, val)
131
132 );
133
134 DEFINE_EVENT(snd_soc_card, snd_soc_bias_level_done,
135
136         TP_PROTO(struct snd_soc_card *card, int val),
137
138         TP_ARGS(card, val)
139
140 );
141
142 DECLARE_EVENT_CLASS(snd_soc_dapm_basic,
143
144         TP_PROTO(struct snd_soc_card *card),
145
146         TP_ARGS(card),
147
148         TP_STRUCT__entry(
149                 __string(       name,   card->name      )
150         ),
151
152         TP_fast_assign(
153                 __assign_str(name, card->name);
154         ),
155
156         TP_printk("card=%s", __get_str(name))
157 );
158
159 DEFINE_EVENT(snd_soc_dapm_basic, snd_soc_dapm_start,
160
161         TP_PROTO(struct snd_soc_card *card),
162
163         TP_ARGS(card)
164
165 );
166
167 DEFINE_EVENT(snd_soc_dapm_basic, snd_soc_dapm_done,
168
169         TP_PROTO(struct snd_soc_card *card),
170
171         TP_ARGS(card)
172
173 );
174
175 DECLARE_EVENT_CLASS(snd_soc_dapm_widget,
176
177         TP_PROTO(struct snd_soc_dapm_widget *w, int val),
178
179         TP_ARGS(w, val),
180
181         TP_STRUCT__entry(
182                 __string(       name,   w->name         )
183                 __field(        int,    val             )
184         ),
185
186         TP_fast_assign(
187                 __assign_str(name, w->name);
188                 __entry->val = val;
189         ),
190
191         TP_printk("widget=%s val=%d", __get_str(name),
192                   (int)__entry->val)
193 );
194
195 DEFINE_EVENT(snd_soc_dapm_widget, snd_soc_dapm_widget_power,
196
197         TP_PROTO(struct snd_soc_dapm_widget *w, int val),
198
199         TP_ARGS(w, val)
200
201 );
202
203 DEFINE_EVENT(snd_soc_dapm_widget, snd_soc_dapm_widget_event_start,
204
205         TP_PROTO(struct snd_soc_dapm_widget *w, int val),
206
207         TP_ARGS(w, val)
208
209 );
210
211 DEFINE_EVENT(snd_soc_dapm_widget, snd_soc_dapm_widget_event_done,
212
213         TP_PROTO(struct snd_soc_dapm_widget *w, int val),
214
215         TP_ARGS(w, val)
216
217 );
218
219 TRACE_EVENT(snd_soc_jack_irq,
220
221         TP_PROTO(const char *name),
222
223         TP_ARGS(name),
224
225         TP_STRUCT__entry(
226                 __string(       name,   name            )
227         ),
228
229         TP_fast_assign(
230                 __assign_str(name, name);
231         ),
232
233         TP_printk("%s", __get_str(name))
234 );
235
236 TRACE_EVENT(snd_soc_jack_report,
237
238         TP_PROTO(struct snd_soc_jack *jack, int mask, int val),
239
240         TP_ARGS(jack, mask, val),
241
242         TP_STRUCT__entry(
243                 __string(       name,           jack->jack->name        )
244                 __field(        int,            mask                    )
245                 __field(        int,            val                     )
246         ),
247
248         TP_fast_assign(
249                 __assign_str(name, jack->jack->name);
250                 __entry->mask = mask;
251                 __entry->val = val;
252         ),
253
254         TP_printk("jack=%s %x/%x", __get_str(name), (int)__entry->val,
255                   (int)__entry->mask)
256 );
257
258 TRACE_EVENT(snd_soc_jack_notify,
259
260         TP_PROTO(struct snd_soc_jack *jack, int val),
261
262         TP_ARGS(jack, val),
263
264         TP_STRUCT__entry(
265                 __string(       name,           jack->jack->name        )
266                 __field(        int,            val                     )
267         ),
268
269         TP_fast_assign(
270                 __assign_str(name, jack->jack->name);
271                 __entry->val = val;
272         ),
273
274         TP_printk("jack=%s %x", __get_str(name), (int)__entry->val)
275 );
276
277 TRACE_EVENT(snd_soc_cache_sync,
278
279         TP_PROTO(struct snd_soc_codec *codec, const char *type,
280                  const char *status),
281
282         TP_ARGS(codec, type, status),
283
284         TP_STRUCT__entry(
285                 __string(       name,           codec->name     )
286                 __string(       status,         status          )
287                 __string(       type,           type            )
288                 __field(        int,            id              )
289         ),
290
291         TP_fast_assign(
292                 __assign_str(name, codec->name);
293                 __assign_str(status, status);
294                 __assign_str(type, type);
295                 __entry->id = codec->id;
296         ),
297
298         TP_printk("codec=%s.%d type=%s status=%s", __get_str(name),
299                   (int)__entry->id, __get_str(type), __get_str(status))
300 );
301
302 #endif /* _TRACE_ASOC_H */
303
304 /* This part must be outside protection */
305 #include <trace/define_trace.h>