Commit | Line | Data |
---|---|---|
b2441318 | 1 | /* SPDX-License-Identifier: GPL-2.0 */ |
c8a220c6 RK |
2 | #if !defined(ARMADA_TRACE_H) || defined(TRACE_HEADER_MULTI_READ) |
3 | #define ARMADA_TRACE_H | |
4 | ||
5 | #include <linux/tracepoint.h> | |
25e28ef2 SR |
6 | |
7 | struct drm_crtc; | |
8 | struct drm_framebuffer; | |
9 | struct drm_plane; | |
c8a220c6 RK |
10 | |
11 | #undef TRACE_SYSTEM | |
12 | #define TRACE_SYSTEM armada | |
13 | #define TRACE_INCLUDE_FILE armada_trace | |
14 | ||
15 | TRACE_EVENT(armada_drm_irq, | |
16 | TP_PROTO(struct drm_crtc *crtc, u32 stat), | |
17 | TP_ARGS(crtc, stat), | |
18 | TP_STRUCT__entry( | |
19 | __field(struct drm_crtc *, crtc) | |
20 | __field(u32, stat) | |
21 | ), | |
22 | TP_fast_assign( | |
23 | __entry->crtc = crtc; | |
24 | __entry->stat = stat; | |
25 | ), | |
26 | TP_printk("crtc %p stat 0x%08x", | |
27 | __entry->crtc, __entry->stat) | |
28 | ); | |
29 | ||
30 | TRACE_EVENT(armada_ovl_plane_update, | |
31 | TP_PROTO(struct drm_plane *plane, struct drm_crtc *crtc, | |
32 | struct drm_framebuffer *fb, | |
33 | int crtc_x, int crtc_y, unsigned crtc_w, unsigned crtc_h, | |
34 | uint32_t src_x, uint32_t src_y, uint32_t src_w, uint32_t src_h), | |
35 | TP_ARGS(plane, crtc, fb, crtc_x, crtc_y, crtc_w, crtc_h, src_x, src_y, src_w, src_h), | |
36 | TP_STRUCT__entry( | |
37 | __field(struct drm_plane *, plane) | |
38 | __field(struct drm_crtc *, crtc) | |
39 | __field(struct drm_framebuffer *, fb) | |
27ab688f RK |
40 | __field(int, crtc_x) |
41 | __field(int, crtc_y) | |
42 | __field(unsigned int, crtc_w) | |
43 | __field(unsigned int, crtc_h) | |
44 | __field(u32, src_x) | |
45 | __field(u32, src_y) | |
46 | __field(u32, src_w) | |
47 | __field(u32, src_h) | |
c8a220c6 RK |
48 | ), |
49 | TP_fast_assign( | |
50 | __entry->plane = plane; | |
51 | __entry->crtc = crtc; | |
52 | __entry->fb = fb; | |
27ab688f RK |
53 | __entry->crtc_x = crtc_x; |
54 | __entry->crtc_y = crtc_y; | |
55 | __entry->crtc_w = crtc_w; | |
56 | __entry->crtc_h = crtc_h; | |
57 | __entry->src_x = src_x; | |
58 | __entry->src_y = src_y; | |
59 | __entry->src_w = src_w; | |
60 | __entry->src_h = src_h; | |
c8a220c6 | 61 | ), |
27ab688f RK |
62 | TP_printk("plane %p crtc %p fb %p crtc @ (%d,%d, %ux%u) src @ (%u,%u, %ux%u)", |
63 | __entry->plane, __entry->crtc, __entry->fb, | |
64 | __entry->crtc_x, __entry->crtc_y, | |
65 | __entry->crtc_w, __entry->crtc_h, | |
66 | __entry->src_x >> 16, __entry->src_y >> 16, | |
67 | __entry->src_w >> 16, __entry->src_h >> 16) | |
c8a220c6 RK |
68 | ); |
69 | ||
70 | TRACE_EVENT(armada_ovl_plane_work, | |
71 | TP_PROTO(struct drm_crtc *crtc, struct drm_plane *plane), | |
72 | TP_ARGS(crtc, plane), | |
73 | TP_STRUCT__entry( | |
74 | __field(struct drm_plane *, plane) | |
75 | __field(struct drm_crtc *, crtc) | |
76 | ), | |
77 | TP_fast_assign( | |
78 | __entry->plane = plane; | |
79 | __entry->crtc = crtc; | |
80 | ), | |
81 | TP_printk("plane %p crtc %p", | |
82 | __entry->plane, __entry->crtc) | |
83 | ); | |
84 | ||
85 | #endif | |
86 | ||
87 | /* This part must be outside protection */ | |
88 | #undef TRACE_INCLUDE_PATH | |
f23ef8ed | 89 | #define TRACE_INCLUDE_PATH ../../drivers/gpu/drm/armada |
c8a220c6 | 90 | #include <trace/define_trace.h> |