67 lines · c
1#undef TRACE_SYSTEM2#define TRACE_SYSTEM siox3 4#if !defined(_TRACE_SIOX_H) || defined(TRACE_HEADER_MULTI_READ)5#define _TRACE_SIOX_H6 7#include <linux/tracepoint.h>8 9TRACE_EVENT(siox_set_data,10 TP_PROTO(const struct siox_master *smaster,11 const struct siox_device *sdevice,12 unsigned int devno, size_t bufoffset),13 TP_ARGS(smaster, sdevice, devno, bufoffset),14 TP_STRUCT__entry(15 __field(int, busno)16 __field(unsigned int, devno)17 __field(size_t, inbytes)18 __dynamic_array(u8, buf, sdevice->inbytes)19 ),20 TP_fast_assign(21 __entry->busno = smaster->busno;22 __entry->devno = devno;23 __entry->inbytes = sdevice->inbytes;24 memcpy(__get_dynamic_array(buf),25 smaster->buf + bufoffset, sdevice->inbytes);26 ),27 TP_printk("siox-%d-%u [%*phD]",28 __entry->busno,29 __entry->devno,30 (int)__entry->inbytes, __get_dynamic_array(buf)31 )32);33 34TRACE_EVENT(siox_get_data,35 TP_PROTO(const struct siox_master *smaster,36 const struct siox_device *sdevice,37 unsigned int devno, u8 status_clean,38 size_t bufoffset),39 TP_ARGS(smaster, sdevice, devno, status_clean, bufoffset),40 TP_STRUCT__entry(41 __field(int, busno)42 __field(unsigned int, devno)43 __field(u8, status_clean)44 __field(size_t, outbytes)45 __dynamic_array(u8, buf, sdevice->outbytes)46 ),47 TP_fast_assign(48 __entry->busno = smaster->busno;49 __entry->devno = devno;50 __entry->status_clean = status_clean;51 __entry->outbytes = sdevice->outbytes;52 memcpy(__get_dynamic_array(buf),53 smaster->buf + bufoffset, sdevice->outbytes);54 ),55 TP_printk("siox-%d-%u (%02hhx) [%*phD]",56 __entry->busno,57 __entry->devno,58 __entry->status_clean,59 (int)__entry->outbytes, __get_dynamic_array(buf)60 )61);62 63#endif /* if !defined(_TRACE_SIOX_H) || defined(TRACE_HEADER_MULTI_READ) */64 65/* This part must be outside protection */66#include <trace/define_trace.h>67