root/include/trace/events/asoc.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


   1 /* SPDX-License-Identifier: GPL-2.0 */
   2 #undef TRACE_SYSTEM
   3 #define TRACE_SYSTEM asoc
   4 
   5 #if !defined(_TRACE_ASOC_H) || defined(TRACE_HEADER_MULTI_READ)
   6 #define _TRACE_ASOC_H
   7 
   8 #include <linux/ktime.h>
   9 #include <linux/tracepoint.h>
  10 
  11 #define DAPM_DIRECT "(direct)"
  12 #define DAPM_ARROW(dir) (((dir) == SND_SOC_DAPM_DIR_OUT) ? "->" : "<-")
  13 
  14 struct snd_soc_jack;
  15 struct snd_soc_card;
  16 struct snd_soc_dapm_widget;
  17 struct snd_soc_dapm_path;
  18 
  19 DECLARE_EVENT_CLASS(snd_soc_card,
  20 
  21         TP_PROTO(struct snd_soc_card *card, int val),
  22 
  23         TP_ARGS(card, val),
  24 
  25         TP_STRUCT__entry(
  26                 __string(       name,           card->name      )
  27                 __field(        int,            val             )
  28         ),
  29 
  30         TP_fast_assign(
  31                 __assign_str(name, card->name);
  32                 __entry->val = val;
  33         ),
  34 
  35         TP_printk("card=%s val=%d", __get_str(name), (int)__entry->val)
  36 );
  37 
  38 DEFINE_EVENT(snd_soc_card, snd_soc_bias_level_start,
  39 
  40         TP_PROTO(struct snd_soc_card *card, int val),
  41 
  42         TP_ARGS(card, val)
  43 
  44 );
  45 
  46 DEFINE_EVENT(snd_soc_card, snd_soc_bias_level_done,
  47 
  48         TP_PROTO(struct snd_soc_card *card, int val),
  49 
  50         TP_ARGS(card, val)
  51 
  52 );
  53 
  54 DECLARE_EVENT_CLASS(snd_soc_dapm_basic,
  55 
  56         TP_PROTO(struct snd_soc_card *card),
  57 
  58         TP_ARGS(card),
  59 
  60         TP_STRUCT__entry(
  61                 __string(       name,   card->name      )
  62         ),
  63 
  64         TP_fast_assign(
  65                 __assign_str(name, card->name);
  66         ),
  67 
  68         TP_printk("card=%s", __get_str(name))
  69 );
  70 
  71 DEFINE_EVENT(snd_soc_dapm_basic, snd_soc_dapm_start,
  72 
  73         TP_PROTO(struct snd_soc_card *card),
  74 
  75         TP_ARGS(card)
  76 
  77 );
  78 
  79 DEFINE_EVENT(snd_soc_dapm_basic, snd_soc_dapm_done,
  80 
  81         TP_PROTO(struct snd_soc_card *card),
  82 
  83         TP_ARGS(card)
  84 
  85 );
  86 
  87 DECLARE_EVENT_CLASS(snd_soc_dapm_widget,
  88 
  89         TP_PROTO(struct snd_soc_dapm_widget *w, int val),
  90 
  91         TP_ARGS(w, val),
  92 
  93         TP_STRUCT__entry(
  94                 __string(       name,   w->name         )
  95                 __field(        int,    val             )
  96         ),
  97 
  98         TP_fast_assign(
  99                 __assign_str(name, w->name);
 100                 __entry->val = val;
 101         ),
 102 
 103         TP_printk("widget=%s val=%d", __get_str(name),
 104                   (int)__entry->val)
 105 );
 106 
 107 DEFINE_EVENT(snd_soc_dapm_widget, snd_soc_dapm_widget_power,
 108 
 109         TP_PROTO(struct snd_soc_dapm_widget *w, int val),
 110 
 111         TP_ARGS(w, val)
 112 
 113 );
 114 
 115 DEFINE_EVENT(snd_soc_dapm_widget, snd_soc_dapm_widget_event_start,
 116 
 117         TP_PROTO(struct snd_soc_dapm_widget *w, int val),
 118 
 119         TP_ARGS(w, val)
 120 
 121 );
 122 
 123 DEFINE_EVENT(snd_soc_dapm_widget, snd_soc_dapm_widget_event_done,
 124 
 125         TP_PROTO(struct snd_soc_dapm_widget *w, int val),
 126 
 127         TP_ARGS(w, val)
 128 
 129 );
 130 
 131 TRACE_EVENT(snd_soc_dapm_walk_done,
 132 
 133         TP_PROTO(struct snd_soc_card *card),
 134 
 135         TP_ARGS(card),
 136 
 137         TP_STRUCT__entry(
 138                 __string(       name,   card->name              )
 139                 __field(        int,    power_checks            )
 140                 __field(        int,    path_checks             )
 141                 __field(        int,    neighbour_checks        )
 142         ),
 143 
 144         TP_fast_assign(
 145                 __assign_str(name, card->name);
 146                 __entry->power_checks = card->dapm_stats.power_checks;
 147                 __entry->path_checks = card->dapm_stats.path_checks;
 148                 __entry->neighbour_checks = card->dapm_stats.neighbour_checks;
 149         ),
 150 
 151         TP_printk("%s: checks %d power, %d path, %d neighbour",
 152                   __get_str(name), (int)__entry->power_checks,
 153                   (int)__entry->path_checks, (int)__entry->neighbour_checks)
 154 );
 155 
 156 TRACE_EVENT(snd_soc_dapm_path,
 157 
 158         TP_PROTO(struct snd_soc_dapm_widget *widget,
 159                 enum snd_soc_dapm_direction dir,
 160                 struct snd_soc_dapm_path *path),
 161 
 162         TP_ARGS(widget, dir, path),
 163 
 164         TP_STRUCT__entry(
 165                 __string(       wname,  widget->name            )
 166                 __string(       pname,  path->name ? path->name : DAPM_DIRECT)
 167                 __string(       pnname, path->node[dir]->name   )
 168                 __field(        int,    path_node               )
 169                 __field(        int,    path_connect            )
 170                 __field(        int,    path_dir                )
 171         ),
 172 
 173         TP_fast_assign(
 174                 __assign_str(wname, widget->name);
 175                 __assign_str(pname, path->name ? path->name : DAPM_DIRECT);
 176                 __assign_str(pnname, path->node[dir]->name);
 177                 __entry->path_connect = path->connect;
 178                 __entry->path_node = (long)path->node[dir];
 179                 __entry->path_dir = dir;
 180         ),
 181 
 182         TP_printk("%c%s %s %s %s %s",
 183                 (int) __entry->path_node &&
 184                 (int) __entry->path_connect ? '*' : ' ',
 185                 __get_str(wname), DAPM_ARROW(__entry->path_dir),
 186                 __get_str(pname), DAPM_ARROW(__entry->path_dir),
 187                 __get_str(pnname))
 188 );
 189 
 190 TRACE_EVENT(snd_soc_dapm_connected,
 191 
 192         TP_PROTO(int paths, int stream),
 193 
 194         TP_ARGS(paths, stream),
 195 
 196         TP_STRUCT__entry(
 197                 __field(        int,    paths           )
 198                 __field(        int,    stream          )
 199         ),
 200 
 201         TP_fast_assign(
 202                 __entry->paths = paths;
 203                 __entry->stream = stream;
 204         ),
 205 
 206         TP_printk("%s: found %d paths",
 207                 __entry->stream ? "capture" : "playback", __entry->paths)
 208 );
 209 
 210 TRACE_EVENT(snd_soc_jack_irq,
 211 
 212         TP_PROTO(const char *name),
 213 
 214         TP_ARGS(name),
 215 
 216         TP_STRUCT__entry(
 217                 __string(       name,   name            )
 218         ),
 219 
 220         TP_fast_assign(
 221                 __assign_str(name, name);
 222         ),
 223 
 224         TP_printk("%s", __get_str(name))
 225 );
 226 
 227 TRACE_EVENT(snd_soc_jack_report,
 228 
 229         TP_PROTO(struct snd_soc_jack *jack, int mask, int val),
 230 
 231         TP_ARGS(jack, mask, val),
 232 
 233         TP_STRUCT__entry(
 234                 __string(       name,           jack->jack->id          )
 235                 __field(        int,            mask                    )
 236                 __field(        int,            val                     )
 237         ),
 238 
 239         TP_fast_assign(
 240                 __assign_str(name, jack->jack->id);
 241                 __entry->mask = mask;
 242                 __entry->val = val;
 243         ),
 244 
 245         TP_printk("jack=%s %x/%x", __get_str(name), (int)__entry->val,
 246                   (int)__entry->mask)
 247 );
 248 
 249 TRACE_EVENT(snd_soc_jack_notify,
 250 
 251         TP_PROTO(struct snd_soc_jack *jack, int val),
 252 
 253         TP_ARGS(jack, val),
 254 
 255         TP_STRUCT__entry(
 256                 __string(       name,           jack->jack->id          )
 257                 __field(        int,            val                     )
 258         ),
 259 
 260         TP_fast_assign(
 261                 __assign_str(name, jack->jack->id);
 262                 __entry->val = val;
 263         ),
 264 
 265         TP_printk("jack=%s %x", __get_str(name), (int)__entry->val)
 266 );
 267 
 268 #endif /* _TRACE_ASOC_H */
 269 
 270 /* This part must be outside protection */
 271 #include <trace/define_trace.h>

/* [<][>][^][v][top][bottom][index][help] */