Lines Matching refs:ring
70 void fd_ringbuffer_del(struct fd_ringbuffer *ring)
72 if (!atomic_dec_and_test(&ring->refcnt))
75 ring->funcs->destroy(ring);
79 fd_ringbuffer_ref(struct fd_ringbuffer *ring)
81 p_atomic_inc(&ring->refcnt);
82 return ring;
85 void fd_ringbuffer_grow(struct fd_ringbuffer *ring, uint32_t ndwords)
87 assert(ring->funcs->grow); /* unsupported on kgsl */
90 if (ring->size < 0x100000)
91 ring->size *= 2;
93 ring->funcs->grow(ring, ring->size);
96 void fd_ringbuffer_reloc(struct fd_ringbuffer *ring,
99 ring->funcs->emit_reloc(ring, reloc);
102 uint32_t fd_ringbuffer_cmd_count(struct fd_ringbuffer *ring)
104 if (!ring->funcs->cmd_count)
106 return ring->funcs->cmd_count(ring);
110 fd_ringbuffer_emit_reloc_ring_full(struct fd_ringbuffer *ring,
113 return ring->funcs->emit_reloc_ring(ring, target, cmd_idx);