2018-11-21 19:13:23 +03:00
# if !defined(_TRACE_TEGRA_APB_DMA_H) || defined(TRACE_HEADER_MULTI_READ)
2019-07-20 13:39:43 +03:00
# define _TRACE_TEGRA_APB_DMA_H
2018-11-21 19:13:23 +03:00
# include <linux/tracepoint.h>
# include <linux/dmaengine.h>
# undef TRACE_SYSTEM
# define TRACE_SYSTEM tegra_apb_dma
TRACE_EVENT ( tegra_dma_tx_status ,
TP_PROTO ( struct dma_chan * dc , dma_cookie_t cookie , struct dma_tx_state * state ) ,
TP_ARGS ( dc , cookie , state ) ,
TP_STRUCT__entry (
__string ( chan , dev_name ( & dc - > dev - > device ) )
__field ( dma_cookie_t , cookie )
__field ( __u32 , residue )
) ,
TP_fast_assign (
__assign_str ( chan , dev_name ( & dc - > dev - > device ) ) ;
__entry - > cookie = cookie ;
__entry - > residue = state ? state - > residue : ( u32 ) - 1 ;
) ,
TP_printk ( " channel %s: dma cookie %d, residue %u " ,
__get_str ( chan ) , __entry - > cookie , __entry - > residue )
) ;
TRACE_EVENT ( tegra_dma_complete_cb ,
TP_PROTO ( struct dma_chan * dc , int count , void * ptr ) ,
TP_ARGS ( dc , count , ptr ) ,
TP_STRUCT__entry (
__string ( chan , dev_name ( & dc - > dev - > device ) )
__field ( int , count )
__field ( void * , ptr )
) ,
TP_fast_assign (
__assign_str ( chan , dev_name ( & dc - > dev - > device ) ) ;
__entry - > count = count ;
__entry - > ptr = ptr ;
) ,
TP_printk ( " channel %s: done %d, ptr %p " ,
__get_str ( chan ) , __entry - > count , __entry - > ptr )
) ;
TRACE_EVENT ( tegra_dma_isr ,
TP_PROTO ( struct dma_chan * dc , int irq ) ,
TP_ARGS ( dc , irq ) ,
TP_STRUCT__entry (
__string ( chan , dev_name ( & dc - > dev - > device ) )
__field ( int , irq )
) ,
TP_fast_assign (
__assign_str ( chan , dev_name ( & dc - > dev - > device ) ) ;
__entry - > irq = irq ;
) ,
TP_printk ( " %s: irq %d \n " , __get_str ( chan ) , __entry - > irq )
) ;
2019-07-20 13:39:43 +03:00
# endif /* _TRACE_TEGRA_APB_DMA_H */
2018-11-21 19:13:23 +03:00
/* This part must be outside protection */
# include <trace/define_trace.h>