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