Lines Matching defs:ring

46  * the head pointer changes, so that EBUSY only happens if the ring
53 drm_i915_ring_buffer_t *ring = &(dev_priv->ring);
61 ring->head = I915_READ(PRB0_HEAD) & HEAD_ADDR;
63 ring->space = ring->head - (ring->tail + 8);
64 if (ring->space < 0)
65 ring->space += ring->Size;
66 if (ring->space >= n)
69 if (ring->head != last_head)
75 last_head = ring->head;
134 drm_i915_ring_buffer_t *ring = &(dev_priv->ring);
136 ring->head = I915_READ(PRB0_HEAD) & HEAD_ADDR;
137 ring->tail = I915_READ(PRB0_TAIL) & TAIL_ADDR;
138 ring->space = ring->head - (ring->tail + 8);
139 if (ring->space < 0)
140 ring->space += ring->Size;
156 if (dev_priv->ring.virtual_start) {
157 drm_core_ioremapfree(&dev_priv->ring.map, dev);
158 dev_priv->ring.virtual_start = 0;
159 dev_priv->ring.map.handle = 0;
160 dev_priv->ring.map.size = 0;
193 if (dev_priv->ring.ring_obj != NULL) {
200 dev_priv->ring.Size = init->ring_size;
201 dev_priv->ring.tail_mask = dev_priv->ring.Size - 1;
203 dev_priv->ring.map.offset = (u_offset_t)init->ring_start;
204 dev_priv->ring.map.size = init->ring_size;
205 dev_priv->ring.map.type = 0;
206 dev_priv->ring.map.flags = 0;
207 dev_priv->ring.map.mtrr = 0;
209 drm_core_ioremap(&dev_priv->ring.map, dev);
211 if (dev_priv->ring.map.handle == NULL) {
214 " ring buffer\n");
219 dev_priv->ring.virtual_start = (u8 *)dev_priv->ring.map.dev_addr;
241 if (dev_priv->ring.map.handle == NULL) {
243 " ring buffer\n");
376 if ((dwords+1) * sizeof(int) >= dev_priv->ring.Size - 8) {
616 ret = i915_wait_ring(dev, dev_priv->ring.Size - 8, __FUNCTION__);
622 dev_priv->ring.head,
623 dev_priv->ring.tail,
624 dev_priv->ring.space);