Fix: scsi: sd: Atomic write support added in 6.11-rc1
[lttng-modules.git] / include / instrumentation / events / i2c.h
... / ...
CommitLineData
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 */
16LTTNG_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 */
52LTTNG_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 */
71LTTNG_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 */
107LTTNG_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.025457 seconds and 5 git commands to generate.