aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/i915_gpu_error.c
diff options
context:
space:
mode:
authorImre Deak <imre.deak@intel.com>2014-04-14 13:24:31 -0400
committerDaniel Vetter <daniel.vetter@ffwll.ch>2014-05-05 03:09:01 -0400
commit51660e0eb6e7130fb1ba511cc1918cbe505be0af (patch)
tree2a62710a3882d6e0a8291f179e80f78211a40fd5 /drivers/gpu/drm/i915/i915_gpu_error.c
parentf454c6940ed4bfc76670295534270ccebf366898 (diff)
drm/i915: gen2: move error capture of IER to its correct place
While checking the error capture path I noticed that this register is read twice for GEN2, so fix this and also move the read where it's done for other platforms. Signed-off-by: Imre Deak <imre.deak@intel.com> Reviewed-by: Rodrigo Vivi <rodrigo.vivi@gmail.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'drivers/gpu/drm/i915/i915_gpu_error.c')
-rw-r--r--drivers/gpu/drm/i915/i915_gpu_error.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/gpu/drm/i915/i915_gpu_error.c b/drivers/gpu/drm/i915/i915_gpu_error.c
index 282164c7a02d..667bb2936e3b 100644
--- a/drivers/gpu/drm/i915/i915_gpu_error.c
+++ b/drivers/gpu/drm/i915/i915_gpu_error.c
@@ -1054,9 +1054,6 @@ static void i915_capture_reg_state(struct drm_i915_private *dev_priv,
1054 error->gfx_mode = I915_READ(GFX_MODE); 1054 error->gfx_mode = I915_READ(GFX_MODE);
1055 } 1055 }
1056 1056
1057 if (IS_GEN2(dev))
1058 error->ier = I915_READ16(IER);
1059
1060 /* 2: Registers which belong to multiple generations */ 1057 /* 2: Registers which belong to multiple generations */
1061 if (INTEL_INFO(dev)->gen >= 7) 1058 if (INTEL_INFO(dev)->gen >= 7)
1062 error->forcewake = I915_READ(FORCEWAKE_MT); 1059 error->forcewake = I915_READ(FORCEWAKE_MT);
@@ -1080,7 +1077,10 @@ static void i915_capture_reg_state(struct drm_i915_private *dev_priv,
1080 if (HAS_PCH_SPLIT(dev)) 1077 if (HAS_PCH_SPLIT(dev))
1081 error->ier = I915_READ(DEIER) | I915_READ(GTIER); 1078 error->ier = I915_READ(DEIER) | I915_READ(GTIER);
1082 else { 1079 else {
1083 error->ier = I915_READ(IER); 1080 if (IS_GEN2(dev))
1081 error->ier = I915_READ16(IER);
1082 else
1083 error->ier = I915_READ(IER);
1084 for_each_pipe(pipe) 1084 for_each_pipe(pipe)
1085 error->pipestat[pipe] = I915_READ(PIPESTAT(pipe)); 1085 error->pipestat[pipe] = I915_READ(PIPESTAT(pipe));
1086 } 1086 }