diff options
author | Daniel Vetter <daniel.vetter@ffwll.ch> | 2013-06-02 17:23:01 +0200 |
---|---|---|
committer | Daniel Vetter <daniel.vetter@ffwll.ch> | 2013-06-03 14:16:12 +0200 |
commit | d7697eea3eec74c561d12887d892c53ac4380c00 (patch) | |
tree | d061d515c8b7cbdee1c68ed365742f20ff048a58 | |
parent | b51b32cde1757cd0f3f75bc15d5e0e98c3007dff (diff) | |
download | kernel_goldelico_gta04-d7697eea3eec74c561d12887d892c53ac4380c00.zip kernel_goldelico_gta04-d7697eea3eec74c561d12887d892c53ac4380c00.tar.gz kernel_goldelico_gta04-d7697eea3eec74c561d12887d892c53ac4380c00.tar.bz2 |
drm/i915: optimize vblank waits in set_base_atomic
We only need to do them if the pipe is actually running and if the
framebuffers have changed. Removes two "wait for vblank timed out"
messages when doing a suspend/resume cycle on my i855gm.
v2: s/to_intel_ctrc(crtc)/intel_crtc/ spotted by Chris.
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
-rw-r--r-- | drivers/gpu/drm/i915/intel_display.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index c112466..988e3de 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c @@ -2212,7 +2212,8 @@ intel_pipe_set_base(struct drm_crtc *crtc, int x, int y, crtc->y = y; if (old_fb) { - intel_wait_for_vblank(dev, intel_crtc->pipe); + if (intel_crtc->active && old_fb != fb) + intel_wait_for_vblank(dev, intel_crtc->pipe); intel_unpin_fb_obj(to_intel_framebuffer(old_fb)->obj); } |