xref: /openbmc/linux/include/trace/events/gpio.h (revision 94cdda6b)
1 #undef TRACE_SYSTEM
2 #define TRACE_SYSTEM gpio
3 
4 #if !defined(_TRACE_GPIO_H) || defined(TRACE_HEADER_MULTI_READ)
5 #define _TRACE_GPIO_H
6 
7 #include <linux/tracepoint.h>
8 
9 TRACE_EVENT(gpio_direction,
10 
11 	TP_PROTO(unsigned gpio, int in, int err),
12 
13 	TP_ARGS(gpio, in, err),
14 
15 	TP_STRUCT__entry(
16 		__field(unsigned, gpio)
17 		__field(int, in)
18 		__field(int, err)
19 	),
20 
21 	TP_fast_assign(
22 		__entry->gpio = gpio;
23 		__entry->in = in;
24 		__entry->err = err;
25 	),
26 
27 	TP_printk("%u %3s (%d)", __entry->gpio,
28 		__entry->in ? "in" : "out", __entry->err)
29 );
30 
31 TRACE_EVENT(gpio_value,
32 
33 	TP_PROTO(unsigned gpio, int get, int value),
34 
35 	TP_ARGS(gpio, get, value),
36 
37 	TP_STRUCT__entry(
38 		__field(unsigned, gpio)
39 		__field(int, get)
40 		__field(int, value)
41 	),
42 
43 	TP_fast_assign(
44 		__entry->gpio = gpio;
45 		__entry->get = get;
46 		__entry->value = value;
47 	),
48 
49 	TP_printk("%u %3s %d", __entry->gpio,
50 		__entry->get ? "get" : "set", __entry->value)
51 );
52 
53 #endif /* if !defined(_TRACE_GPIO_H) || defined(TRACE_HEADER_MULTI_READ) */
54 
55 /* This part must be outside protection */
56 #include <trace/define_trace.h>
57