[Intel-gfx] [PATCH 3/9] drm/i915: Skip sprite register writes on disabled pipe
ville.syrjala at linux.intel.com
ville.syrjala at linux.intel.com
Mon Sep 30 16:23:59 CEST 2013
From: Ville Syrjälä <ville.syrjala at linux.intel.com>
If the pipe is disabled there's no point in writing the sprite
registers. If necessary, they will get written when the pipe gets
enabled.
Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
---
drivers/gpu/drm/i915/intel_sprite.c | 17 ++++++++++-------
1 file changed, 10 insertions(+), 7 deletions(-)
diff --git a/drivers/gpu/drm/i915/intel_sprite.c b/drivers/gpu/drm/i915/intel_sprite.c
index 4fc9dc0..5dc4769 100644
--- a/drivers/gpu/drm/i915/intel_sprite.c
+++ b/drivers/gpu/drm/i915/intel_sprite.c
@@ -830,12 +830,14 @@ intel_update_plane(struct drm_plane *plane, struct drm_crtc *crtc,
if (!disable_primary)
intel_enable_primary(crtc);
- if (visible)
- intel_plane->update_plane(plane, crtc, fb, obj,
- crtc_x, crtc_y, crtc_w, crtc_h,
- src_x, src_y, src_w, src_h);
- else
- intel_plane->disable_plane(plane, crtc);
+ if (intel_crtc->active) {
+ if (visible)
+ intel_plane->update_plane(plane, crtc, fb, obj,
+ crtc_x, crtc_y, crtc_w, crtc_h,
+ src_x, src_y, src_w, src_h);
+ else
+ intel_plane->disable_plane(plane, crtc);
+ }
if (disable_primary)
intel_disable_primary(crtc);
@@ -879,7 +881,8 @@ intel_disable_plane(struct drm_plane *plane)
intel_crtc = to_intel_crtc(plane->crtc);
intel_enable_primary(plane->crtc);
- intel_plane->disable_plane(plane, plane->crtc);
+ if (intel_crtc->active)
+ intel_plane->disable_plane(plane, plane->crtc);
if (!intel_plane->obj)
goto out;
--
1.8.1.5
More information about the Intel-gfx
mailing list