Merge tag 'drm-misc-next-2021-10-14' of git://anongit.freedesktop.org/drm/drm-misc...
[linux-2.6-microblaze.git] / drivers / gpu / drm / i915 / selftests / intel_scheduler_helpers.h
1 /* SPDX-License-Identifier: MIT */
2 /*
3  * Copyright © 2021 Intel Corporation
4  */
5
6 #ifndef _INTEL_SELFTEST_SCHEDULER_HELPERS_H_
7 #define _INTEL_SELFTEST_SCHEDULER_HELPERS_H_
8
9 #include <linux/types.h>
10
11 struct i915_request;
12 struct intel_engine_cs;
13 struct intel_gt;
14
15 struct intel_selftest_saved_policy {
16         u32 flags;
17         u32 reset;
18         u64 timeslice;
19         u64 preempt_timeout;
20 };
21
22 enum selftest_scheduler_modify {
23         SELFTEST_SCHEDULER_MODIFY_NO_HANGCHECK = 0,
24         SELFTEST_SCHEDULER_MODIFY_FAST_RESET,
25 };
26
27 struct intel_engine_cs *intel_selftest_find_any_engine(struct intel_gt *gt);
28 int intel_selftest_modify_policy(struct intel_engine_cs *engine,
29                                  struct intel_selftest_saved_policy *saved,
30                                  enum selftest_scheduler_modify modify_type);
31 int intel_selftest_restore_policy(struct intel_engine_cs *engine,
32                                   struct intel_selftest_saved_policy *saved);
33 int intel_selftest_wait_for_rq(struct i915_request *rq);
34
35 #endif