| From 1a6d11332fd1b67099afac6e6d2ce6a8577beaaf Mon Sep 17 00:00:00 2001 |
| From: =?UTF-8?q?Ville=20Syrj=C3=A4l=C3=A4?= <ville.syrjala@linux.intel.com> |
| Date: Tue, 4 Jun 2013 13:49:05 +0300 |
| Subject: drm/i915: Improve assert_planes_disabled() |
| MIME-Version: 1.0 |
| Content-Type: text/plain; charset=UTF-8 |
| Content-Transfer-Encoding: 8bit |
| |
| Ever since gen4 primary planes were fixed to pipes. |
| |
| And for gen2-3, don't check plane B if it doesn't exist. |
| |
| Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> |
| Reviewed-by: Rodrigo Vivi <rodrigo.vivi@gmail.com> |
| Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> |
| (cherry picked from commit 653e10266df8319d6003fbf46ec34865a5a363f6) |
| Signed-off-by: Darren Hart <dvhart@linux.intel.com> |
| --- |
| drivers/gpu/drm/i915/intel_display.c | 7 ++++--- |
| 1 file changed, 4 insertions(+), 3 deletions(-) |
| |
| diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c |
| index fc34abdae369..8389d954c99c 100644 |
| --- a/drivers/gpu/drm/i915/intel_display.c |
| +++ b/drivers/gpu/drm/i915/intel_display.c |
| @@ -1105,12 +1105,13 @@ static void assert_plane(struct drm_i915_private *dev_priv, |
| static void assert_planes_disabled(struct drm_i915_private *dev_priv, |
| enum pipe pipe) |
| { |
| + struct drm_device *dev = dev_priv->dev; |
| int reg, i; |
| u32 val; |
| int cur_pipe; |
| |
| - /* Planes are fixed to pipes on ILK+ */ |
| - if (HAS_PCH_SPLIT(dev_priv->dev) || IS_VALLEYVIEW(dev_priv->dev)) { |
| + /* Primary planes are fixed to pipes on gen4+ */ |
| + if (INTEL_INFO(dev)->gen >= 4) { |
| reg = DSPCNTR(pipe); |
| val = I915_READ(reg); |
| WARN((val & DISPLAY_PLANE_ENABLE), |
| @@ -1120,7 +1121,7 @@ static void assert_planes_disabled(struct drm_i915_private *dev_priv, |
| } |
| |
| /* Need to check both planes against the pipe */ |
| - for (i = 0; i < 2; i++) { |
| + for (i = 0; i < INTEL_INFO(dev)->num_pipes; i++) { |
| reg = DSPCNTR(i); |
| val = I915_READ(reg); |
| cur_pipe = (val & DISPPLANE_SEL_PIPE_MASK) >> |
| -- |
| 1.8.5.rc3 |
| |