#include "xe_gpu_scheduler.h"
static void xe_sched_process_msg_queue(struct xe_gpu_scheduler *sched)
{ … }
static void xe_sched_process_msg_queue_if_ready(struct xe_gpu_scheduler *sched)
{ … }
static struct xe_sched_msg *
xe_sched_get_msg(struct xe_gpu_scheduler *sched)
{ … }
static void xe_sched_process_msg_work(struct work_struct *w)
{ … }
int xe_sched_init(struct xe_gpu_scheduler *sched,
const struct drm_sched_backend_ops *ops,
const struct xe_sched_backend_ops *xe_ops,
struct workqueue_struct *submit_wq,
uint32_t hw_submission, unsigned hang_limit,
long timeout, struct workqueue_struct *timeout_wq,
atomic_t *score, const char *name,
struct device *dev)
{ … }
void xe_sched_fini(struct xe_gpu_scheduler *sched)
{ … }
void xe_sched_submission_start(struct xe_gpu_scheduler *sched)
{ … }
void xe_sched_submission_stop(struct xe_gpu_scheduler *sched)
{ … }
void xe_sched_add_msg(struct xe_gpu_scheduler *sched,
struct xe_sched_msg *msg)
{ … }