mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-03 12:16:39 +07:00
drm/i915: Add cxsr toggle tracepoint
Add a tracepoint for observing changes in the cxsr state. The tracepoint will dump out the frame and scanline counters for each pipe so that the information can be compared with eg. plane update tracepoints. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Reviewed-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Link: http://patchwork.freedesktop.org/patch/msgid/20170302171508.1666-18-ville.syrjala@linux.intel.com
This commit is contained in:
parent
c137d6605f
commit
1489bba824
@ -16,6 +16,36 @@
|
||||
|
||||
/* watermark/fifo updates */
|
||||
|
||||
TRACE_EVENT(intel_memory_cxsr,
|
||||
TP_PROTO(struct drm_i915_private *dev_priv, bool old, bool new),
|
||||
TP_ARGS(dev_priv, old, new),
|
||||
|
||||
TP_STRUCT__entry(
|
||||
__array(u32, frame, 3)
|
||||
__array(u32, scanline, 3)
|
||||
__field(bool, old)
|
||||
__field(bool, new)
|
||||
),
|
||||
|
||||
TP_fast_assign(
|
||||
enum pipe pipe;
|
||||
for_each_pipe(dev_priv, pipe) {
|
||||
__entry->frame[pipe] =
|
||||
dev_priv->drm.driver->get_vblank_counter(&dev_priv->drm, pipe);
|
||||
__entry->scanline[pipe] =
|
||||
intel_get_crtc_scanline(intel_get_crtc_for_pipe(dev_priv, pipe));
|
||||
}
|
||||
__entry->old = old;
|
||||
__entry->new = new;
|
||||
),
|
||||
|
||||
TP_printk("%s->%s, pipe A: frame=%u, scanline=%u, pipe B: frame=%u, scanline=%u, pipe C: frame=%u, scanline=%u",
|
||||
onoff(__entry->old), onoff(__entry->new),
|
||||
__entry->frame[PIPE_A], __entry->scanline[PIPE_A],
|
||||
__entry->frame[PIPE_B], __entry->scanline[PIPE_B],
|
||||
__entry->frame[PIPE_C], __entry->scanline[PIPE_C])
|
||||
);
|
||||
|
||||
TRACE_EVENT(vlv_wm,
|
||||
TP_PROTO(struct intel_crtc *crtc, const struct vlv_wm_values *wm),
|
||||
TP_ARGS(crtc, wm),
|
||||
|
@ -377,6 +377,8 @@ static bool _intel_set_memory_cxsr(struct drm_i915_private *dev_priv, bool enabl
|
||||
return false;
|
||||
}
|
||||
|
||||
trace_intel_memory_cxsr(dev_priv, was_enabled, enable);
|
||||
|
||||
DRM_DEBUG_KMS("memory self-refresh is %s (was %s)\n",
|
||||
enableddisabled(enable),
|
||||
enableddisabled(was_enabled));
|
||||
|
Loading…
Reference in New Issue
Block a user