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 "gt/intel_gt_defines.h" /* for I915_MAX_GT */ 11 #include "gt/intel_engine.h" /* for I915_NUM_ENGINES */ 12 13 struct drm_i915_private; 14 15 struct igt_live_test { 16 struct drm_i915_private *i915; 17 const char *func; 18 const char *name; 19 20 unsigned int reset_global; 21 unsigned int reset_engine[I915_MAX_GT][I915_NUM_ENGINES]; 22 }; 23 24 /* 25 * Flush the GPU state before and after the test to ensure that no residual 26 * code is running on the GPU that may affect this test. Also compare the 27 * state before and after the test and alert if it unexpectedly changes, 28 * e.g. if the GPU was reset. 29 */ 30 int igt_live_test_begin(struct igt_live_test *t, 31 struct drm_i915_private *i915, 32 const char *func, 33 const char *name); 34 int igt_live_test_end(struct igt_live_test *t); 35 36 #endif /* IGT_LIVE_TEST_H */ 37