1 /* SPDX-License-Identifier: GPL-2.0 */
2 #if !defined(_MSM_GPU_TRACE_H_) || defined(TRACE_HEADER_MULTI_READ)
3 #define _MSM_GPU_TRACE_H_
5 #include <linux/tracepoint.h>
8 #define TRACE_SYSTEM drm_msm_gpu
9 #define TRACE_INCLUDE_FILE msm_gpu_trace
11 TRACE_EVENT(msm_gpu_submit
,
12 TP_PROTO(pid_t pid
, u32 ringid
, u32 id
, u32 nr_bos
, u32 nr_cmds
),
13 TP_ARGS(pid
, ringid
, id
, nr_bos
, nr_cmds
),
24 __entry
->ringid
= ringid
;
25 __entry
->nr_bos
= nr_bos
;
26 __entry
->nr_cmds
= nr_cmds
28 TP_printk("id=%d pid=%d ring=%d bos=%d cmds=%d",
29 __entry
->id
, __entry
->pid
, __entry
->ringid
,
30 __entry
->nr_bos
, __entry
->nr_cmds
)
33 TRACE_EVENT(msm_gpu_submit_flush
,
34 TP_PROTO(struct msm_gem_submit
*submit
, u64 ticks
),
35 TP_ARGS(submit
, ticks
),
44 __entry
->pid
= pid_nr(submit
->pid
);
45 __entry
->id
= submit
->ident
;
46 __entry
->ringid
= submit
->ring
->id
;
47 __entry
->seqno
= submit
->seqno
;
48 __entry
->ticks
= ticks
;
50 TP_printk("id=%d pid=%d ring=%d:%d ticks=%lld",
51 __entry
->id
, __entry
->pid
, __entry
->ringid
, __entry
->seqno
,
56 TRACE_EVENT(msm_gpu_submit_retired
,
57 TP_PROTO(struct msm_gem_submit
*submit
, u64 elapsed
, u64 clock
,
59 TP_ARGS(submit
, elapsed
, clock
, start
, end
),
67 __field(u64
, start_ticks
)
68 __field(u64
, end_ticks
)
71 __entry
->pid
= pid_nr(submit
->pid
);
72 __entry
->id
= submit
->ident
;
73 __entry
->ringid
= submit
->ring
->id
;
74 __entry
->seqno
= submit
->seqno
;
75 __entry
->elapsed
= elapsed
;
76 __entry
->clock
= clock
;
77 __entry
->start_ticks
= start
;
78 __entry
->end_ticks
= end
;
80 TP_printk("id=%d pid=%d ring=%d:%d elapsed=%lld ns mhz=%lld start=%lld end=%lld",
81 __entry
->id
, __entry
->pid
, __entry
->ringid
, __entry
->seqno
,
82 __entry
->elapsed
, __entry
->clock
,
83 __entry
->start_ticks
, __entry
->end_ticks
)
88 #undef TRACE_INCLUDE_PATH
89 #define TRACE_INCLUDE_PATH ../../drivers/gpu/drm/msm
90 #include <trace/define_trace.h>