xref: /linux/drivers/gpu/drm/i915/gt/gen6_engine_cs.h (revision 4b4193256c8d3bc3a5397b5cd9494c2ad386317d)
1*c1f85878SChris Wilson /* SPDX-License-Identifier: MIT */
2*c1f85878SChris Wilson /*
3*c1f85878SChris Wilson  * Copyright © 2020 Intel Corporation
4*c1f85878SChris Wilson  */
5*c1f85878SChris Wilson 
6*c1f85878SChris Wilson #ifndef __GEN6_ENGINE_CS_H__
7*c1f85878SChris Wilson #define __GEN6_ENGINE_CS_H__
8*c1f85878SChris Wilson 
9*c1f85878SChris Wilson #include <linux/types.h>
10*c1f85878SChris Wilson 
11*c1f85878SChris Wilson #include "intel_gpu_commands.h"
12*c1f85878SChris Wilson 
13*c1f85878SChris Wilson struct i915_request;
14*c1f85878SChris Wilson struct intel_engine_cs;
15*c1f85878SChris Wilson 
16*c1f85878SChris Wilson int gen6_emit_flush_rcs(struct i915_request *rq, u32 mode);
17*c1f85878SChris Wilson int gen6_emit_flush_vcs(struct i915_request *rq, u32 mode);
18*c1f85878SChris Wilson int gen6_emit_flush_xcs(struct i915_request *rq, u32 mode);
19*c1f85878SChris Wilson u32 *gen6_emit_breadcrumb_rcs(struct i915_request *rq, u32 *cs);
20*c1f85878SChris Wilson u32 *gen6_emit_breadcrumb_xcs(struct i915_request *rq, u32 *cs);
21*c1f85878SChris Wilson 
22*c1f85878SChris Wilson int gen7_emit_flush_rcs(struct i915_request *rq, u32 mode);
23*c1f85878SChris Wilson u32 *gen7_emit_breadcrumb_rcs(struct i915_request *rq, u32 *cs);
24*c1f85878SChris Wilson u32 *gen7_emit_breadcrumb_xcs(struct i915_request *rq, u32 *cs);
25*c1f85878SChris Wilson 
26*c1f85878SChris Wilson int gen6_emit_bb_start(struct i915_request *rq,
27*c1f85878SChris Wilson 		       u64 offset, u32 len,
28*c1f85878SChris Wilson 		       unsigned int dispatch_flags);
29*c1f85878SChris Wilson int hsw_emit_bb_start(struct i915_request *rq,
30*c1f85878SChris Wilson 		      u64 offset, u32 len,
31*c1f85878SChris Wilson 		      unsigned int dispatch_flags);
32*c1f85878SChris Wilson 
33*c1f85878SChris Wilson void gen6_irq_enable(struct intel_engine_cs *engine);
34*c1f85878SChris Wilson void gen6_irq_disable(struct intel_engine_cs *engine);
35*c1f85878SChris Wilson 
36*c1f85878SChris Wilson void hsw_irq_enable_vecs(struct intel_engine_cs *engine);
37*c1f85878SChris Wilson void hsw_irq_disable_vecs(struct intel_engine_cs *engine);
38*c1f85878SChris Wilson 
39*c1f85878SChris Wilson #endif /* __GEN6_ENGINE_CS_H__ */
40