diff options
author | Damien Lespiau | 2013-10-15 18:55:33 +0100 |
---|---|---|
committer | Daniel Vetter | 2013-10-16 13:32:12 +0200 |
commit | 4b584369c6d6b75c9dbfeeb0896853874d031897 (patch) | |
tree | 608e8278bb0d33b2080ddef04c980956fdc79ad1 /drivers/gpu/drm/i915/i915_debugfs.c | |
parent | ae676fcd2a93bf1809cddbd79e37b37609791dc2 (diff) |
drm/i915: Empty the circular buffer when asked for a new source
So we don't read out stale CRCs from a previous run left in the buffer.
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'drivers/gpu/drm/i915/i915_debugfs.c')
-rw-r--r-- | drivers/gpu/drm/i915/i915_debugfs.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/i915_debugfs.c b/drivers/gpu/drm/i915/i915_debugfs.c index 787c50d194d4..ec9151afa240 100644 --- a/drivers/gpu/drm/i915/i915_debugfs.c +++ b/drivers/gpu/drm/i915/i915_debugfs.c @@ -1820,6 +1820,12 @@ static int pipe_crc_set_source(struct drm_device *dev, enum pipe pipe, if (pipe_crc->source && source) return -EINVAL; + /* none -> real source transition */ + if (source) { + atomic_set(&pipe_crc->head, 0); + atomic_set(&pipe_crc->tail, 0); + } + pipe_crc->source = source; switch (source) { |