Lines Matching refs:submit

37 /* The legacy implementation of submit/ringbuffer, which still does the
111 struct fd_submit *submit;
126 /* add (if needed) bo to submit and return index: */
128 append_bo(struct msm_submit *submit, struct fd_bo *bo)
134 * different submits. But it is not legal to use the same submit
139 if (unlikely((idx >= submit->nr_submit_bos) ||
140 (submit->submit_bos[idx].handle != bo->handle))) {
144 entry = _mesa_hash_table_search_pre_hashed(submit->bo_table, hash, bo);
150 submit, submit_bos,
156 APPEND(submit, bos, fd_bo_ref(bo));
158 _mesa_hash_table_insert_pre_hashed(submit->bo_table, hash, bo,
179 msm_submit_suballoc_ring_bo(struct fd_submit *submit,
182 struct msm_submit *msm_submit = to_msm_submit(submit);
203 msm_ring->ring_bo = fd_bo_new_ring(submit->pipe->dev, 0x8000);
219 msm_submit_new_ringbuffer(struct fd_submit *submit, uint32_t size,
222 struct msm_submit *msm_submit = to_msm_submit(submit);
227 msm_ring->u.submit = submit;
235 msm_submit_suballoc_ring_bo(submit, msm_ring, size);
241 msm_ring->ring_bo = fd_bo_new_ring(submit->pipe->dev, size);
251 handle_stateobj_relocs(struct msm_submit *submit, struct msm_ringbuffer *ring)
263 relocs[i].reloc_idx = append_bo(submit, bo);
270 msm_submit_flush(struct fd_submit *submit, int in_fence_fd,
273 struct msm_submit *msm_submit = to_msm_submit(submit);
274 struct msm_pipe *msm_pipe = to_msm_pipe(submit->pipe);
281 finalize_current_cmd(submit->primary);
282 append_ring(msm_submit->ring_set, submit->primary);
293 if (ring != submit->primary)
348 fd_bo_add_fence(msm_submit->bos[j], submit->pipe, submit->fence);
368 ret = drmCommandWriteRead(submit->pipe->dev->fd, DRM_MSM_GEM_SUBMIT, &req,
371 ERROR_MSG("submit failed: %d (%s)", ret, strerror(errno));
375 out_fence->fence.ufence = submit->fence;
393 msm_submit_destroy(struct fd_submit *submit)
395 struct msm_submit *msm_submit = to_msm_submit(submit);
426 struct fd_submit *submit;
435 submit = &msm_submit->base;
436 submit->funcs = &submit_funcs;
438 return submit;
462 struct fd_pipe *pipe = msm_ring->u.submit->pipe;
489 /* this gets fixed up at submit->flush() time, since this state-
496 struct msm_submit *msm_submit = to_msm_submit(msm_ring->u.submit);
500 pipe = msm_ring->u.submit->pipe;
531 append_stateobj_rings(struct msm_submit *submit, struct fd_ringbuffer *target)
540 append_ring(submit->ring_set, ring);
543 append_stateobj_rings(submit, ring);
577 struct msm_submit *msm_submit = to_msm_submit(msm_ring->u.submit);
585 struct msm_submit *msm_submit = to_msm_submit(msm_ring->u.submit);
605 struct fd_submit *submit = msm_ring->u.submit;
606 struct fd_pipe *pipe = submit->pipe;
613 if (to_msm_submit(submit)->nr_bos > MAX_ARRAY_SIZE/2) {
639 struct fd_submit *submit = msm_ring->u.submit;
646 slab_free_st(&to_msm_submit(submit)->ring_pool, msm_ring);