Fix: scsi: sd: Atomic write support added in 6.11-rc1
[lttng-modules.git] / include / instrumentation / events / i2c.h
1 // SPDX-FileCopyrightText: 2016 Simon Marchi <simon.marchi@ericsson.com>
2 //
3 // SPDX-License-Identifier: GPL-2.0-only
4
5 #undef TRACE_SYSTEM
6 #define TRACE_SYSTEM i2c
7
8 #if !defined(LTTNG_TRACE_I2C_H) || defined(TRACE_HEADER_MULTI_READ)
9 #define LTTNG_TRACE_I2C_H
10
11 #include <lttng/tracepoint-event.h>
12
13 /*
14 * __i2c_transfer() write request
15 */
16 LTTNG_TRACEPOINT_EVENT_CODE(i2c_write,
17
18 TP_PROTO(const struct i2c_adapter *adap, const struct i2c_msg *msg,
19 int num),
20
21 TP_ARGS(adap, msg, num),
22
23 TP_locvar(
24 int extract_sensitive_payload;
25 ),
26
27 TP_code_pre(
28 tp_locvar->extract_sensitive_payload =
29 LTTNG_READ_ONCE(extract_sensitive_payload);
30 ),
31
32 TP_FIELDS(
33 ctf_integer(int, adapter_nr, adap->nr)
34 ctf_integer(__u16, msg_nr, num)
35 ctf_integer(__u16, addr, msg->addr)
36 ctf_integer(__u16, flags, msg->flags)
37 ctf_integer(__u16, len, msg->len)
38 ctf_sequence_hex(__u8, buf,
39 tp_locvar->extract_sensitive_payload ?
40 msg->buf : NULL,
41 __u16,
42 tp_locvar->extract_sensitive_payload ?
43 msg->len : 0)
44 ),
45
46 TP_code_post()
47 )
48
49 /*
50 * __i2c_transfer() read request
51 */
52 LTTNG_TRACEPOINT_EVENT(i2c_read,
53
54 TP_PROTO(const struct i2c_adapter *adap, const struct i2c_msg *msg,
55 int num),
56
57 TP_ARGS(adap, msg, num),
58
59 TP_FIELDS(
60 ctf_integer(int, adapter_nr, adap->nr)
61 ctf_integer(__u16, msg_nr, num)
62 ctf_integer(__u16, addr, msg->addr)
63 ctf_integer(__u16, flags, msg->flags)
64 ctf_integer(__u16, len, msg->len)
65 )
66 )
67
68 /*
69 * __i2c_transfer() read reply
70 */
71 LTTNG_TRACEPOINT_EVENT_CODE(i2c_reply,
72
73 TP_PROTO(const struct i2c_adapter *adap, const struct i2c_msg *msg,
74 int num),
75
76 TP_ARGS(adap, msg, num),
77
78 TP_locvar(
79 int extract_sensitive_payload;
80 ),
81
82 TP_code_pre(
83 tp_locvar->extract_sensitive_payload =
84 LTTNG_READ_ONCE(extract_sensitive_payload);
85 ),
86
87 TP_FIELDS(
88 ctf_integer(int, adapter_nr, adap->nr)
89 ctf_integer(__u16, msg_nr, num)
90 ctf_integer(__u16, addr, msg->addr)
91 ctf_integer(__u16, flags, msg->flags)
92 ctf_integer(__u16, len, msg->len)
93 ctf_sequence_hex(__u8, buf,
94 tp_locvar->extract_sensitive_payload ?
95 msg->buf : NULL,
96 __u16,
97 tp_locvar->extract_sensitive_payload ?
98 msg->len : 0)
99 ),
100
101 TP_code_post()
102 )
103
104 /*
105 * __i2c_transfer() result
106 */
107 LTTNG_TRACEPOINT_EVENT(i2c_result,
108
109 TP_PROTO(const struct i2c_adapter *adap, int num, int ret),
110
111 TP_ARGS(adap, num, ret),
112
113 TP_FIELDS(
114 ctf_integer(int, adapter_nr, adap->nr)
115 ctf_integer(__u16, nr_msgs, num)
116 ctf_integer(__s16, ret, ret)
117 )
118 )
119
120 #endif /* LTTNG_TRACE_I2C_H */
121
122 /* This part must be outside protection */
123 #include <lttng/define_trace.h>
This page took 0.033209 seconds and 5 git commands to generate.