Lines Matching refs:ring

41 #define LP_RING(d) (&((struct drm_i915_private *)(d))->ring[RCS])
53 * Lock test for when it's just for synchronization of ring access.
56 * has access to the ring.
107 struct intel_ring_buffer *ring = LP_RING(dev_priv);
114 if (ring->status_page.gfx_addr) {
115 ring->status_page.gfx_addr = 0;
128 struct intel_ring_buffer *ring = LP_RING(dev_priv);
131 * We should never lose context on the ring with modesetting
137 ring->head = I915_READ_HEAD(ring) & HEAD_ADDR;
138 ring->tail = I915_READ_TAIL(ring) & TAIL_ADDR;
139 ring->space = ring->head - (ring->tail + I915_RING_FREE_SPACE);
140 if (ring->space < 0)
141 ring->space += ring->size;
147 if (ring->head == ring->tail && master_priv->sarea_priv)
165 intel_cleanup_ring_buffer(&dev_priv->ring[i]);
223 struct intel_ring_buffer *ring = LP_RING(dev_priv);
227 if (ring->virtual_start == NULL) {
229 " ring buffer\n");
234 if (!ring->status_page.page_addr) {
239 ring->status_page.page_addr);
240 if (ring->status_page.gfx_addr != 0)
241 intel_ring_setup_status_page(ring);
767 struct intel_ring_buffer *ring = LP_RING(dev_priv);
781 if (ring->irq_get(ring)) {
784 ret = -msleep(&ring->irq_queue, &dev_priv->irq_lock,
790 ring->irq_put(ring);
802 /* Needs the lock as it touches the ring.
955 value = intel_ring_initialized(&dev_priv->ring[VCS]);
958 value = intel_ring_initialized(&dev_priv->ring[BCS]);
1052 struct intel_ring_buffer *ring;
1072 ring = LP_RING(dev_priv);
1073 ring->status_page.gfx_addr = hws->addr & (0x1ffff<<12);
1080 ring->status_page.gfx_addr = 0;
1087 I915_WRITE(HWS_PGA, ring->status_page.gfx_addr);
1090 ring->status_page.gfx_addr);
1092 ring->status_page.page_addr);