2 #define TRACE_SYSTEM i2c
4 #if !defined(LTTNG_TRACE_I2C_H) || defined(TRACE_HEADER_MULTI_READ)
5 #define LTTNG_TRACE_I2C_H
7 #include <probes/lttng-tracepoint-event.h>
10 * __i2c_transfer() write request
12 LTTNG_TRACEPOINT_EVENT_CODE(i2c_write
,
14 TP_PROTO(const struct i2c_adapter
*adap
, const struct i2c_msg
*msg
,
17 TP_ARGS(adap
, msg
, num
),
20 int extract_sensitive_payload
;
24 tp_locvar
->extract_sensitive_payload
=
25 ACCESS_ONCE(extract_sensitive_payload
);
29 ctf_integer(int, adapter_nr
, adap
->nr
)
30 ctf_integer(__u16
, msg_nr
, num
)
31 ctf_integer(__u16
, addr
, msg
->addr
)
32 ctf_integer(__u16
, flags
, msg
->flags
)
33 ctf_integer(__u16
, len
, msg
->len
)
34 ctf_sequence_hex(__u8
, buf
,
35 tp_locvar
->extract_sensitive_payload
?
38 tp_locvar
->extract_sensitive_payload
?
46 * __i2c_transfer() read request
48 LTTNG_TRACEPOINT_EVENT(i2c_read
,
50 TP_PROTO(const struct i2c_adapter
*adap
, const struct i2c_msg
*msg
,
53 TP_ARGS(adap
, msg
, num
),
56 ctf_integer(int, adapter_nr
, adap
->nr
)
57 ctf_integer(__u16
, msg_nr
, num
)
58 ctf_integer(__u16
, addr
, msg
->addr
)
59 ctf_integer(__u16
, flags
, msg
->flags
)
60 ctf_integer(__u16
, len
, msg
->len
)
65 * __i2c_transfer() read reply
67 LTTNG_TRACEPOINT_EVENT_CODE(i2c_reply
,
69 TP_PROTO(const struct i2c_adapter
*adap
, const struct i2c_msg
*msg
,
72 TP_ARGS(adap
, msg
, num
),
75 int extract_sensitive_payload
;
79 tp_locvar
->extract_sensitive_payload
=
80 ACCESS_ONCE(extract_sensitive_payload
);
84 ctf_integer(int, adapter_nr
, adap
->nr
)
85 ctf_integer(__u16
, msg_nr
, num
)
86 ctf_integer(__u16
, addr
, msg
->addr
)
87 ctf_integer(__u16
, flags
, msg
->flags
)
88 ctf_integer(__u16
, len
, msg
->len
)
89 ctf_sequence_hex(__u8
, buf
,
90 tp_locvar
->extract_sensitive_payload
?
93 tp_locvar
->extract_sensitive_payload
?
101 * __i2c_transfer() result
103 LTTNG_TRACEPOINT_EVENT(i2c_result
,
105 TP_PROTO(const struct i2c_adapter
*adap
, int num
, int ret
),
107 TP_ARGS(adap
, num
, ret
),
110 ctf_integer(int, adapter_nr
, adap
->nr
)
111 ctf_integer(__u16
, nr_msgs
, num
)
112 ctf_integer(__s16
, ret
, ret
)
116 #endif /* LTTNG_TRACE_I2C_H */
118 /* This part must be outside protection */
119 #include <probes/define_trace.h>