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)
133 * different submits. But it is not legal to use the same submit
138 if (unlikely((idx >= submit->nr_submit_bos) ||
139 (submit->submit_bos[idx].handle != bo->handle))) {
143 entry = _mesa_hash_table_search_pre_hashed(submit->bo_table, hash, bo);
149 submit, submit_bos,
155 APPEND(submit, bos, fd_bo_ref(bo));
157 _mesa_hash_table_insert_pre_hashed(submit->bo_table, hash, bo,
178 msm_submit_suballoc_ring_bo(struct fd_submit *submit,
181 struct msm_submit *msm_submit = to_msm_submit(submit);
202 msm_ring->ring_bo = fd_bo_new_ring(submit->pipe->dev, 0x8000);
218 msm_submit_new_ringbuffer(struct fd_submit *submit, uint32_t size,
221 struct msm_submit *msm_submit = to_msm_submit(submit);
226 msm_ring->u.submit = submit;
234 msm_submit_suballoc_ring_bo(submit, msm_ring, size);
240 msm_ring->ring_bo = fd_bo_new_ring(submit->pipe->dev, size);
250 handle_stateobj_relocs(struct msm_submit *submit, struct msm_ringbuffer *ring)
262 relocs[i].reloc_idx = append_bo(submit, bo);
269 msm_submit_flush(struct fd_submit *submit, int in_fence_fd,
272 struct msm_submit *msm_submit = to_msm_submit(submit);
273 struct msm_pipe *msm_pipe = to_msm_pipe(submit->pipe);
280 finalize_current_cmd(submit->primary);
281 append_ring(msm_submit->ring_set, submit->primary);
292 if (ring != submit->primary)
347 fd_bo_add_fence(msm_submit->bos[j], submit->pipe, submit->fence);
367 ret = drmCommandWriteRead(submit->pipe->dev->fd, DRM_MSM_GEM_SUBMIT, &req,
370 ERROR_MSG("submit failed: %d (%s)", ret, strerror(errno));
374 out_fence->fence.ufence = submit->fence;
392 msm_submit_destroy(struct fd_submit *submit)
394 struct msm_submit *msm_submit = to_msm_submit(submit);
425 struct fd_submit *submit;
434 submit = &msm_submit->base;
435 submit->funcs = &submit_funcs;
437 return submit;
461 struct fd_pipe *pipe = msm_ring->u.submit->pipe;
488 /* this gets fixed up at submit->flush() time, since this state-
495 struct msm_submit *msm_submit = to_msm_submit(msm_ring->u.submit);
499 pipe = msm_ring->u.submit->pipe;
530 append_stateobj_rings(struct msm_submit *submit, struct fd_ringbuffer *target)
539 append_ring(submit->ring_set, ring);
542 append_stateobj_rings(submit, ring);
576 struct msm_submit *msm_submit = to_msm_submit(msm_ring->u.submit);
584 struct msm_submit *msm_submit = to_msm_submit(msm_ring->u.submit);
604 struct fd_submit *submit = msm_ring->u.submit;
605 struct fd_pipe *pipe = submit->pipe;
612 if (to_msm_submit(submit)->nr_bos > MAX_ARRAY_SIZE/2) {
638 struct fd_submit *submit = msm_ring->u.submit;
645 slab_free_st(&to_msm_submit(submit)->ring_pool, msm_ring);