summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/intel_uncore.c
diff options
context:
space:
mode:
authorRobert Beckett2014-06-03 10:08:26 +0200
committerDaniel Vetter2014-06-11 16:57:43 +0200
commit542c184f0ea08ee65794c1f0b044e1db4f8aab1b (patch)
tree243dcae5d6516b24b47a4c42ba1e37c72f59f0c5 /drivers/gpu/drm/i915/intel_uncore.c
parentdrm/i915: Drop unused lut tables from intel_plane (diff)
downloadkernel-qcow2-linux-542c184f0ea08ee65794c1f0b044e1db4f8aab1b.tar.gz
kernel-qcow2-linux-542c184f0ea08ee65794c1f0b044e1db4f8aab1b.tar.xz
kernel-qcow2-linux-542c184f0ea08ee65794c1f0b044e1db4f8aab1b.zip
drm/i915: Simplify intel_gpu_reset
Replaced ever growing switch for gen version with chained conditionals. Futre gen's only need to add a new one if they require something different. Reviewed-by: Damien Lespiau <damien.lespiau@intel.com> Signed-off-by: Robert Beckett <robert.beckett@intel.com> [danvet: Picked from internal tree and white-wash commit message.] Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'drivers/gpu/drm/i915/intel_uncore.c')
-rw-r--r--drivers/gpu/drm/i915/intel_uncore.c22
1 files changed, 10 insertions, 12 deletions
diff --git a/drivers/gpu/drm/i915/intel_uncore.c b/drivers/gpu/drm/i915/intel_uncore.c
index 871c2841af04..c90222dfe5ec 100644
--- a/drivers/gpu/drm/i915/intel_uncore.c
+++ b/drivers/gpu/drm/i915/intel_uncore.c
@@ -1154,18 +1154,16 @@ static int gen6_do_reset(struct drm_device *dev)
int intel_gpu_reset(struct drm_device *dev)
{
- switch (INTEL_INFO(dev)->gen) {
- case 8:
- case 7:
- case 6: return gen6_do_reset(dev);
- case 5: return ironlake_do_reset(dev);
- case 4:
- if (IS_G4X(dev))
- return g4x_do_reset(dev);
- else
- return i965_do_reset(dev);
- default: return -ENODEV;
- }
+ if (INTEL_INFO(dev)->gen >= 6)
+ return gen6_do_reset(dev);
+ else if (IS_GEN5(dev))
+ return ironlake_do_reset(dev);
+ else if (IS_G4X(dev))
+ return g4x_do_reset(dev);
+ else if (IS_GEN4(dev))
+ return i965_do_reset(dev);
+ else
+ return -ENODEV;
}
void intel_uncore_check_errors(struct drm_device *dev)