xref: /openbmc/linux/drivers/gpu/drm/drm_trace.h (revision 09bae3b6)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #if !defined(_DRM_TRACE_H_) || defined(TRACE_HEADER_MULTI_READ)
3 #define _DRM_TRACE_H_
4 
5 #include <linux/stringify.h>
6 #include <linux/types.h>
7 #include <linux/tracepoint.h>
8 
9 #undef TRACE_SYSTEM
10 #define TRACE_SYSTEM drm
11 #define TRACE_INCLUDE_FILE drm_trace
12 
13 TRACE_EVENT(drm_vblank_event,
14 	    TP_PROTO(int crtc, unsigned int seq),
15 	    TP_ARGS(crtc, seq),
16 	    TP_STRUCT__entry(
17 		    __field(int, crtc)
18 		    __field(unsigned int, seq)
19 		    ),
20 	    TP_fast_assign(
21 		    __entry->crtc = crtc;
22 		    __entry->seq = seq;
23 		    ),
24 	    TP_printk("crtc=%d, seq=%u", __entry->crtc, __entry->seq)
25 );
26 
27 TRACE_EVENT(drm_vblank_event_queued,
28 	    TP_PROTO(struct drm_file *file, int crtc, unsigned int seq),
29 	    TP_ARGS(file, crtc, seq),
30 	    TP_STRUCT__entry(
31 		    __field(struct drm_file *, file)
32 		    __field(int, crtc)
33 		    __field(unsigned int, seq)
34 		    ),
35 	    TP_fast_assign(
36 		    __entry->file = file;
37 		    __entry->crtc = crtc;
38 		    __entry->seq = seq;
39 		    ),
40 	    TP_printk("file=%p, crtc=%d, seq=%u", __entry->file, __entry->crtc, \
41 		      __entry->seq)
42 );
43 
44 TRACE_EVENT(drm_vblank_event_delivered,
45 	    TP_PROTO(struct drm_file *file, int crtc, unsigned int seq),
46 	    TP_ARGS(file, crtc, seq),
47 	    TP_STRUCT__entry(
48 		    __field(struct drm_file *, file)
49 		    __field(int, crtc)
50 		    __field(unsigned int, seq)
51 		    ),
52 	    TP_fast_assign(
53 		    __entry->file = file;
54 		    __entry->crtc = crtc;
55 		    __entry->seq = seq;
56 		    ),
57 	    TP_printk("file=%p, crtc=%d, seq=%u", __entry->file, __entry->crtc, \
58 		      __entry->seq)
59 );
60 
61 #endif /* _DRM_TRACE_H_ */
62 
63 /* This part must be outside protection */
64 #undef TRACE_INCLUDE_PATH
65 #define TRACE_INCLUDE_PATH ../../drivers/gpu/drm
66 #include <trace/define_trace.h>
67