1/* SPDX-License-Identifier: GPL-2.0 */
2#undef TRACE_SYSTEM
3#define TRACE_SYSTEM qrtr
4
5#if !defined(_TRACE_QRTR_H) || defined(TRACE_HEADER_MULTI_READ)
6#define _TRACE_QRTR_H
7
8#include <linux/qrtr.h>
9#include <linux/tracepoint.h>
10
11TRACE_EVENT(qrtr_ns_service_announce_new,
12
13	TP_PROTO(unsigned int service, unsigned int instance,
14		 unsigned int node, unsigned int port),
15
16	TP_ARGS(service, instance, node, port),
17
18	TP_STRUCT__entry(
19		__field(unsigned int, service)
20		__field(unsigned int, instance)
21		__field(unsigned int, node)
22		__field(unsigned int, port)
23	),
24
25	TP_fast_assign(
26		__entry->service = service;
27		__entry->instance = instance;
28		__entry->node = node;
29		__entry->port = port;
30	),
31
32	TP_printk("advertising new server [%d:%x]@[%d:%d]",
33		  __entry->service, __entry->instance, __entry->node,
34		  __entry->port
35	)
36);
37
38TRACE_EVENT(qrtr_ns_service_announce_del,
39
40	TP_PROTO(unsigned int service, unsigned int instance,
41		 unsigned int node, unsigned int port),
42
43	TP_ARGS(service, instance, node, port),
44
45	TP_STRUCT__entry(
46		__field(unsigned int, service)
47		__field(unsigned int, instance)
48		__field(unsigned int, node)
49		__field(unsigned int, port)
50	),
51
52	TP_fast_assign(
53		__entry->service = service;
54		__entry->instance = instance;
55		__entry->node = node;
56		__entry->port = port;
57	),
58
59	TP_printk("advertising removal of server [%d:%x]@[%d:%d]",
60		  __entry->service, __entry->instance, __entry->node,
61		  __entry->port
62	)
63);
64
65TRACE_EVENT(qrtr_ns_server_add,
66
67	TP_PROTO(unsigned int service, unsigned int instance,
68		 unsigned int node, unsigned int port),
69
70	TP_ARGS(service, instance, node, port),
71
72	TP_STRUCT__entry(
73		__field(unsigned int, service)
74		__field(unsigned int, instance)
75		__field(unsigned int, node)
76		__field(unsigned int, port)
77	),
78
79	TP_fast_assign(
80		__entry->service = service;
81		__entry->instance = instance;
82		__entry->node = node;
83		__entry->port = port;
84	),
85
86	TP_printk("add server [%d:%x]@[%d:%d]",
87		  __entry->service, __entry->instance, __entry->node,
88		  __entry->port
89	)
90);
91
92TRACE_EVENT(qrtr_ns_message,
93
94	TP_PROTO(const char * const ctrl_pkt_str, __u32 sq_node, __u32 sq_port),
95
96	TP_ARGS(ctrl_pkt_str, sq_node, sq_port),
97
98	TP_STRUCT__entry(
99		__string(ctrl_pkt_str, ctrl_pkt_str)
100		__field(__u32, sq_node)
101		__field(__u32, sq_port)
102	),
103
104	TP_fast_assign(
105		__assign_str(ctrl_pkt_str, ctrl_pkt_str);
106		__entry->sq_node = sq_node;
107		__entry->sq_port = sq_port;
108	),
109
110	TP_printk("%s from %d:%d",
111		  __get_str(ctrl_pkt_str), __entry->sq_node, __entry->sq_port
112	)
113);
114
115#endif /* _TRACE_QRTR_H */
116
117/* This part must be outside protection */
118#include <trace/define_trace.h>
119