xref: /openbmc/linux/include/trace/events/pwm.h (revision 7ae9fb1b7ecbb5d85d07857943f677fd1a559b18)
11188829aSUwe Kleine-König /* SPDX-License-Identifier: GPL-2.0-or-later */
21188829aSUwe Kleine-König #undef TRACE_SYSTEM
31188829aSUwe Kleine-König #define TRACE_SYSTEM pwm
41188829aSUwe Kleine-König 
51188829aSUwe Kleine-König #if !defined(_TRACE_PWM_H) || defined(TRACE_HEADER_MULTI_READ)
61188829aSUwe Kleine-König #define _TRACE_PWM_H
71188829aSUwe Kleine-König 
81188829aSUwe Kleine-König #include <linux/pwm.h>
91188829aSUwe Kleine-König #include <linux/tracepoint.h>
101188829aSUwe Kleine-König 
111188829aSUwe Kleine-König DECLARE_EVENT_CLASS(pwm,
121188829aSUwe Kleine-König 
13*3dae106fSUwe Kleine-König 	TP_PROTO(struct pwm_device *pwm, const struct pwm_state *state, int err),
141188829aSUwe Kleine-König 
15*3dae106fSUwe Kleine-König 	TP_ARGS(pwm, state, err),
161188829aSUwe Kleine-König 
171188829aSUwe Kleine-König 	TP_STRUCT__entry(
181188829aSUwe Kleine-König 		__field(struct pwm_device *, pwm)
191188829aSUwe Kleine-König 		__field(u64, period)
201188829aSUwe Kleine-König 		__field(u64, duty_cycle)
211188829aSUwe Kleine-König 		__field(enum pwm_polarity, polarity)
221188829aSUwe Kleine-König 		__field(bool, enabled)
23*3dae106fSUwe Kleine-König 		__field(int, err)
241188829aSUwe Kleine-König 	),
251188829aSUwe Kleine-König 
261188829aSUwe Kleine-König 	TP_fast_assign(
271188829aSUwe Kleine-König 		__entry->pwm = pwm;
281188829aSUwe Kleine-König 		__entry->period = state->period;
291188829aSUwe Kleine-König 		__entry->duty_cycle = state->duty_cycle;
301188829aSUwe Kleine-König 		__entry->polarity = state->polarity;
311188829aSUwe Kleine-König 		__entry->enabled = state->enabled;
32*3dae106fSUwe Kleine-König 		__entry->err = err;
331188829aSUwe Kleine-König 	),
341188829aSUwe Kleine-König 
35*3dae106fSUwe Kleine-König 	TP_printk("%p: period=%llu duty_cycle=%llu polarity=%d enabled=%d err=%d",
361188829aSUwe Kleine-König 		  __entry->pwm, __entry->period, __entry->duty_cycle,
37*3dae106fSUwe Kleine-König 		  __entry->polarity, __entry->enabled, __entry->err)
381188829aSUwe Kleine-König 
391188829aSUwe Kleine-König );
401188829aSUwe Kleine-König 
411188829aSUwe Kleine-König DEFINE_EVENT(pwm, pwm_apply,
421188829aSUwe Kleine-König 
43*3dae106fSUwe Kleine-König 	TP_PROTO(struct pwm_device *pwm, const struct pwm_state *state, int err),
441188829aSUwe Kleine-König 
45*3dae106fSUwe Kleine-König 	TP_ARGS(pwm, state, err)
461188829aSUwe Kleine-König );
471188829aSUwe Kleine-König 
481188829aSUwe Kleine-König DEFINE_EVENT(pwm, pwm_get,
491188829aSUwe Kleine-König 
50*3dae106fSUwe Kleine-König 	TP_PROTO(struct pwm_device *pwm, const struct pwm_state *state, int err),
511188829aSUwe Kleine-König 
52*3dae106fSUwe Kleine-König 	TP_ARGS(pwm, state, err)
531188829aSUwe Kleine-König );
541188829aSUwe Kleine-König 
551188829aSUwe Kleine-König #endif /* _TRACE_PWM_H */
561188829aSUwe Kleine-König 
571188829aSUwe Kleine-König /* This part must be outside protection */
581188829aSUwe Kleine-König #include <trace/define_trace.h>
59