Home
last modified time | relevance | path

Searched refs:sched_job (Results 1 - 25 of 27) sorted by relevance

12

/kernel/linux/linux-5.10/drivers/gpu/drm/v3d/
H A Dv3d_sched.c28 to_v3d_job(struct drm_sched_job *sched_job) in to_v3d_job() argument
30 return container_of(sched_job, struct v3d_job, base); in to_v3d_job()
34 to_bin_job(struct drm_sched_job *sched_job) in to_bin_job() argument
36 return container_of(sched_job, struct v3d_bin_job, base.base); in to_bin_job()
40 to_render_job(struct drm_sched_job *sched_job) in to_render_job() argument
42 return container_of(sched_job, struct v3d_render_job, base.base); in to_render_job()
46 to_tfu_job(struct drm_sched_job *sched_job) in to_tfu_job() argument
48 return container_of(sched_job, struct v3d_tfu_job, base.base); in to_tfu_job()
52 to_csd_job(struct drm_sched_job *sched_job) in to_csd_job() argument
54 return container_of(sched_job, struc in to_csd_job()
58 v3d_job_free(struct drm_sched_job *sched_job) v3d_job_free() argument
73 v3d_job_dependency(struct drm_sched_job *sched_job, struct drm_sched_entity *s_entity) v3d_job_dependency() argument
88 v3d_bin_job_run(struct drm_sched_job *sched_job) v3d_bin_job_run() argument
141 v3d_render_job_run(struct drm_sched_job *sched_job) v3d_render_job_run() argument
184 v3d_tfu_job_run(struct drm_sched_job *sched_job) v3d_tfu_job_run() argument
221 v3d_csd_job_run(struct drm_sched_job *sched_job) v3d_csd_job_run() argument
252 v3d_cache_clean_job_run(struct drm_sched_job *sched_job) v3d_cache_clean_job_run() argument
263 v3d_gpu_reset_for_timeout(struct v3d_dev *v3d, struct drm_sched_job *sched_job) v3d_gpu_reset_for_timeout() argument
296 v3d_cl_job_timedout(struct drm_sched_job *sched_job, enum v3d_queue q, u32 *timedout_ctca, u32 *timedout_ctra) v3d_cl_job_timedout() argument
314 v3d_bin_job_timedout(struct drm_sched_job *sched_job) v3d_bin_job_timedout() argument
323 v3d_render_job_timedout(struct drm_sched_job *sched_job) v3d_render_job_timedout() argument
332 v3d_generic_job_timedout(struct drm_sched_job *sched_job) v3d_generic_job_timedout() argument
340 v3d_csd_job_timedout(struct drm_sched_job *sched_job) v3d_csd_job_timedout() argument
[all...]
/kernel/linux/linux-6.6/drivers/gpu/drm/v3d/
H A Dv3d_sched.c28 to_v3d_job(struct drm_sched_job *sched_job) in to_v3d_job() argument
30 return container_of(sched_job, struct v3d_job, base); in to_v3d_job()
34 to_bin_job(struct drm_sched_job *sched_job) in to_bin_job() argument
36 return container_of(sched_job, struct v3d_bin_job, base.base); in to_bin_job()
40 to_render_job(struct drm_sched_job *sched_job) in to_render_job() argument
42 return container_of(sched_job, struct v3d_render_job, base.base); in to_render_job()
46 to_tfu_job(struct drm_sched_job *sched_job) in to_tfu_job() argument
48 return container_of(sched_job, struct v3d_tfu_job, base.base); in to_tfu_job()
52 to_csd_job(struct drm_sched_job *sched_job) in to_csd_job() argument
54 return container_of(sched_job, struc in to_csd_job()
58 v3d_sched_job_free(struct drm_sched_job *sched_job) v3d_sched_job_free() argument
75 v3d_bin_job_run(struct drm_sched_job *sched_job) v3d_bin_job_run() argument
130 v3d_render_job_run(struct drm_sched_job *sched_job) v3d_render_job_run() argument
175 v3d_tfu_job_run(struct drm_sched_job *sched_job) v3d_tfu_job_run() argument
212 v3d_csd_job_run(struct drm_sched_job *sched_job) v3d_csd_job_run() argument
245 v3d_cache_clean_job_run(struct drm_sched_job *sched_job) v3d_cache_clean_job_run() argument
256 v3d_gpu_reset_for_timeout(struct v3d_dev *v3d, struct drm_sched_job *sched_job) v3d_gpu_reset_for_timeout() argument
291 v3d_cl_job_timedout(struct drm_sched_job *sched_job, enum v3d_queue q, u32 *timedout_ctca, u32 *timedout_ctra) v3d_cl_job_timedout() argument
309 v3d_bin_job_timedout(struct drm_sched_job *sched_job) v3d_bin_job_timedout() argument
318 v3d_render_job_timedout(struct drm_sched_job *sched_job) v3d_render_job_timedout() argument
327 v3d_generic_job_timedout(struct drm_sched_job *sched_job) v3d_generic_job_timedout() argument
335 v3d_csd_job_timedout(struct drm_sched_job *sched_job) v3d_csd_job_timedout() argument
[all...]
/kernel/linux/linux-5.10/drivers/gpu/drm/scheduler/
H A Dgpu_scheduler_trace.h36 TP_PROTO(struct drm_sched_job *sched_job, struct drm_sched_entity *entity),
37 TP_ARGS(sched_job, entity),
49 __entry->id = sched_job->id;
50 __entry->fence = &sched_job->s_fence->finished;
51 __entry->name = sched_job->sched->name;
54 &sched_job->sched->hw_rq_count);
63 TP_PROTO(struct drm_sched_job *sched_job, struct drm_sched_entity *entity),
64 TP_ARGS(sched_job, entity),
76 __entry->id = sched_job->id;
77 __entry->fence = &sched_job
[all...]
H A Dsched_entity.c33 #define to_drm_sched_job(sched_job) \
34 container_of((sched_job), struct drm_sched_job, queue_node)
420 struct drm_sched_job *sched_job; in drm_sched_entity_pop_job() local
422 sched_job = to_drm_sched_job(spsc_queue_peek(&entity->job_queue)); in drm_sched_entity_pop_job()
423 if (!sched_job) in drm_sched_entity_pop_job()
427 sched->ops->dependency(sched_job, entity))) { in drm_sched_entity_pop_job()
428 trace_drm_sched_job_wait_dep(sched_job, entity->dependency); in drm_sched_entity_pop_job()
436 dma_fence_set_error(&sched_job->s_fence->finished, -ECANCELED); in drm_sched_entity_pop_job()
439 entity->last_scheduled = dma_fence_get(&sched_job->s_fence->finished); in drm_sched_entity_pop_job()
442 return sched_job; in drm_sched_entity_pop_job()
489 drm_sched_entity_push_job(struct drm_sched_job *sched_job, struct drm_sched_entity *entity) drm_sched_entity_push_job() argument
[all...]
H A Dsched_main.c60 #define to_drm_sched_job(sched_job) \
61 container_of((sched_job), struct drm_sched_job, queue_node)
773 struct drm_sched_job *sched_job; in drm_sched_main() local
792 sched_job = drm_sched_entity_pop_job(entity); in drm_sched_main()
796 if (!sched_job) in drm_sched_main()
799 s_fence = sched_job->s_fence; in drm_sched_main()
802 drm_sched_job_begin(sched_job); in drm_sched_main()
804 trace_drm_run_job(sched_job, entity); in drm_sched_main()
805 fence = sched->ops->run_job(sched_job); in drm_sched_main()
810 r = dma_fence_add_callback(fence, &sched_job in drm_sched_main()
[all...]
/kernel/linux/linux-6.6/drivers/gpu/drm/scheduler/
H A Dgpu_scheduler_trace.h36 TP_PROTO(struct drm_sched_job *sched_job, struct drm_sched_entity *entity),
37 TP_ARGS(sched_job, entity),
41 __string(name, sched_job->sched->name)
49 __entry->id = sched_job->id;
50 __entry->fence = &sched_job->s_fence->finished;
51 __assign_str(name, sched_job->sched->name);
54 &sched_job->sched->hw_rq_count);
63 TP_PROTO(struct drm_sched_job *sched_job, struct drm_sched_entity *entity),
64 TP_ARGS(sched_job, entity)
68 TP_PROTO(struct drm_sched_job *sched_job, struc
[all...]
H A Dsched_entity.c33 #define to_drm_sched_job(sched_job) \
34 container_of((sched_job), struct drm_sched_job, queue_node)
454 struct drm_sched_job *sched_job; in drm_sched_entity_pop_job() local
456 sched_job = to_drm_sched_job(spsc_queue_peek(&entity->job_queue)); in drm_sched_entity_pop_job()
457 if (!sched_job) in drm_sched_entity_pop_job()
461 drm_sched_job_dependency(sched_job, entity))) { in drm_sched_entity_pop_job()
462 trace_drm_sched_job_wait_dep(sched_job, entity->dependency); in drm_sched_entity_pop_job()
470 dma_fence_set_error(&sched_job->s_fence->finished, -ECANCELED); in drm_sched_entity_pop_job()
474 dma_fence_get(&sched_job->s_fence->finished)); in drm_sched_entity_pop_job()
501 sched_job in drm_sched_entity_pop_job()
558 drm_sched_entity_push_job(struct drm_sched_job *sched_job) drm_sched_entity_push_job() argument
[all...]
H A Dsched_main.c67 #define to_drm_sched_job(sched_job) \
68 container_of((sched_job), struct drm_sched_job, queue_node)
1015 struct drm_sched_job *sched_job; in drm_sched_main() local
1031 sched_job = drm_sched_entity_pop_job(entity); in drm_sched_main()
1033 if (!sched_job) { in drm_sched_main()
1038 s_fence = sched_job->s_fence; in drm_sched_main()
1041 drm_sched_job_begin(sched_job); in drm_sched_main()
1043 trace_drm_run_job(sched_job, entity); in drm_sched_main()
1044 fence = sched->ops->run_job(sched_job); in drm_sched_main()
1052 r = dma_fence_add_callback(fence, &sched_job in drm_sched_main()
[all...]
/kernel/linux/linux-6.6/drivers/gpu/drm/etnaviv/
H A Detnaviv_sched.c20 static struct dma_fence *etnaviv_sched_run_job(struct drm_sched_job *sched_job) in etnaviv_sched_run_job() argument
22 struct etnaviv_gem_submit *submit = to_etnaviv_submit(sched_job); in etnaviv_sched_run_job()
25 if (likely(!sched_job->s_fence->finished.error)) in etnaviv_sched_run_job()
34 *sched_job) in etnaviv_sched_timedout_job()
36 struct etnaviv_gem_submit *submit = to_etnaviv_submit(sched_job); in etnaviv_sched_timedout_job()
42 drm_sched_stop(&gpu->sched, sched_job); in etnaviv_sched_timedout_job()
66 if(sched_job) in etnaviv_sched_timedout_job()
67 drm_sched_increase_karma(sched_job); in etnaviv_sched_timedout_job()
84 static void etnaviv_sched_free_job(struct drm_sched_job *sched_job) in etnaviv_sched_free_job() argument
86 struct etnaviv_gem_submit *submit = to_etnaviv_submit(sched_job); in etnaviv_sched_free_job()
33 etnaviv_sched_timedout_job(struct drm_sched_job *sched_job) etnaviv_sched_timedout_job() argument
[all...]
H A Detnaviv_sched.h14 struct etnaviv_gem_submit *to_etnaviv_submit(struct drm_sched_job *sched_job) in to_etnaviv_submit() argument
16 return container_of(sched_job, struct etnaviv_gem_submit, sched_job); in to_etnaviv_submit()
H A Detnaviv_gem_submit.c189 ret = drm_sched_job_add_implicit_dependencies(&submit->sched_job, in submit_fence_sync()
536 ret = drm_sched_job_init(&submit->sched_job, in etnaviv_ioctl_gem_submit()
560 ret = drm_sched_job_add_dependency(&submit->sched_job, in etnaviv_ioctl_gem_submit()
608 * the sched_job must not be cleaned up. in etnaviv_ioctl_gem_submit()
620 drm_sched_job_cleanup(&submit->sched_job); in etnaviv_ioctl_gem_submit()
/kernel/linux/linux-5.10/drivers/gpu/drm/etnaviv/
H A Detnaviv_sched.c21 etnaviv_sched_dependency(struct drm_sched_job *sched_job, in etnaviv_sched_dependency() argument
24 struct etnaviv_gem_submit *submit = to_etnaviv_submit(sched_job); in etnaviv_sched_dependency()
72 static struct dma_fence *etnaviv_sched_run_job(struct drm_sched_job *sched_job) in etnaviv_sched_run_job() argument
74 struct etnaviv_gem_submit *submit = to_etnaviv_submit(sched_job); in etnaviv_sched_run_job()
77 if (likely(!sched_job->s_fence->finished.error)) in etnaviv_sched_run_job()
85 static void etnaviv_sched_timedout_job(struct drm_sched_job *sched_job) in etnaviv_sched_timedout_job() argument
87 struct etnaviv_gem_submit *submit = to_etnaviv_submit(sched_job); in etnaviv_sched_timedout_job()
93 drm_sched_stop(&gpu->sched, sched_job); in etnaviv_sched_timedout_job()
116 if(sched_job) in etnaviv_sched_timedout_job()
117 drm_sched_increase_karma(sched_job); in etnaviv_sched_timedout_job()
130 etnaviv_sched_free_job(struct drm_sched_job *sched_job) etnaviv_sched_free_job() argument
[all...]
H A Detnaviv_sched.h14 struct etnaviv_gem_submit *to_etnaviv_submit(struct drm_sched_job *sched_job) in to_etnaviv_submit() argument
16 return container_of(sched_job, struct etnaviv_gem_submit, sched_job); in to_etnaviv_submit()
/kernel/linux/linux-5.10/include/drm/
H A Dgpu_scheduler.h221 struct dma_fence *(*dependency)(struct drm_sched_job *sched_job,
230 struct dma_fence *(*run_job)(struct drm_sched_job *sched_job);
236 void (*timedout_job)(struct drm_sched_job *sched_job);
242 void (*free_job)(struct drm_sched_job *sched_job);
332 void drm_sched_entity_push_job(struct drm_sched_job *sched_job,
/kernel/linux/linux-5.10/drivers/gpu/drm/panfrost/
H A Dpanfrost_job.c49 to_panfrost_job(struct drm_sched_job *sched_job) in to_panfrost_job() argument
51 return container_of(sched_job, struct panfrost_job, base); in to_panfrost_job()
307 static void panfrost_job_free(struct drm_sched_job *sched_job) in panfrost_job_free() argument
309 struct panfrost_job *job = to_panfrost_job(sched_job); in panfrost_job_free()
311 drm_sched_job_cleanup(sched_job); in panfrost_job_free()
316 static struct dma_fence *panfrost_job_dependency(struct drm_sched_job *sched_job, in panfrost_job_dependency() argument
319 struct panfrost_job *job = to_panfrost_job(sched_job); in panfrost_job_dependency()
344 static struct dma_fence *panfrost_job_run(struct drm_sched_job *sched_job) in panfrost_job_run() argument
346 struct panfrost_job *job = to_panfrost_job(sched_job); in panfrost_job_run()
435 static void panfrost_job_timedout(struct drm_sched_job *sched_job) in panfrost_job_timedout() argument
[all...]
/kernel/linux/linux-5.10/drivers/gpu/drm/amd/amdgpu/
H A Damdgpu_job.c180 static struct dma_fence *amdgpu_job_dependency(struct drm_sched_job *sched_job, in amdgpu_job_dependency() argument
184 struct amdgpu_job *job = to_amdgpu_job(sched_job); in amdgpu_job_dependency()
209 static struct dma_fence *amdgpu_job_run(struct drm_sched_job *sched_job) in amdgpu_job_run() argument
211 struct amdgpu_ring *ring = to_amdgpu_ring(sched_job->sched); in amdgpu_job_run()
216 job = to_amdgpu_job(sched_job); in amdgpu_job_run()
244 #define to_drm_sched_job(sched_job) \
245 container_of((sched_job), struct drm_sched_job, queue_node)
H A Damdgpu_job.h35 #define to_amdgpu_job(sched_job) \
36 container_of((sched_job), struct amdgpu_job, base)
H A Damdgpu_trace.h185 TP_printk("sched_job=%llu, timeline=%s, context=%u, seqno=%u, ring_name=%s, num_ibs=%u",
210 TP_printk("sched_job=%llu, timeline=%s, context=%u, seqno=%u, ring_name=%s, num_ibs=%u",
516 TP_PROTO(struct amdgpu_job *sched_job, struct dma_fence *fence),
517 TP_ARGS(sched_job, fence),
519 __string(ring, sched_job->base.sched->name)
527 __assign_str(ring, sched_job->base.sched->name)
528 __entry->id = sched_job->base.id;
/kernel/linux/linux-6.6/drivers/gpu/drm/amd/amdgpu/
H A Damdgpu_job.c253 amdgpu_job_prepare_job(struct drm_sched_job *sched_job, in amdgpu_job_prepare_job() argument
257 struct amdgpu_job *job = to_amdgpu_job(sched_job); in amdgpu_job_prepare_job()
284 static struct dma_fence *amdgpu_job_run(struct drm_sched_job *sched_job) in amdgpu_job_run() argument
286 struct amdgpu_ring *ring = to_amdgpu_ring(sched_job->sched); in amdgpu_job_run()
292 job = to_amdgpu_job(sched_job); in amdgpu_job_run()
318 #define to_drm_sched_job(sched_job) \
319 container_of((sched_job), struct drm_sched_job, queue_node)
H A Damdgpu_job.h39 #define to_amdgpu_job(sched_job) \
40 container_of((sched_job), struct amdgpu_job, base)
H A Damdgpu_trace.h187 TP_printk("sched_job=%llu, timeline=%s, context=%u, seqno=%u, ring_name=%s, num_ibs=%u",
212 TP_printk("sched_job=%llu, timeline=%s, context=%u, seqno=%u, ring_name=%s, num_ibs=%u",
518 TP_PROTO(struct amdgpu_job *sched_job, struct dma_fence *fence),
519 TP_ARGS(sched_job, fence),
521 __string(ring, sched_job->base.sched->name)
529 __assign_str(ring, sched_job->base.sched->name);
530 __entry->id = sched_job->base.id;
/kernel/linux/linux-6.6/include/drm/
H A Dgpu_scheduler.h405 struct dma_fence *(*prepare_job)(struct drm_sched_job *sched_job,
414 struct dma_fence *(*run_job)(struct drm_sched_job *sched_job);
458 enum drm_gpu_sched_stat (*timedout_job)(struct drm_sched_job *sched_job);
464 void (*free_job)(struct drm_sched_job *sched_job);
579 void drm_sched_entity_push_job(struct drm_sched_job *sched_job);
/kernel/linux/linux-6.6/drivers/gpu/drm/nouveau/
H A Dnouveau_sched.c368 nouveau_sched_run_job(struct drm_sched_job *sched_job) in nouveau_sched_run_job() argument
370 struct nouveau_job *job = to_nouveau_job(sched_job); in nouveau_sched_run_job()
376 nouveau_sched_timedout_job(struct drm_sched_job *sched_job) in nouveau_sched_timedout_job() argument
378 struct drm_gpu_scheduler *sched = sched_job->sched; in nouveau_sched_timedout_job()
379 struct nouveau_job *job = to_nouveau_job(sched_job); in nouveau_sched_timedout_job()
382 drm_sched_stop(sched, sched_job); in nouveau_sched_timedout_job()
395 nouveau_sched_free_job(struct drm_sched_job *sched_job) in nouveau_sched_free_job() argument
397 struct nouveau_job *job = to_nouveau_job(sched_job); in nouveau_sched_free_job()
H A Dnouveau_sched.h13 #define to_nouveau_job(sched_job) \
14 container_of((sched_job), struct nouveau_job, base)
/kernel/linux/linux-6.6/drivers/gpu/drm/panfrost/
H A Dpanfrost_job.c43 to_panfrost_job(struct drm_sched_job *sched_job) in to_panfrost_job() argument
45 return container_of(sched_job, struct panfrost_job, base); in to_panfrost_job()
348 static void panfrost_job_free(struct drm_sched_job *sched_job) in panfrost_job_free() argument
350 struct panfrost_job *job = to_panfrost_job(sched_job); in panfrost_job_free()
352 drm_sched_job_cleanup(sched_job); in panfrost_job_free()
357 static struct dma_fence *panfrost_job_run(struct drm_sched_job *sched_job) in panfrost_job_run() argument
359 struct panfrost_job *job = to_panfrost_job(sched_job); in panfrost_job_run()
710 *sched_job) in panfrost_job_timedout()
712 struct panfrost_job *job = to_panfrost_job(sched_job); in panfrost_job_timedout()
739 dev_err(pfdev->dev, "gpu sched timeout, js=%d, config=0x%x, status=0x%x, head=0x%x, tail=0x%x, sched_job in panfrost_job_timedout()
709 panfrost_job_timedout(struct drm_sched_job *sched_job) panfrost_job_timedout() argument
[all...]

Completed in 26 milliseconds

12