blob: 5c189a22c48973a86502710a45886271fe631c21 [file] [log] [blame]
Greg Kroah-Hartmanb2441312017-11-01 15:07:57 +01001/* SPDX-License-Identifier: GPL-2.0 */
Uwe Kleine-König3f397c212011-05-20 00:40:19 -06002#undef TRACE_SYSTEM
3#define TRACE_SYSTEM gpio
4
Tal Shorerddd70282015-08-01 15:27:58 +03005#ifndef CONFIG_TRACING_EVENTS_GPIO
6#define NOTRACE
7#endif
8
Uwe Kleine-König3f397c212011-05-20 00:40:19 -06009#if !defined(_TRACE_GPIO_H) || defined(TRACE_HEADER_MULTI_READ)
10#define _TRACE_GPIO_H
11
12#include <linux/tracepoint.h>
13
14TRACE_EVENT(gpio_direction,
15
16 TP_PROTO(unsigned gpio, int in, int err),
17
18 TP_ARGS(gpio, in, err),
19
20 TP_STRUCT__entry(
21 __field(unsigned, gpio)
22 __field(int, in)
23 __field(int, err)
24 ),
25
26 TP_fast_assign(
27 __entry->gpio = gpio;
28 __entry->in = in;
29 __entry->err = err;
30 ),
31
32 TP_printk("%u %3s (%d)", __entry->gpio,
33 __entry->in ? "in" : "out", __entry->err)
34);
35
36TRACE_EVENT(gpio_value,
37
38 TP_PROTO(unsigned gpio, int get, int value),
39
40 TP_ARGS(gpio, get, value),
41
42 TP_STRUCT__entry(
43 __field(unsigned, gpio)
44 __field(int, get)
45 __field(int, value)
46 ),
47
48 TP_fast_assign(
49 __entry->gpio = gpio;
50 __entry->get = get;
51 __entry->value = value;
52 ),
53
54 TP_printk("%u %3s %d", __entry->gpio,
55 __entry->get ? "get" : "set", __entry->value)
56);
57
58#endif /* if !defined(_TRACE_GPIO_H) || defined(TRACE_HEADER_MULTI_READ) */
59
60/* This part must be outside protection */
61#include <trace/define_trace.h>