1 1.1 riastrad /* $NetBSD: igt_spinner.h,v 1.2 2021/12/18 23:45:31 riastradh Exp $ */ 2 1.1 riastrad 3 1.1 riastrad /* 4 1.1 riastrad * SPDX-License-Identifier: MIT 5 1.1 riastrad * 6 1.1 riastrad * Copyright 2018 Intel Corporation 7 1.1 riastrad */ 8 1.1 riastrad 9 1.1 riastrad #ifndef __I915_SELFTESTS_IGT_SPINNER_H__ 10 1.1 riastrad #define __I915_SELFTESTS_IGT_SPINNER_H__ 11 1.1 riastrad 12 1.1 riastrad #include "gem/i915_gem_context.h" 13 1.1 riastrad #include "gt/intel_engine.h" 14 1.1 riastrad 15 1.1 riastrad #include "i915_drv.h" 16 1.1 riastrad #include "i915_request.h" 17 1.1 riastrad #include "i915_selftest.h" 18 1.1 riastrad 19 1.1 riastrad struct intel_gt; 20 1.1 riastrad 21 1.1 riastrad struct igt_spinner { 22 1.1 riastrad struct intel_gt *gt; 23 1.1 riastrad struct drm_i915_gem_object *hws; 24 1.1 riastrad struct drm_i915_gem_object *obj; 25 1.1 riastrad u32 *batch; 26 1.1 riastrad void *seqno; 27 1.1 riastrad }; 28 1.1 riastrad 29 1.1 riastrad int igt_spinner_init(struct igt_spinner *spin, struct intel_gt *gt); 30 1.1 riastrad void igt_spinner_fini(struct igt_spinner *spin); 31 1.1 riastrad 32 1.1 riastrad struct i915_request * 33 1.1 riastrad igt_spinner_create_request(struct igt_spinner *spin, 34 1.1 riastrad struct intel_context *ce, 35 1.1 riastrad u32 arbitration_command); 36 1.1 riastrad void igt_spinner_end(struct igt_spinner *spin); 37 1.1 riastrad 38 1.1 riastrad bool igt_wait_for_spinner(struct igt_spinner *spin, struct i915_request *rq); 39 1.1 riastrad 40 1.1 riastrad #endif 41