summaryrefslogtreecommitdiffstats
path: root/drivers/gpu
diff options
context:
space:
mode:
authorDaniel Vetter2012-04-11 22:12:58 +0200
committerDaniel Vetter2012-04-13 12:53:28 +0200
commit28f0cbf71f5ed9b080878c04158c754b090a674a (patch)
tree6ffe2c4a81d59b5d064796e2059b20496832b766 /drivers/gpu
parentdrm/i915: consolidate ring->add_request a bit (diff)
downloadkernel-qcow2-linux-28f0cbf71f5ed9b080878c04158c754b090a674a.tar.gz
kernel-qcow2-linux-28f0cbf71f5ed9b080878c04158c754b090a674a.tar.xz
kernel-qcow2-linux-28f0cbf71f5ed9b080878c04158c754b090a674a.zip
drm/i915: don't set up gem ring functions on gen5 for !kms
We already disallow initialition of gem in this case in the corresponding ioctl, so don't bother setting up the gem support ring functions in the legacy dri render ring init. Reviewed-by: Eric Anholt <eric@anholt.net> Signed-Off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'drivers/gpu')
-rw-r--r--drivers/gpu/drm/i915/intel_ringbuffer.c24
1 files changed, 10 insertions, 14 deletions
diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
index ac05c749104a..6b3ff37e752c 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.c
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
@@ -1342,21 +1342,17 @@ int intel_render_ring_init_dri(struct drm_device *dev, u64 start, u32 size)
if (INTEL_INFO(dev)->gen >= 6) {
/* non-kms not supported on gen6+ */
return -ENODEV;
- } else if (IS_GEN5(dev)) {
- ring->add_request = pc_render_add_request;
- ring->flush = render_ring_flush;
- ring->get_seqno = pc_render_get_seqno;
- ring->irq_get = gen5_ring_get_irq;
- ring->irq_put = gen5_ring_put_irq;
- ring->irq_enable_mask = GT_USER_INTERRUPT | GT_PIPE_NOTIFY;
- } else {
- ring->add_request = i9xx_add_request;
- ring->flush = render_ring_flush;
- ring->get_seqno = ring_get_seqno;
- ring->irq_get = i9xx_ring_get_irq;
- ring->irq_put = i9xx_ring_put_irq;
- ring->irq_enable_mask = I915_USER_INTERRUPT;
}
+
+ /* Note: gem is not supported on gen5/ilk without kms (the corresponding
+ * gem_init ioctl returns with -ENODEV). Hence we do not need to set up
+ * the special gen5 functions. */
+ ring->add_request = i9xx_add_request;
+ ring->flush = render_ring_flush;
+ ring->get_seqno = ring_get_seqno;
+ ring->irq_get = i9xx_ring_get_irq;
+ ring->irq_put = i9xx_ring_put_irq;
+ ring->irq_enable_mask = I915_USER_INTERRUPT;
ring->write_tail = ring_write_tail;
if (INTEL_INFO(dev)->gen >= 4)
ring->dispatch_execbuffer = i965_dispatch_execbuffer;