Lines Matching refs:ring
34 #define I915_READ_TAIL(ring) I915_READ(RING_TAIL((ring)->mmio_base)) argument
35 #define I915_WRITE_TAIL(ring, val) I915_WRITE(RING_TAIL((ring)->mmio_base), val) argument
37 #define I915_READ_START(ring) I915_READ(RING_START((ring)->mmio_base)) argument
38 #define I915_WRITE_START(ring, val) I915_WRITE(RING_START((ring)->mmio_base), val) argument
40 #define I915_READ_HEAD(ring) I915_READ(RING_HEAD((ring)->mmio_base)) argument
41 #define I915_WRITE_HEAD(ring, val) I915_WRITE(RING_HEAD((ring)->mmio_base), val) argument
43 #define I915_READ_CTL(ring) I915_READ(RING_CTL((ring)->mmio_base)) argument
44 #define I915_WRITE_CTL(ring, val) I915_WRITE(RING_CTL((ring)->mmio_base), val) argument
46 #define I915_READ_IMR(ring) I915_READ(RING_IMR((ring)->mmio_base)) argument
47 #define I915_WRITE_IMR(ring, val) I915_WRITE(RING_IMR((ring)->mmio_base), val) argument
49 #define I915_READ_MODE(ring) I915_READ(RING_MI_MODE((ring)->mmio_base)) argument
50 #define I915_WRITE_MODE(ring, val) I915_WRITE(RING_MI_MODE((ring)->mmio_base), val) argument
70 ring->semaphore.signal_ggtt[RCS] = GEN8_SIGNAL_OFFSET(ring, RCS); \
71 ring->semaphore.signal_ggtt[VCS] = GEN8_SIGNAL_OFFSET(ring, VCS); \
72 ring->semaphore.signal_ggtt[BCS] = GEN8_SIGNAL_OFFSET(ring, BCS); \
73 ring->semaphore.signal_ggtt[VECS] = GEN8_SIGNAL_OFFSET(ring, VECS); \
74 ring->semaphore.signal_ggtt[VCS2] = GEN8_SIGNAL_OFFSET(ring, VCS2); \
75 ring->semaphore.signal_ggtt[ring->id] = MI_SEMAPHORE_SYNC_INVALID; \
102 struct intel_engine_cs *ring; member
174 bool __must_check (*irq_get)(struct intel_engine_cs *ring);
175 void (*irq_put)(struct intel_engine_cs *ring);
177 int (*init_hw)(struct intel_engine_cs *ring);
181 void (*write_tail)(struct intel_engine_cs *ring,
193 u32 (*get_seqno)(struct intel_engine_cs *ring,
195 void (*set_seqno)(struct intel_engine_cs *ring,
203 void (*cleanup)(struct intel_engine_cs *ring);
351 bool intel_ring_initialized(struct intel_engine_cs *ring);
354 intel_ring_flag(struct intel_engine_cs *ring) in intel_ring_flag() argument
356 return 1 << ring->id; in intel_ring_flag()
360 intel_ring_sync_index(struct intel_engine_cs *ring, in intel_ring_sync_index() argument
373 idx = (other - ring) - 1; in intel_ring_sync_index()
381 intel_flush_status_page(struct intel_engine_cs *ring, int reg) in intel_flush_status_page() argument
383 drm_clflush_virt_range(&ring->status_page.page_addr[reg], in intel_flush_status_page()
388 intel_read_status_page(struct intel_engine_cs *ring, in intel_read_status_page() argument
393 return ring->status_page.page_addr[reg]; in intel_read_status_page()
397 intel_write_status_page(struct intel_engine_cs *ring, in intel_write_status_page() argument
400 ring->status_page.page_addr[reg] = value; in intel_write_status_page()
428 void intel_ringbuffer_free(struct intel_ringbuffer *ring);
430 void intel_stop_ring_buffer(struct intel_engine_cs *ring);
431 void intel_cleanup_ring_buffer(struct intel_engine_cs *ring);
437 static inline void intel_ring_emit(struct intel_engine_cs *ring, in intel_ring_emit() argument
440 struct intel_ringbuffer *ringbuf = ring->buffer; in intel_ring_emit()
444 static inline void intel_ring_advance(struct intel_engine_cs *ring) in intel_ring_advance() argument
446 struct intel_ringbuffer *ringbuf = ring->buffer; in intel_ring_advance()
452 bool intel_ring_stopped(struct intel_engine_cs *ring);
454 int __must_check intel_ring_idle(struct intel_engine_cs *ring);
455 void intel_ring_init_seqno(struct intel_engine_cs *ring, u32 seqno);
459 void intel_fini_pipe_control(struct intel_engine_cs *ring);
460 int intel_init_pipe_control(struct intel_engine_cs *ring);
468 u64 intel_ring_get_active_head(struct intel_engine_cs *ring);
470 int init_workarounds_ring(struct intel_engine_cs *ring);