aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBen Widawsky <ben@bwidawsk.net>2013-05-28 22:22:19 -0400
committerDaniel Vetter <daniel.vetter@ffwll.ch>2013-05-31 14:54:09 -0400
commit4a3dd19d94c65323d71b2ffc7e63940f00acfb47 (patch)
tree5662e690eb6b801ca43cb686b0160cca100a078e
parentad776f8b09d66e0145479fdbde2a710e5892441f (diff)
drm/i915: Introduce VECS: the 4th ring
The video enhancement command streamer is a new ring on HSW which does what it sounds like it does. This patch provides the most minimal inception of the ring. In order to support a new ring, we need to bump the number. The patch may look trivial to the untrained eye, but bumping the number of rings is a bit scary. As such the patch is not terribly useful by itself, but a pretty nice place to find issues during a bisection. Reviewed-by: Damien Lespiau <damien.lespiau@intel.com> Signed-off-by: Ben Widawsky <ben@bwidawsk.net> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
-rw-r--r--drivers/gpu/drm/i915/intel_ringbuffer.c2
-rw-r--r--drivers/gpu/drm/i915/intel_ringbuffer.h3
2 files changed, 4 insertions, 1 deletions
diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
index 5df179127e8b..ead979a94105 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.c
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
@@ -915,6 +915,8 @@ void intel_ring_setup_status_page(struct intel_ring_buffer *ring)
915 case VCS: 915 case VCS:
916 mmio = BSD_HWS_PGA_GEN7; 916 mmio = BSD_HWS_PGA_GEN7;
917 break; 917 break;
918 case VECS:
919 BUG();
918 } 920 }
919 } else if (IS_GEN6(ring->dev)) { 921 } else if (IS_GEN6(ring->dev)) {
920 mmio = RING_HWS_PGA_GEN6(ring->mmio_base); 922 mmio = RING_HWS_PGA_GEN6(ring->mmio_base);
diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.h b/drivers/gpu/drm/i915/intel_ringbuffer.h
index f55d92eb6c2a..73619cb34631 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.h
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.h
@@ -47,8 +47,9 @@ struct intel_ring_buffer {
47 RCS = 0x0, 47 RCS = 0x0,
48 VCS, 48 VCS,
49 BCS, 49 BCS,
50 VECS,
50 } id; 51 } id;
51#define I915_NUM_RINGS 3 52#define I915_NUM_RINGS 4
52 u32 mmio_base; 53 u32 mmio_base;
53 void __iomem *virtual_start; 54 void __iomem *virtual_start;
54 struct drm_device *dev; 55 struct drm_device *dev;