xref: /freebsd/sys/contrib/dev/mediatek/mt76/mt792x_trace.h (revision cbb3ec25236ba72f91cbdf23f8b78b9d1af0cedf)
1*cbb3ec25SBjoern A. Zeeb /* SPDX-License-Identifier: ISC */
2*cbb3ec25SBjoern A. Zeeb /*
3*cbb3ec25SBjoern A. Zeeb  * Copyright (C) 2023 Lorenzo Bianconi <lorenzo@kernel.org>
4*cbb3ec25SBjoern A. Zeeb  */
5*cbb3ec25SBjoern A. Zeeb 
6*cbb3ec25SBjoern A. Zeeb #if !defined(__MT792X_TRACE_H) || defined(TRACE_HEADER_MULTI_READ)
7*cbb3ec25SBjoern A. Zeeb #define __MT792X_TRACE_H
8*cbb3ec25SBjoern A. Zeeb 
9*cbb3ec25SBjoern A. Zeeb #include <linux/tracepoint.h>
10*cbb3ec25SBjoern A. Zeeb #include "mt792x.h"
11*cbb3ec25SBjoern A. Zeeb 
12*cbb3ec25SBjoern A. Zeeb #undef TRACE_SYSTEM
13*cbb3ec25SBjoern A. Zeeb #define TRACE_SYSTEM mt792x
14*cbb3ec25SBjoern A. Zeeb 
15*cbb3ec25SBjoern A. Zeeb #define MAXNAME		32
16*cbb3ec25SBjoern A. Zeeb #define DEV_ENTRY	__array(char, wiphy_name, 32)
17*cbb3ec25SBjoern A. Zeeb #define DEV_ASSIGN	strscpy(__entry->wiphy_name,	\
18*cbb3ec25SBjoern A. Zeeb 				wiphy_name(mt76_hw(dev)->wiphy), MAXNAME)
19*cbb3ec25SBjoern A. Zeeb #define DEV_PR_FMT	"%s"
20*cbb3ec25SBjoern A. Zeeb #define DEV_PR_ARG	__entry->wiphy_name
21*cbb3ec25SBjoern A. Zeeb #define LP_STATE_PR_ARG	__entry->lp_state ? "lp ready" : "lp not ready"
22*cbb3ec25SBjoern A. Zeeb 
23*cbb3ec25SBjoern A. Zeeb TRACE_EVENT(lp_event,
24*cbb3ec25SBjoern A. Zeeb 	TP_PROTO(struct mt792x_dev *dev, u8 lp_state),
25*cbb3ec25SBjoern A. Zeeb 
26*cbb3ec25SBjoern A. Zeeb 	TP_ARGS(dev, lp_state),
27*cbb3ec25SBjoern A. Zeeb 
28*cbb3ec25SBjoern A. Zeeb 	TP_STRUCT__entry(
29*cbb3ec25SBjoern A. Zeeb 		DEV_ENTRY
30*cbb3ec25SBjoern A. Zeeb 		__field(u8, lp_state)
31*cbb3ec25SBjoern A. Zeeb 	),
32*cbb3ec25SBjoern A. Zeeb 
33*cbb3ec25SBjoern A. Zeeb 	TP_fast_assign(
34*cbb3ec25SBjoern A. Zeeb 		DEV_ASSIGN;
35*cbb3ec25SBjoern A. Zeeb 		__entry->lp_state = lp_state;
36*cbb3ec25SBjoern A. Zeeb 	),
37*cbb3ec25SBjoern A. Zeeb 
38*cbb3ec25SBjoern A. Zeeb 	TP_printk(
39*cbb3ec25SBjoern A. Zeeb 		DEV_PR_FMT " %s",
40*cbb3ec25SBjoern A. Zeeb 		DEV_PR_ARG, LP_STATE_PR_ARG
41*cbb3ec25SBjoern A. Zeeb 	)
42*cbb3ec25SBjoern A. Zeeb );
43*cbb3ec25SBjoern A. Zeeb 
44*cbb3ec25SBjoern A. Zeeb #endif
45*cbb3ec25SBjoern A. Zeeb 
46*cbb3ec25SBjoern A. Zeeb #undef TRACE_INCLUDE_PATH
47*cbb3ec25SBjoern A. Zeeb #define TRACE_INCLUDE_PATH .
48*cbb3ec25SBjoern A. Zeeb #undef TRACE_INCLUDE_FILE
49*cbb3ec25SBjoern A. Zeeb #define TRACE_INCLUDE_FILE mt792x_trace
50*cbb3ec25SBjoern A. Zeeb 
51*cbb3ec25SBjoern A. Zeeb #include <trace/define_trace.h>
52