0001
0002
0003
0004
0005
0006 #ifndef __INTEL_EXECLISTS_SUBMISSION_H__
0007 #define __INTEL_EXECLISTS_SUBMISSION_H__
0008
0009 #include <linux/llist.h>
0010 #include <linux/types.h>
0011
0012 struct drm_printer;
0013
0014 struct i915_request;
0015 struct intel_context;
0016 struct intel_engine_cs;
0017 struct intel_gt;
0018
0019 enum {
0020 INTEL_CONTEXT_SCHEDULE_IN = 0,
0021 INTEL_CONTEXT_SCHEDULE_OUT,
0022 INTEL_CONTEXT_SCHEDULE_PREEMPTED,
0023 };
0024
0025 int intel_execlists_submission_setup(struct intel_engine_cs *engine);
0026
0027 void intel_execlists_show_requests(struct intel_engine_cs *engine,
0028 struct drm_printer *m,
0029 void (*show_request)(struct drm_printer *m,
0030 const struct i915_request *rq,
0031 const char *prefix,
0032 int indent),
0033 unsigned int max);
0034
0035 bool
0036 intel_engine_in_execlists_submission_mode(const struct intel_engine_cs *engine);
0037
0038 #endif