From: Ville Syrj?l? <ville.syrjala at linux.intel.com> Signed-off-by: Ville Syrj?l? <ville.syrjala at linux.intel.com> --- drivers/gpu/drm/i915/i915_trace.h | 18 ++++++++++++++++++ drivers/gpu/drm/i915/intel_atomic.c | 2 ++ 2 files changed, 20 insertions(+), 0 deletions(-) diff --git a/drivers/gpu/drm/i915/i915_trace.h b/drivers/gpu/drm/i915/i915_trace.h index fb35edd..2b529f2 100644 --- a/drivers/gpu/drm/i915/i915_trace.h +++ b/drivers/gpu/drm/i915/i915_trace.h @@ -16,6 +16,24 @@ /* object tracking */ +TRACE_EVENT(i915_atomic_evade, + TP_PROTO(u32 dsl_min, u32 dsl_max, u32 dsl), + TP_ARGS(dsl_min, dsl_max, dsl), + + TP_STRUCT__entry( + __field(u32, dsl_min) + __field(u32, dsl_max) + __field(u32, dsl) + ), + TP_fast_assign( + __entry->dsl_min = dsl_min; + __entry->dsl_max = dsl_max; + __entry->dsl = dsl; + ), + + TP_printk("dsl_min=%u dsl_max=%u dsl=%u", __entry->dsl_min, __entry->dsl_max, __entry->dsl) +); + TRACE_EVENT(i915_atomic_flush, TP_PROTO(u32 dsl0, u32 dsl1, u32 dsl2), TP_ARGS(dsl0, dsl1, dsl2), diff --git a/drivers/gpu/drm/i915/intel_atomic.c b/drivers/gpu/drm/i915/intel_atomic.c index 945ba75..69827a8 100644 --- a/drivers/gpu/drm/i915/intel_atomic.c +++ b/drivers/gpu/drm/i915/intel_atomic.c @@ -1950,6 +1950,8 @@ static void intel_pipe_vblank_evade(struct drm_crtc *crtc) intel_crtc->vbl_received = false; val = I915_READ(PIPEDSL(pipe)); + + trace_i915_atomic_evade(min, max, val); } if (vblank_ref) -- 1.7.8.6