Linux-libre 5.3.12-gnu
[librecmc/linux-libre.git] / drivers / gpu / drm / i915 / selftests / igt_live_test.h
1 /*
2  * SPDX-License-Identifier: MIT
3  *
4  * Copyright © 2019 Intel Corporation
5  */
6
7 #ifndef IGT_LIVE_TEST_H
8 #define IGT_LIVE_TEST_H
9
10 #include "../i915_gem.h"
11
12 struct drm_i915_private;
13
14 struct igt_live_test {
15         struct drm_i915_private *i915;
16         const char *func;
17         const char *name;
18
19         unsigned int reset_global;
20         unsigned int reset_engine[I915_NUM_ENGINES];
21 };
22
23 /*
24  * Flush the GPU state before and after the test to ensure that no residual
25  * code is running on the GPU that may affect this test. Also compare the
26  * state before and after the test and alert if it unexpectedly changes,
27  * e.g. if the GPU was reset.
28  */
29 int igt_live_test_begin(struct igt_live_test *t,
30                         struct drm_i915_private *i915,
31                         const char *func,
32                         const char *name);
33 int igt_live_test_end(struct igt_live_test *t);
34
35 #endif /* IGT_LIVE_TEST_H */