summaryrefslogtreecommitdiffstats
path: root/drivers/gpu
diff options
context:
space:
mode:
authorDaniel Vetter2012-03-30 20:24:34 +0200
committerDaniel Vetter2012-04-09 18:04:07 +0200
commit901781b997570e55af950348d7cd5cef64fb6d7c (patch)
tree7f7cb39036871895b2db1eade7e47276a3d49394 /drivers/gpu
parentdrm/i915: rip out old HWSTAM missed irq WA for vlv (diff)
downloadkernel-qcow2-linux-901781b997570e55af950348d7cd5cef64fb6d7c.tar.gz
kernel-qcow2-linux-901781b997570e55af950348d7cd5cef64fb6d7c.tar.xz
kernel-qcow2-linux-901781b997570e55af950348d7cd5cef64fb6d7c.zip
drm/i915: use render gen to switch ring irq functions
Top-level interrupt bits are usually found in the display block. It therefore makes sense to use HAS_PCH_SPLIT in i915_irq.c But the irq stuff in intel_ring.c only concerns itself with render core/gt-level interrupt sources. It therefore makes more sense to switch based on gpu gen. Kills a vlv special case. Reviewed-by: Jesse Barnes <jbarnes@virtuousgeek.org> Signed-Off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'drivers/gpu')
-rw-r--r--drivers/gpu/drm/i915/intel_ringbuffer.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
index 98ac5c0ca37a..465a7da3b30d 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.c
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
@@ -687,7 +687,7 @@ render_ring_get_irq(struct intel_ring_buffer *ring)
spin_lock(&ring->irq_lock);
if (ring->irq_refcount++ == 0) {
- if (HAS_PCH_SPLIT(dev) || IS_VALLEYVIEW(dev))
+ if (INTEL_INFO(dev)->gen >= 5)
ironlake_enable_irq(dev_priv,
GT_PIPE_NOTIFY | GT_USER_INTERRUPT);
else
@@ -706,7 +706,7 @@ render_ring_put_irq(struct intel_ring_buffer *ring)
spin_lock(&ring->irq_lock);
if (--ring->irq_refcount == 0) {
- if (HAS_PCH_SPLIT(dev) || IS_VALLEYVIEW(dev))
+ if (INTEL_INFO(dev)->gen >= 5)
ironlake_disable_irq(dev_priv,
GT_USER_INTERRUPT |
GT_PIPE_NOTIFY);