X-Git-Url: http://git.liburcu.org/?a=blobdiff_plain;f=instrumentation%2Fevents%2Flttng-module%2Fasoc.h;h=eed81cdf9bbb4b85b471b85ad9984c2dfbe34818;hb=b7cdc18250880cc44edeef4a4b42c8ac7a135a6d;hp=bf9cf86f7fef3b81baab32438b155202aa476af5;hpb=7df57eb5d6bdc85ddcf2b9afb6cd0cacfb22096e;p=lttng-modules.git diff --git a/instrumentation/events/lttng-module/asoc.h b/instrumentation/events/lttng-module/asoc.h index bf9cf86f..eed81cdf 100644 --- a/instrumentation/events/lttng-module/asoc.h +++ b/instrumentation/events/lttng-module/asoc.h @@ -1,11 +1,12 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ #undef TRACE_SYSTEM #define TRACE_SYSTEM asoc -#if !defined(_TRACE_ASOC_H) || defined(TRACE_HEADER_MULTI_READ) -#define _TRACE_ASOC_H +#if !defined(LTTNG_TRACE_ASOC_H) || defined(TRACE_HEADER_MULTI_READ) +#define LTTNG_TRACE_ASOC_H +#include #include -#include #include #define DAPM_DIRECT "(direct)" @@ -13,15 +14,22 @@ #ifndef _TRACE_ASOC_DEF #define _TRACE_ASOC_DEF struct snd_soc_jack; +#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,19,0)) struct snd_soc_codec; -#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,1,0)) +#endif +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,1,0) && \ + LINUX_VERSION_CODE < KERNEL_VERSION(3,16,0)) struct snd_soc_platform; #endif struct snd_soc_card; struct snd_soc_dapm_widget; +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0)) +struct snd_soc_dapm_path; +#endif #endif -#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,16,0)) +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,16,0) \ + || LTTNG_RHEL_KERNEL_RANGE(3,10,0,514,0,0, 3,11,0,0,0,0)) #define CODEC_NAME_FIELD component.name #define CODEC_ID_FIELD component.id #else @@ -29,36 +37,28 @@ struct snd_soc_dapm_widget; #define CODEC_ID_FIELD id #endif +#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,16,0)) /* * Log register events */ -DECLARE_EVENT_CLASS(snd_soc_reg, +LTTNG_TRACEPOINT_EVENT_CLASS(asoc_snd_soc_reg, TP_PROTO(struct snd_soc_codec *codec, unsigned int reg, unsigned int val), TP_ARGS(codec, reg, val), - TP_STRUCT__entry( - __string( name, codec->CODEC_NAME_FIELD ) - __field( int, id ) - __field( unsigned int, reg ) - __field( unsigned int, val ) - ), - - TP_fast_assign( - tp_strcpy(name, codec->CODEC_NAME_FIELD) - tp_assign(id, codec->CODEC_ID_FIELD) - tp_assign(reg, reg) - tp_assign(val, val) - ), - - TP_printk("codec=%s.%d reg=%x val=%x", __get_str(name), - (int)__entry->id, (unsigned int)__entry->reg, - (unsigned int)__entry->val) + TP_FIELDS( + ctf_string(name, codec->CODEC_NAME_FIELD) + ctf_integer(int, id, codec->CODEC_ID_FIELD) + ctf_integer(unsigned int, reg, reg) + ctf_integer(unsigned int, val, val) + ) ) -DEFINE_EVENT(snd_soc_reg, snd_soc_reg_write, +LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(asoc_snd_soc_reg, snd_soc_reg_write, + + asoc_snd_soc_reg_write, TP_PROTO(struct snd_soc_codec *codec, unsigned int reg, unsigned int val), @@ -67,7 +67,9 @@ DEFINE_EVENT(snd_soc_reg, snd_soc_reg_write, ) -DEFINE_EVENT(snd_soc_reg, snd_soc_reg_read, +LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(asoc_snd_soc_reg, snd_soc_reg_read, + + asoc_snd_soc_reg_read, TP_PROTO(struct snd_soc_codec *codec, unsigned int reg, unsigned int val), @@ -75,35 +77,28 @@ DEFINE_EVENT(snd_soc_reg, snd_soc_reg_read, TP_ARGS(codec, reg, val) ) +#endif -#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,1,0)) -DECLARE_EVENT_CLASS(snd_soc_preg, +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,1,0) && \ + LINUX_VERSION_CODE < KERNEL_VERSION(3,16,0)) +LTTNG_TRACEPOINT_EVENT_CLASS(asoc_snd_soc_preg, TP_PROTO(struct snd_soc_platform *platform, unsigned int reg, unsigned int val), TP_ARGS(platform, reg, val), - TP_STRUCT__entry( - __string( name, platform->CODEC_NAME_FIELD ) - __field( int, id ) - __field( unsigned int, reg ) - __field( unsigned int, val ) - ), - - TP_fast_assign( - tp_strcpy(name, platform->CODEC_NAME_FIELD) - tp_assign(id, platform->CODEC_ID_FIELD) - tp_assign(reg, reg) - tp_assign(val, val) - ), - - TP_printk("platform=%s.%d reg=%x val=%x", __get_str(name), - (int)__entry->id, (unsigned int)__entry->reg, - (unsigned int)__entry->val) + TP_FIELDS( + ctf_string(name, platform->CODEC_NAME_FIELD) + ctf_integer(int, id, platform->CODEC_ID_FIELD) + ctf_integer(unsigned int, reg, reg) + ctf_integer(unsigned int, val, val) + ) ) -DEFINE_EVENT(snd_soc_preg, snd_soc_preg_write, +LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(asoc_snd_soc_preg, snd_soc_preg_write, + + asoc_snd_soc_preg_write, TP_PROTO(struct snd_soc_platform *platform, unsigned int reg, unsigned int val), @@ -112,7 +107,9 @@ DEFINE_EVENT(snd_soc_preg, snd_soc_preg_write, ) -DEFINE_EVENT(snd_soc_preg, snd_soc_preg_read, +LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(asoc_snd_soc_preg, snd_soc_preg_read, + + asoc_snd_soc_preg_read, TP_PROTO(struct snd_soc_platform *platform, unsigned int reg, unsigned int val), @@ -122,26 +119,21 @@ DEFINE_EVENT(snd_soc_preg, snd_soc_preg_read, ) #endif -DECLARE_EVENT_CLASS(snd_soc_card, +LTTNG_TRACEPOINT_EVENT_CLASS(asoc_snd_soc_card, TP_PROTO(struct snd_soc_card *card, int val), TP_ARGS(card, val), - TP_STRUCT__entry( - __string( name, card->name ) - __field( int, val ) - ), - - TP_fast_assign( - tp_strcpy(name, card->name) - tp_assign(val, val) - ), - - TP_printk("card=%s val=%d", __get_str(name), (int)__entry->val) + TP_FIELDS( + ctf_string(name, card->name) + ctf_integer(int, val, val) + ) ) -DEFINE_EVENT(snd_soc_card, snd_soc_bias_level_start, +LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(asoc_snd_soc_card, snd_soc_bias_level_start, + + asoc_snd_soc_bias_level_start, TP_PROTO(struct snd_soc_card *card, int val), @@ -149,7 +141,9 @@ DEFINE_EVENT(snd_soc_card, snd_soc_bias_level_start, ) -DEFINE_EVENT(snd_soc_card, snd_soc_bias_level_done, +LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(asoc_snd_soc_card, snd_soc_bias_level_done, + + asoc_snd_soc_bias_level_done, TP_PROTO(struct snd_soc_card *card, int val), @@ -157,24 +151,20 @@ DEFINE_EVENT(snd_soc_card, snd_soc_bias_level_done, ) -DECLARE_EVENT_CLASS(snd_soc_dapm_basic, +LTTNG_TRACEPOINT_EVENT_CLASS(asoc_snd_soc_dapm_basic, TP_PROTO(struct snd_soc_card *card), TP_ARGS(card), - TP_STRUCT__entry( - __string( name, card->name ) - ), - - TP_fast_assign( - tp_strcpy(name, card->name) - ), - - TP_printk("card=%s", __get_str(name)) + TP_FIELDS( + ctf_string(name, card->name) + ) ) -DEFINE_EVENT(snd_soc_dapm_basic, snd_soc_dapm_start, +LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(asoc_snd_soc_dapm_basic, snd_soc_dapm_start, + + asoc_snd_soc_dapm_start, TP_PROTO(struct snd_soc_card *card), @@ -182,7 +172,9 @@ DEFINE_EVENT(snd_soc_dapm_basic, snd_soc_dapm_start, ) -DEFINE_EVENT(snd_soc_dapm_basic, snd_soc_dapm_done, +LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(asoc_snd_soc_dapm_basic, snd_soc_dapm_done, + + asoc_snd_soc_dapm_done, TP_PROTO(struct snd_soc_card *card), @@ -190,27 +182,21 @@ DEFINE_EVENT(snd_soc_dapm_basic, snd_soc_dapm_done, ) -DECLARE_EVENT_CLASS(snd_soc_dapm_widget, +LTTNG_TRACEPOINT_EVENT_CLASS(asoc_snd_soc_dapm_widget, TP_PROTO(struct snd_soc_dapm_widget *w, int val), TP_ARGS(w, val), - TP_STRUCT__entry( - __string( name, w->name ) - __field( int, val ) - ), - - TP_fast_assign( - tp_strcpy(name, w->name) - tp_assign(val, val) - ), - - TP_printk("widget=%s val=%d", __get_str(name), - (int)__entry->val) + TP_FIELDS( + ctf_string(name, w->name) + ctf_integer(int, val, val) + ) ) -DEFINE_EVENT(snd_soc_dapm_widget, snd_soc_dapm_widget_power, +LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(asoc_snd_soc_dapm_widget, snd_soc_dapm_widget_power, + + asoc_snd_soc_dapm_widget_power, TP_PROTO(struct snd_soc_dapm_widget *w, int val), @@ -218,7 +204,9 @@ DEFINE_EVENT(snd_soc_dapm_widget, snd_soc_dapm_widget_power, ) -DEFINE_EVENT(snd_soc_dapm_widget, snd_soc_dapm_widget_event_start, +LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(asoc_snd_soc_dapm_widget, snd_soc_dapm_widget_event_start, + + asoc_snd_soc_dapm_widget_event_start, TP_PROTO(struct snd_soc_dapm_widget *w, int val), @@ -226,7 +214,9 @@ DEFINE_EVENT(snd_soc_dapm_widget, snd_soc_dapm_widget_event_start, ) -DEFINE_EVENT(snd_soc_dapm_widget, snd_soc_dapm_widget_event_done, +LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(asoc_snd_soc_dapm_widget, snd_soc_dapm_widget_event_done, + + asoc_snd_soc_dapm_widget_event_done, TP_PROTO(struct snd_soc_dapm_widget *w, int val), @@ -235,196 +225,190 @@ DEFINE_EVENT(snd_soc_dapm_widget, snd_soc_dapm_widget_event_done, ) #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0)) -TRACE_EVENT(snd_soc_dapm_walk_done, +LTTNG_TRACEPOINT_EVENT_MAP(snd_soc_dapm_walk_done, + + asoc_snd_soc_dapm_walk_done, TP_PROTO(struct snd_soc_card *card), TP_ARGS(card), - TP_STRUCT__entry( - __string( name, card->name ) - __field( int, power_checks ) - __field( int, path_checks ) - __field( int, neighbour_checks ) - ), - - TP_fast_assign( - tp_strcpy(name, card->name) - tp_assign(power_checks, card->dapm_stats.power_checks) - tp_assign(path_checks, card->dapm_stats.path_checks) - tp_assign(neighbour_checks, card->dapm_stats.neighbour_checks) - ), - - TP_printk("%s: checks %d power, %d path, %d neighbour", - __get_str(name), (int)__entry->power_checks, - (int)__entry->path_checks, (int)__entry->neighbour_checks) + TP_FIELDS( + ctf_string(name, card->name) + ctf_integer(int, power_checks, card->dapm_stats.power_checks) + ctf_integer(int, path_checks, card->dapm_stats.path_checks) + ctf_integer(int, neighbour_checks, card->dapm_stats.neighbour_checks) + ) ) #endif -#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0)) -TRACE_EVENT(snd_soc_dapm_output_path, +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,3,0)) +LTTNG_TRACEPOINT_EVENT_MAP(snd_soc_dapm_path, + + asoc_snd_soc_dapm_path, + + TP_PROTO(struct snd_soc_dapm_widget *widget, + enum snd_soc_dapm_direction dir, + struct snd_soc_dapm_path *path), + + TP_ARGS(widget, dir, path), + + TP_FIELDS( + ctf_string(wname, widget->name) + ctf_string(pname, path->name ? path->name : DAPM_DIRECT) + ctf_string(pnname, path->node[dir]->name) + ctf_integer(int, path_node, (long) path->node[dir]) + ctf_integer(int, path_connect, path->connect) + ctf_integer(int, path_dir, dir) + ) +) +#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0)) +LTTNG_TRACEPOINT_EVENT_MAP(snd_soc_dapm_output_path, + + asoc_snd_soc_dapm_output_path, TP_PROTO(struct snd_soc_dapm_widget *widget, struct snd_soc_dapm_path *path), TP_ARGS(widget, path), - TP_STRUCT__entry( - __string( wname, widget->name ) - __string( pname, path->name ? path->name : DAPM_DIRECT) - __string( psname, path->sink->name ) - __field( int, path_sink ) - __field( int, path_connect ) - ), - - TP_fast_assign( - tp_strcpy(wname, widget->name) - tp_strcpy(pname, path->name ? path->name : DAPM_DIRECT) - tp_strcpy(psname, path->sink->name) - tp_assign(path_connect, path->connect) - tp_assign(path_sink, (long)path->sink) - ), - - TP_printk("%c%s -> %s -> %s\n", - (int) __entry->path_sink && - (int) __entry->path_connect ? '*' : ' ', - __get_str(wname), __get_str(pname), __get_str(psname)) + TP_FIELDS( + ctf_string(wname, widget->name) + ctf_string(pname, path->name ? path->name : DAPM_DIRECT) + ctf_string(psname, path->sink->name) + ctf_integer(int, path_sink, (long) path->sink) + ctf_integer(int, path_connect, path->connect) + ) ) -TRACE_EVENT(snd_soc_dapm_input_path, +LTTNG_TRACEPOINT_EVENT_MAP(snd_soc_dapm_input_path, + + asoc_snd_soc_dapm_input_path, TP_PROTO(struct snd_soc_dapm_widget *widget, struct snd_soc_dapm_path *path), TP_ARGS(widget, path), - TP_STRUCT__entry( - __string( wname, widget->name ) - __string( pname, path->name ? path->name : DAPM_DIRECT) - __string( psname, path->source->name ) - __field( int, path_source ) - __field( int, path_connect ) - ), - - TP_fast_assign( - tp_strcpy(wname, widget->name) - tp_strcpy(pname, path->name ? path->name : DAPM_DIRECT) - tp_strcpy(psname, path->source->name) - tp_assign(path_connect, path->connect) - tp_assign(path_source, (long)path->source) - ), - - TP_printk("%c%s <- %s <- %s\n", - (int) __entry->path_source && - (int) __entry->path_connect ? '*' : ' ', - __get_str(wname), __get_str(pname), __get_str(psname)) + TP_FIELDS( + ctf_string(wname, widget->name) + ctf_string(pname,path->name ? path->name : DAPM_DIRECT) + ctf_string(psname, path->source->name) + ctf_integer(int, path_source, (long) path->source) + ctf_integer(int, path_connect, path->connect) + ) ) +#endif + +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0)) +LTTNG_TRACEPOINT_EVENT_MAP(snd_soc_dapm_connected, -TRACE_EVENT(snd_soc_dapm_connected, + asoc_snd_soc_dapm_connected, TP_PROTO(int paths, int stream), TP_ARGS(paths, stream), - TP_STRUCT__entry( - __field( int, paths ) - __field( int, stream ) - ), - - TP_fast_assign( - tp_assign(paths, paths) - tp_assign(stream, stream) - ), - - TP_printk("%s: found %d paths\n", - __entry->stream ? "capture" : "playback", __entry->paths) + TP_FIELDS( + ctf_integer(int, paths, paths) + ctf_integer(int, stream, stream) + ) ) #endif -TRACE_EVENT(snd_soc_jack_irq, +LTTNG_TRACEPOINT_EVENT_MAP(snd_soc_jack_irq, + + asoc_snd_soc_jack_irq, TP_PROTO(const char *name), TP_ARGS(name), - TP_STRUCT__entry( - __string( name, name ) - ), - - TP_fast_assign( - tp_strcpy(name, name) - ), - - TP_printk("%s", __get_str(name)) + TP_FIELDS( + ctf_string(name, name) + ) ) -TRACE_EVENT(snd_soc_jack_report, +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0)) +LTTNG_TRACEPOINT_EVENT_MAP(snd_soc_jack_report, + + asoc_snd_soc_jack_report, TP_PROTO(struct snd_soc_jack *jack, int mask, int val), TP_ARGS(jack, mask, val), - TP_STRUCT__entry( - __string( name, jack->jack->name ) - __field( int, mask ) - __field( int, val ) - ), - - TP_fast_assign( - tp_strcpy(name, jack->jack->name) - tp_assign(mask, mask) - tp_assign(val, val) - ), - - TP_printk("jack=%s %x/%x", __get_str(name), (int)__entry->val, - (int)__entry->mask) + TP_FIELDS( + ctf_string(name, jack->jack->id) + ctf_integer(int, mask, mask) + ctf_integer(int, val, val) + ) ) -TRACE_EVENT(snd_soc_jack_notify, +LTTNG_TRACEPOINT_EVENT_MAP(snd_soc_jack_notify, + + asoc_snd_soc_jack_notify, TP_PROTO(struct snd_soc_jack *jack, int val), TP_ARGS(jack, val), - TP_STRUCT__entry( - __string( name, jack->jack->name ) - __field( int, val ) - ), + TP_FIELDS( + ctf_string(name, jack->jack->id) + ctf_integer(int, val, val) + ) +) +#else +LTTNG_TRACEPOINT_EVENT_MAP(snd_soc_jack_report, - TP_fast_assign( - tp_strcpy(name, jack->jack->name) - tp_assign(val, val) - ), + asoc_snd_soc_jack_report, - TP_printk("jack=%s %x", __get_str(name), (int)__entry->val) + TP_PROTO(struct snd_soc_jack *jack, int mask, int val), + + TP_ARGS(jack, mask, val), + + TP_FIELDS( + ctf_string(name, jack->jack->name) + ctf_integer(int, mask, mask) + ctf_integer(int, val, val) + ) ) -TRACE_EVENT(snd_soc_cache_sync, +LTTNG_TRACEPOINT_EVENT_MAP(snd_soc_jack_notify, + + asoc_snd_soc_jack_notify, + + TP_PROTO(struct snd_soc_jack *jack, int val), + + TP_ARGS(jack, val), + + TP_FIELDS( + ctf_string(name, jack->jack->name) + ctf_integer(int, val, val) + ) +) +#endif + +#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,19,0)) +LTTNG_TRACEPOINT_EVENT_MAP(snd_soc_cache_sync, + + asoc_snd_soc_cache_sync, TP_PROTO(struct snd_soc_codec *codec, const char *type, const char *status), TP_ARGS(codec, type, status), - TP_STRUCT__entry( - __string( name, codec->CODEC_NAME_FIELD ) - __string( status, status ) - __string( type, type ) - __field( int, id ) - ), - - TP_fast_assign( - tp_strcpy(name, codec->CODEC_NAME_FIELD) - tp_strcpy(status, status) - tp_strcpy(type, type) - tp_assign(id, codec->CODEC_ID_FIELD) - ), - - TP_printk("codec=%s.%d type=%s status=%s", __get_str(name), - (int)__entry->id, __get_str(type), __get_str(status)) + TP_FIELDS( + ctf_string(name, codec->CODEC_NAME_FIELD) + ctf_string(status, status) + ctf_string(type, type) + ctf_integer(int, id, codec->CODEC_ID_FIELD) + ) ) +#endif -#endif /* _TRACE_ASOC_H */ +#endif /* LTTNG_TRACE_ASOC_H */ /* This part must be outside protection */ -#include "../../../probes/define_trace.h" +#include