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> 236