Lines Matching defs:cpu_job
1215 struct v3d_cpu_job *cpu_job = NULL;
1226 ret = v3d_job_allocate((void *)&cpu_job, sizeof(*cpu_job));
1231 ret = v3d_get_extensions(file_priv, args->extensions, &se, cpu_job);
1239 if (!cpu_job->job_type) {
1245 if (args->bo_handle_count != cpu_job_bo_handle_count[cpu_job->job_type]) {
1251 trace_v3d_submit_cpu_ioctl(&v3d->drm, cpu_job->job_type);
1253 ret = v3d_job_init(v3d, file_priv, &cpu_job->base,
1256 v3d_job_deallocate((void *)&cpu_job);
1260 clean_job = cpu_job->indirect_csd.clean_job;
1261 csd_job = cpu_job->indirect_csd.job;
1264 ret = v3d_lookup_bos(dev, file_priv, &cpu_job->base,
1269 ret = v3d_lock_bo_reservations(&cpu_job->base, &acquire_ctx);
1275 v3d_push_job(&cpu_job->base);
1277 switch (cpu_job->job_type) {
1280 dma_fence_get(cpu_job->base.done_fence));
1299 out_se = (cpu_job->job_type == V3D_CPU_JOB_TYPE_INDIRECT_CSD) ? NULL : &se;
1302 &cpu_job->base,
1304 out_se, cpu_job->base.done_fence);
1306 switch (cpu_job->job_type) {
1310 &cpu_job->indirect_csd.acquire_ctx,
1317 v3d_job_put(&cpu_job->base);
1326 drm_gem_unlock_reservations(cpu_job->base.bo, cpu_job->base.bo_count,
1330 &cpu_job->indirect_csd.acquire_ctx);
1333 v3d_job_cleanup((void *)cpu_job);
1337 kvfree(cpu_job->timestamp_query.queries);
1338 kvfree(cpu_job->performance_query.queries);