1 /* SPDX-License-Identifier: MIT */ 2 /* 3 * Copyright © 2014 Intel Corporation 4 */ 5 6 #ifndef __INTEL_EXECLISTS_SUBMISSION_H__ 7 #define __INTEL_EXECLISTS_SUBMISSION_H__ 8 9 #include <linux/llist.h> 10 #include <linux/types.h> 11 12 struct drm_printer; 13 14 struct i915_request; 15 struct intel_context; 16 struct intel_engine_cs; 17 struct intel_gt; 18 19 enum { 20 INTEL_CONTEXT_SCHEDULE_IN = 0, 21 INTEL_CONTEXT_SCHEDULE_OUT, 22 INTEL_CONTEXT_SCHEDULE_PREEMPTED, 23 }; 24 25 int intel_execlists_submission_setup(struct intel_engine_cs *engine); 26 27 void intel_execlists_show_requests(struct intel_engine_cs *engine, 28 struct drm_printer *m, 29 void (*show_request)(struct drm_printer *m, 30 const struct i915_request *rq, 31 const char *prefix, 32 int indent), 33 unsigned int max); 34 35 void intel_execlists_dump_active_requests(struct intel_engine_cs *engine, 36 struct i915_request *hung_rq, 37 struct drm_printer *m); 38 39 bool 40 intel_engine_in_execlists_submission_mode(const struct intel_engine_cs *engine); 41 42 #endif /* __INTEL_EXECLISTS_SUBMISSION_H__ */ 43