brintos

brintos / linux-shallow public Read only

0
0
Text · 2.4 KiB · 7d9eae1 Raw
105 lines · c
1/* SPDX-License-Identifier: GPL-2.0 */2 3#if !defined(__BNO055_SERDEV_TRACE_H__) || defined(TRACE_HEADER_MULTI_READ)4#define __BNO055_SERDEV_TRACE_H__5 6#include <linux/tracepoint.h>7 8#undef TRACE_SYSTEM9#define TRACE_SYSTEM bno055_ser10 11TRACE_EVENT(send_chunk,12	    TP_PROTO(int len, const u8 *data),13	    TP_ARGS(len, data),14	    TP_STRUCT__entry(15		    __field(int, len)16		    __dynamic_array(u8, chunk, len)17	    ),18	    TP_fast_assign(19		    __entry->len = len;20		    memcpy(__get_dynamic_array(chunk),21			   data, __entry->len);22	    ),23	    TP_printk("len: %d, data: = %*ph",24		      __entry->len, __entry->len, __get_dynamic_array(chunk)25	    )26);27 28TRACE_EVENT(cmd_retry,29	    TP_PROTO(bool read, int addr, int retry),30	    TP_ARGS(read, addr, retry),31	    TP_STRUCT__entry(32		    __field(bool, read)33		    __field(int, addr)34		    __field(int, retry)35	    ),36	    TP_fast_assign(37		    __entry->read = read;38		    __entry->addr = addr;39		    __entry->retry = retry;40	    ),41	    TP_printk("%s addr 0x%x retry #%d",42		      __entry->read ? "read" : "write",43		      __entry->addr, __entry->retry44	    )45);46 47TRACE_EVENT(write_reg,48	    TP_PROTO(u8 addr, u8 value),49	    TP_ARGS(addr, value),50	    TP_STRUCT__entry(51		    __field(u8, addr)52		    __field(u8, value)53	    ),54	    TP_fast_assign(55		    __entry->addr = addr;56		    __entry->value = value;57	    ),58	    TP_printk("reg 0x%x = 0x%x",59		      __entry->addr, __entry->value60	    )61);62 63TRACE_EVENT(read_reg,64	    TP_PROTO(int addr, size_t len),65	    TP_ARGS(addr, len),66	    TP_STRUCT__entry(67		    __field(int, addr)68		    __field(size_t, len)69	    ),70	    TP_fast_assign(71		    __entry->addr = addr;72		    __entry->len = len;73	    ),74	    TP_printk("reg 0x%x (len %zu)",75		      __entry->addr, __entry->len76	    )77);78 79TRACE_EVENT(recv,80	    TP_PROTO(size_t len, const unsigned char *buf),81	    TP_ARGS(len, buf),82	    TP_STRUCT__entry(83		    __field(size_t, len)84		    __dynamic_array(unsigned char, buf, len)85	    ),86	    TP_fast_assign(87		    __entry->len = len;88		    memcpy(__get_dynamic_array(buf),89			   buf, __entry->len);90	    ),91	    TP_printk("len: %zu, data: = %*ph",92		      __entry->len, (int)__entry->len, __get_dynamic_array(buf)93	    )94);95 96#endif /* __BNO055_SERDEV_TRACE_H__ || TRACE_HEADER_MULTI_READ */97 98#undef TRACE_INCLUDE_PATH99#define TRACE_INCLUDE_PATH .100#undef TRACE_INCLUDE_FILE101#define TRACE_INCLUDE_FILE bno055_ser_trace102 103/* This part must be outside protection */104#include <trace/define_trace.h>105