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