Lines Matching full:engine
9 static struct i915_vma *create_wally(struct intel_engine_cs *engine) in create_wally() argument
16 obj = i915_gem_object_create_internal(engine->i915, 4096); in create_wally()
20 vma = i915_vma_instance(obj, engine->gt->vm, NULL); in create_wally()
44 if (GRAPHICS_VER(engine->i915) >= 6) { in create_wally()
47 } else if (GRAPHICS_VER(engine->i915) >= 4) { in create_wally()
61 vma->private = intel_context_create(engine); /* dummy residuals */ in create_wally()
89 static int new_context_sync(struct intel_engine_cs *engine) in new_context_sync() argument
94 ce = intel_context_create(engine); in new_context_sync()
104 static int mixed_contexts_sync(struct intel_engine_cs *engine, u32 *result) in mixed_contexts_sync() argument
111 err = context_sync(engine->kernel_context); in mixed_contexts_sync()
122 err = new_context_sync(engine); in mixed_contexts_sync()
133 err = new_context_sync(engine); in mixed_contexts_sync()
147 static int double_context_sync_00(struct intel_engine_cs *engine, u32 *result) in double_context_sync_00() argument
152 ce = intel_context_create(engine); in double_context_sync_00()
174 static int kernel_context_sync_00(struct intel_engine_cs *engine, u32 *result) in kernel_context_sync_00() argument
179 ce = intel_context_create(engine); in kernel_context_sync_00()
189 err = context_sync(engine->kernel_context); in kernel_context_sync_00()
205 static int __live_ctx_switch_wa(struct intel_engine_cs *engine) in __live_ctx_switch_wa() argument
211 bb = create_wally(engine); in __live_ctx_switch_wa()
223 engine->wa_ctx.vma = bb; in __live_ctx_switch_wa()
225 err = mixed_contexts_sync(engine, result); in __live_ctx_switch_wa()
229 err = double_context_sync_00(engine, result); in __live_ctx_switch_wa()
233 err = kernel_context_sync_00(engine, result); in __live_ctx_switch_wa()
238 intel_context_put(engine->wa_ctx.vma->private); in __live_ctx_switch_wa()
239 i915_vma_unpin_and_release(&engine->wa_ctx.vma, I915_VMA_RELEASE_MAP); in __live_ctx_switch_wa()
246 struct intel_engine_cs *engine; in live_ctx_switch_wa() local
262 for_each_engine(engine, gt, id) { in live_ctx_switch_wa()
266 if (!intel_engine_can_store_dword(engine)) in live_ctx_switch_wa()
272 saved_wa = fetch_and_zero(&engine->wa_ctx.vma); in live_ctx_switch_wa()
274 intel_engine_pm_get(engine); in live_ctx_switch_wa()
275 err = __live_ctx_switch_wa(engine); in live_ctx_switch_wa()
276 intel_engine_pm_put(engine); in live_ctx_switch_wa()
280 engine->wa_ctx.vma = saved_wa; in live_ctx_switch_wa()