Lines Matching refs:submit

275 static int lima_gem_add_deps(struct drm_file *file, struct lima_submit *submit)  in lima_gem_add_deps()  argument
279 for (i = 0; i < ARRAY_SIZE(submit->in_sync); i++) { in lima_gem_add_deps()
282 if (!submit->in_sync[i]) in lima_gem_add_deps()
285 err = drm_syncobj_find_fence(file, submit->in_sync[i], in lima_gem_add_deps()
290 err = drm_sched_job_add_dependency(&submit->task->base, fence); in lima_gem_add_deps()
300 int lima_gem_submit(struct drm_file *file, struct lima_submit *submit) in lima_gem_submit() argument
308 struct lima_bo **bos = submit->lbos; in lima_gem_submit()
310 if (submit->out_sync) { in lima_gem_submit()
311 out_sync = drm_syncobj_find(file, submit->out_sync); in lima_gem_submit()
316 for (i = 0; i < submit->nr_bos; i++) { in lima_gem_submit()
320 obj = drm_gem_object_lookup(file, submit->bos[i].handle); in lima_gem_submit()
341 submit->nr_bos, &ctx); in lima_gem_submit()
346 submit->task, submit->ctx->context + submit->pipe, in lima_gem_submit()
347 bos, submit->nr_bos, vm); in lima_gem_submit()
351 err = lima_gem_add_deps(file, submit); in lima_gem_submit()
355 for (i = 0; i < submit->nr_bos; i++) { in lima_gem_submit()
357 submit->task, bos[i], in lima_gem_submit()
358 submit->bos[i].flags & LIMA_SUBMIT_BO_WRITE, in lima_gem_submit()
359 submit->flags & LIMA_SUBMIT_FLAG_EXPLICIT_FENCE); in lima_gem_submit()
364 fence = lima_sched_context_queue_task(submit->task); in lima_gem_submit()
366 for (i = 0; i < submit->nr_bos; i++) { in lima_gem_submit()
368 submit->bos[i].flags & LIMA_SUBMIT_BO_WRITE ? in lima_gem_submit()
373 submit->nr_bos, &ctx); in lima_gem_submit()
375 for (i = 0; i < submit->nr_bos; i++) in lima_gem_submit()
388 lima_sched_task_fini(submit->task); in lima_gem_submit()
391 submit->nr_bos, &ctx); in lima_gem_submit()
393 for (i = 0; i < submit->nr_bos; i++) { in lima_gem_submit()