Merge branch 'for-linus/i2c-2638' of git://git.fluff.org/bjdooks/linux
[pandora-kernel.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_card;
13 struct snd_soc_dapm_widget;
14
15 /*
16  * Log register events
17  */
18 DECLARE_EVENT_CLASS(snd_soc_reg,
19
20         TP_PROTO(struct snd_soc_codec *codec, unsigned int reg,
21                  unsigned int val),
22
23         TP_ARGS(codec, reg, val),
24
25         TP_STRUCT__entry(
26                 __string(       name,           codec->name     )
27                 __field(        int,            id              )
28                 __field(        unsigned int,   reg             )
29                 __field(        unsigned int,   val             )
30         ),
31
32         TP_fast_assign(
33                 __assign_str(name, codec->name);
34                 __entry->id = codec->id;
35                 __entry->reg = reg;
36                 __entry->val = val;
37         ),
38
39         TP_printk("codec=%s.%d reg=%x val=%x", __get_str(name),
40                   (int)__entry->id, (unsigned int)__entry->reg,
41                   (unsigned int)__entry->val)
42 );
43
44 DEFINE_EVENT(snd_soc_reg, snd_soc_reg_write,
45
46         TP_PROTO(struct snd_soc_codec *codec, unsigned int reg,
47                  unsigned int val),
48
49         TP_ARGS(codec, reg, val)
50
51 );
52
53 DEFINE_EVENT(snd_soc_reg, snd_soc_reg_read,
54
55         TP_PROTO(struct snd_soc_codec *codec, unsigned int reg,
56                  unsigned int val),
57
58         TP_ARGS(codec, reg, val)
59
60 );
61
62 DECLARE_EVENT_CLASS(snd_soc_card,
63
64         TP_PROTO(struct snd_soc_card *card, int val),
65
66         TP_ARGS(card, val),
67
68         TP_STRUCT__entry(
69                 __string(       name,           card->name      )
70                 __field(        int,            val             )
71         ),
72
73         TP_fast_assign(
74                 __assign_str(name, card->name);
75                 __entry->val = val;
76         ),
77
78         TP_printk("card=%s val=%d", __get_str(name), (int)__entry->val)
79 );
80
81 DEFINE_EVENT(snd_soc_card, snd_soc_bias_level_start,
82
83         TP_PROTO(struct snd_soc_card *card, int val),
84
85         TP_ARGS(card, val)
86
87 );
88
89 DEFINE_EVENT(snd_soc_card, snd_soc_bias_level_done,
90
91         TP_PROTO(struct snd_soc_card *card, int val),
92
93         TP_ARGS(card, val)
94
95 );
96
97 DECLARE_EVENT_CLASS(snd_soc_dapm_basic,
98
99         TP_PROTO(struct snd_soc_card *card),
100
101         TP_ARGS(card),
102
103         TP_STRUCT__entry(
104                 __string(       name,   card->name      )
105         ),
106
107         TP_fast_assign(
108                 __assign_str(name, card->name);
109         ),
110
111         TP_printk("card=%s", __get_str(name))
112 );
113
114 DEFINE_EVENT(snd_soc_dapm_basic, snd_soc_dapm_start,
115
116         TP_PROTO(struct snd_soc_card *card),
117
118         TP_ARGS(card)
119
120 );
121
122 DEFINE_EVENT(snd_soc_dapm_basic, snd_soc_dapm_done,
123
124         TP_PROTO(struct snd_soc_card *card),
125
126         TP_ARGS(card)
127
128 );
129
130 DECLARE_EVENT_CLASS(snd_soc_dapm_widget,
131
132         TP_PROTO(struct snd_soc_dapm_widget *w, int val),
133
134         TP_ARGS(w, val),
135
136         TP_STRUCT__entry(
137                 __string(       name,   w->name         )
138                 __field(        int,    val             )
139         ),
140
141         TP_fast_assign(
142                 __assign_str(name, w->name);
143                 __entry->val = val;
144         ),
145
146         TP_printk("widget=%s val=%d", __get_str(name),
147                   (int)__entry->val)
148 );
149
150 DEFINE_EVENT(snd_soc_dapm_widget, snd_soc_dapm_widget_power,
151
152         TP_PROTO(struct snd_soc_dapm_widget *w, int val),
153
154         TP_ARGS(w, val)
155
156 );
157
158 DEFINE_EVENT(snd_soc_dapm_widget, snd_soc_dapm_widget_event_start,
159
160         TP_PROTO(struct snd_soc_dapm_widget *w, int val),
161
162         TP_ARGS(w, val)
163
164 );
165
166 DEFINE_EVENT(snd_soc_dapm_widget, snd_soc_dapm_widget_event_done,
167
168         TP_PROTO(struct snd_soc_dapm_widget *w, int val),
169
170         TP_ARGS(w, val)
171
172 );
173
174 TRACE_EVENT(snd_soc_jack_irq,
175
176         TP_PROTO(const char *name),
177
178         TP_ARGS(name),
179
180         TP_STRUCT__entry(
181                 __string(       name,   name            )
182         ),
183
184         TP_fast_assign(
185                 __assign_str(name, name);
186         ),
187
188         TP_printk("%s", __get_str(name))
189 );
190
191 TRACE_EVENT(snd_soc_jack_report,
192
193         TP_PROTO(struct snd_soc_jack *jack, int mask, int val),
194
195         TP_ARGS(jack, mask, val),
196
197         TP_STRUCT__entry(
198                 __string(       name,           jack->jack->name        )
199                 __field(        int,            mask                    )
200                 __field(        int,            val                     )
201         ),
202
203         TP_fast_assign(
204                 __assign_str(name, jack->jack->name);
205                 __entry->mask = mask;
206                 __entry->val = val;
207         ),
208
209         TP_printk("jack=%s %x/%x", __get_str(name), (int)__entry->val,
210                   (int)__entry->mask)
211 );
212
213 TRACE_EVENT(snd_soc_jack_notify,
214
215         TP_PROTO(struct snd_soc_jack *jack, int val),
216
217         TP_ARGS(jack, val),
218
219         TP_STRUCT__entry(
220                 __string(       name,           jack->jack->name        )
221                 __field(        int,            val                     )
222         ),
223
224         TP_fast_assign(
225                 __assign_str(name, jack->jack->name);
226                 __entry->val = val;
227         ),
228
229         TP_printk("jack=%s %x", __get_str(name), (int)__entry->val)
230 );
231
232 #endif /* _TRACE_ASOC_H */
233
234 /* This part must be outside protection */
235 #include <trace/define_trace.h>