Lines Matching full:scheduler

38  * Setting this flag on a scheduler fence prevents pipelining of jobs depending
79 * ring, and the scheduler will alternate between entities based on
116 * be scheduled on any scheduler on this list.
241 * @sched: the scheduler to which this rq belongs to.
266 * @scheduled: this fence is what will be signaled by the scheduler
272 * @finished: this fence is what will be signaled by the scheduler
296 * @sched: the scheduler instance to which the job having this struct
324 * @sched: the scheduler instance on which this job is scheduled.
327 * @credits: the number of credits this job contributes to the scheduler
330 * limit of the scheduler then the job is marked guilty and will not
337 * should call drm_sched_entity_push_job() once it wants the scheduler
351 * The scheduler this job is or will be scheduled on. Gets set by
391 * enum drm_gpu_sched_stat - the scheduler's status
396 * @DRM_GPU_SCHED_STAT_NO_HANG: Contrary to scheduler's assumption, the GPU
408 * called by the scheduler
416 * Called when the scheduler is considering scheduling this job next, to
444 * driver passed NULL, a separate, ordered workqueue the scheduler
447 * Note that the scheduler expects to 'inherit' its own reference to
450 * reference for the scheduler, and additional ones for the driver's
468 * or a hardware scheduler is being used.
470 * For a FIRMWARE SCHEDULER, each ring has one scheduler, and each
471 * scheduler has one entity. Hence, the steps taken typically look as
474 * 1. Stop the scheduler using drm_sched_stop(). This will pause the
475 * scheduler workqueues and cancel the timeout work, guaranteeing
480 * 3. Kill the entity and the associated scheduler.
483 * For a HARDWARE SCHEDULER, a scheduler instance schedules jobs from
485 * associated with the affected scheduler cannot be torn down, because
489 * Consequently, the procedure to recover with a hardware scheduler
508 * Return: The scheduler's status, defined by &enum drm_gpu_sched_stat
520 * @cancel_job: Used by the scheduler to guarantee remaining jobs' fences
523 * Used by the scheduler to cancel all jobs that have not been executed
531 * The scheduler will only call this callback once it stopped calling
539 * struct drm_gpu_scheduler - scheduler instance-specific data
542 * @credit_limit: the credit limit of this scheduler
543 * @credit_count: the current credit count of this scheduler
544 * @timeout: the time after which a job is removed from the scheduler.
545 * @name: name of the ring for which this scheduler is being used.
549 * @job_scheduled: once @drm_sched_entity_do_release is called the scheduler
555 * @work_run_job: work which calls run_job op of each scheduler.
556 * @work_free_job: work which calls free_job op of each scheduler.
568 * @own_submit_wq: scheduler owns allocation of @submit_wq
571 * One scheduler is implemented for each hardware ring.
601 * struct drm_sched_init_args - parameters for initializing a DRM GPU scheduler
608 * @credit_limit: the number of credits this scheduler can hold from all jobs
630 /* Scheduler operations */