Lines Matching refs:v3d
84 struct v3d_dev *v3d = exec->v3d; in v3d_job_run() local
85 struct drm_device *dev = &v3d->drm; in v3d_job_run()
95 spin_lock_irqsave(&v3d->job_lock, irqflags); in v3d_job_run()
97 v3d->bin_job = job->exec; in v3d_job_run()
104 v3d->render_job = job->exec; in v3d_job_run()
106 spin_unlock_irqrestore(&v3d->job_lock, irqflags); in v3d_job_run()
114 v3d_invalidate_caches(v3d); in v3d_job_run()
116 fence = v3d_fence_create(v3d, q); in v3d_job_run()
155 struct v3d_dev *v3d = exec->v3d; in v3d_job_timedout() local
176 mutex_lock(&v3d->reset_lock); in v3d_job_timedout()
180 struct drm_gpu_scheduler *sched = &v3d->queue[q].sched; in v3d_job_timedout()
188 v3d_reset(v3d); in v3d_job_timedout()
192 drm_sched_job_recovery(&v3d->queue[q].sched); in v3d_job_timedout()
193 kthread_unpark(v3d->queue[q].sched.thread); in v3d_job_timedout()
196 mutex_unlock(&v3d->reset_lock); in v3d_job_timedout()
207 v3d_sched_init(struct v3d_dev *v3d) in v3d_sched_init() argument
214 ret = drm_sched_init(&v3d->queue[V3D_BIN].sched, in v3d_sched_init()
220 dev_err(v3d->dev, "Failed to create bin scheduler: %d.", ret); in v3d_sched_init()
224 ret = drm_sched_init(&v3d->queue[V3D_RENDER].sched, in v3d_sched_init()
230 dev_err(v3d->dev, "Failed to create render scheduler: %d.", in v3d_sched_init()
232 drm_sched_fini(&v3d->queue[V3D_BIN].sched); in v3d_sched_init()
240 v3d_sched_fini(struct v3d_dev *v3d) in v3d_sched_fini() argument
245 drm_sched_fini(&v3d->queue[q].sched); in v3d_sched_fini()