2015-03-10 15:16:28 +01:00
# undef TRACE_SYSTEM
# define TRACE_SYSTEM hda
# if !defined(__HDAC_TRACE_H) || defined(TRACE_HEADER_MULTI_READ)
# define __HDAC_TRACE_H
# include <linux/tracepoint.h>
# include <linux/device.h>
# include <sound/hdaudio.h>
# ifndef HDAC_MSG_MAX
# define HDAC_MSG_MAX 500
# endif
struct hdac_bus ;
struct hdac_codec ;
TRACE_EVENT ( hda_send_cmd ,
TP_PROTO ( struct hdac_bus * bus , unsigned int cmd ) ,
TP_ARGS ( bus , cmd ) ,
TP_STRUCT__entry ( __dynamic_array ( char , msg , HDAC_MSG_MAX ) ) ,
TP_fast_assign (
snprintf ( __get_str ( msg ) , HDAC_MSG_MAX ,
" [%s:%d] val=0x%08x " ,
dev_name ( ( bus ) - > dev ) , ( cmd ) > > 28 , cmd ) ;
) ,
TP_printk ( " %s " , __get_str ( msg ) )
) ;
TRACE_EVENT ( hda_get_response ,
TP_PROTO ( struct hdac_bus * bus , unsigned int addr , unsigned int res ) ,
TP_ARGS ( bus , addr , res ) ,
TP_STRUCT__entry ( __dynamic_array ( char , msg , HDAC_MSG_MAX ) ) ,
TP_fast_assign (
snprintf ( __get_str ( msg ) , HDAC_MSG_MAX ,
" [%s:%d] val=0x%08x " ,
dev_name ( ( bus ) - > dev ) , addr , res ) ;
) ,
TP_printk ( " %s " , __get_str ( msg ) )
) ;
TRACE_EVENT ( hda_unsol_event ,
TP_PROTO ( struct hdac_bus * bus , u32 res , u32 res_ex ) ,
TP_ARGS ( bus , res , res_ex ) ,
TP_STRUCT__entry ( __dynamic_array ( char , msg , HDAC_MSG_MAX ) ) ,
TP_fast_assign (
snprintf ( __get_str ( msg ) , HDAC_MSG_MAX ,
" [%s:%d] res=0x%08x, res_ex=0x%08x " ,
dev_name ( ( bus ) - > dev ) , res_ex & 0x0f , res , res_ex ) ;
) ,
TP_printk ( " %s " , __get_str ( msg ) )
) ;
2015-05-12 09:43:20 +08:00
DECLARE_EVENT_CLASS ( hdac_stream ,
TP_PROTO ( struct hdac_bus * bus , struct hdac_stream * azx_dev ) ,
TP_ARGS ( bus , azx_dev ) ,
TP_STRUCT__entry (
__field ( unsigned char , stream_tag )
) ,
TP_fast_assign (
__entry - > stream_tag = ( azx_dev ) - > stream_tag ;
) ,
TP_printk ( " stream_tag: %d " , __entry - > stream_tag )
) ;
DEFINE_EVENT ( hdac_stream , snd_hdac_stream_start ,
TP_PROTO ( struct hdac_bus * bus , struct hdac_stream * azx_dev ) ,
TP_ARGS ( bus , azx_dev )
) ;
DEFINE_EVENT ( hdac_stream , snd_hdac_stream_stop ,
TP_PROTO ( struct hdac_bus * bus , struct hdac_stream * azx_dev ) ,
TP_ARGS ( bus , azx_dev )
) ;
2015-03-10 15:16:28 +01:00
# endif /* __HDAC_TRACE_H */
/* This part must be outside protection */
# undef TRACE_INCLUDE_PATH
# define TRACE_INCLUDE_PATH .
# undef TRACE_INCLUDE_FILE
# define TRACE_INCLUDE_FILE trace
# include <trace/define_trace.h>