1 | /* SPDX-License-Identifier: GPL-2.0-or-later */ |
2 | #undef TRACE_SYSTEM |
3 | #define TRACE_SYSTEM pwm |
4 | |
5 | #if !defined(_TRACE_PWM_H) || defined(TRACE_HEADER_MULTI_READ) |
6 | #define _TRACE_PWM_H |
7 | |
8 | #include <linux/pwm.h> |
9 | #include <linux/tracepoint.h> |
10 | |
11 | DECLARE_EVENT_CLASS(pwm, |
12 | |
13 | TP_PROTO(struct pwm_device *pwm, const struct pwm_state *state, int err), |
14 | |
15 | TP_ARGS(pwm, state, err), |
16 | |
17 | TP_STRUCT__entry( |
18 | __field(struct pwm_device *, pwm) |
19 | __field(u64, period) |
20 | __field(u64, duty_cycle) |
21 | __field(enum pwm_polarity, polarity) |
22 | __field(bool, enabled) |
23 | __field(int, err) |
24 | ), |
25 | |
26 | TP_fast_assign( |
27 | __entry->pwm = pwm; |
28 | __entry->period = state->period; |
29 | __entry->duty_cycle = state->duty_cycle; |
30 | __entry->polarity = state->polarity; |
31 | __entry->enabled = state->enabled; |
32 | __entry->err = err; |
33 | ), |
34 | |
35 | TP_printk("%p: period=%llu duty_cycle=%llu polarity=%d enabled=%d err=%d" , |
36 | __entry->pwm, __entry->period, __entry->duty_cycle, |
37 | __entry->polarity, __entry->enabled, __entry->err) |
38 | |
39 | ); |
40 | |
41 | DEFINE_EVENT(pwm, pwm_apply, |
42 | |
43 | TP_PROTO(struct pwm_device *pwm, const struct pwm_state *state, int err), |
44 | |
45 | TP_ARGS(pwm, state, err) |
46 | ); |
47 | |
48 | DEFINE_EVENT(pwm, pwm_get, |
49 | |
50 | TP_PROTO(struct pwm_device *pwm, const struct pwm_state *state, int err), |
51 | |
52 | TP_ARGS(pwm, state, err) |
53 | ); |
54 | |
55 | #endif /* _TRACE_PWM_H */ |
56 | |
57 | /* This part must be outside protection */ |
58 | #include <trace/define_trace.h> |
59 | |