Lines Matching full:engine
75 static int __live_context_size(struct intel_engine_cs *engine) in __live_context_size() argument
82 ce = intel_context_create(engine); in __live_context_size()
91 intel_gt_coherent_map_type(engine->gt, in __live_context_size()
112 vaddr += engine->context_size - I915_GTT_PAGE_SIZE; in __live_context_size()
127 rq = intel_engine_create_kernel_request(engine); in __live_context_size()
137 pr_err("%s context overwrote trailing red-zone!", engine->name); in __live_context_size()
151 struct intel_engine_cs *engine; in live_context_size() local
160 for_each_engine(engine, gt, id) { in live_context_size()
163 if (!engine->context_size) in live_context_size()
166 intel_engine_pm_get(engine); in live_context_size()
175 saved = fetch_and_zero(&engine->default_state); in live_context_size()
178 engine->context_size += I915_GTT_PAGE_SIZE; in live_context_size()
180 err = __live_context_size(engine); in live_context_size()
182 engine->context_size -= I915_GTT_PAGE_SIZE; in live_context_size()
184 engine->default_state = saved; in live_context_size()
186 intel_engine_pm_put(engine); in live_context_size()
195 static int __live_active_context(struct intel_engine_cs *engine) in __live_active_context() argument
211 * subsequent idle-barrier (emitted when the engine wakeref hits 0 in __live_active_context()
218 if (intel_engine_uses_guc(engine)) in __live_active_context()
221 if (intel_engine_pm_is_awake(engine)) { in __live_active_context()
223 engine->name, __func__); in __live_active_context()
227 ce = intel_context_create(engine); in __live_active_context()
231 saved_heartbeat = engine->props.heartbeat_interval_ms; in __live_active_context()
232 engine->props.heartbeat_interval_ms = 0; in __live_active_context()
237 intel_engine_pm_get(engine); in __live_active_context()
252 engine->name, pass); in __live_active_context()
257 if (!intel_engine_pm_is_awake(engine)) { in __live_active_context()
259 engine->name); in __live_active_context()
265 intel_engine_pm_put(engine); in __live_active_context()
271 err = intel_engine_flush_barriers(engine); in __live_active_context()
275 /* Wait for the barrier and in the process wait for engine to park */ in __live_active_context()
276 err = context_sync(engine->kernel_context); in __live_active_context()
285 intel_engine_pm_flush(engine); in __live_active_context()
287 if (intel_engine_pm_is_awake(engine)) { in __live_active_context()
288 struct drm_printer p = drm_dbg_printer(&engine->i915->drm, in __live_active_context()
291 intel_engine_dump(engine, &p, in __live_active_context()
293 engine->name, in __live_active_context()
294 atomic_read(&engine->wakeref.count)); in __live_active_context()
302 engine->props.heartbeat_interval_ms = saved_heartbeat; in __live_active_context()
310 struct intel_engine_cs *engine; in live_active_context() local
314 for_each_engine(engine, gt, id) { in live_active_context()
315 err = __live_active_context(engine); in live_active_context()
355 static int __live_remote_context(struct intel_engine_cs *engine) in __live_remote_context() argument
371 if (intel_engine_uses_guc(engine)) in __live_remote_context()
374 if (intel_engine_pm_is_awake(engine)) { in __live_remote_context()
376 engine->name, __func__); in __live_remote_context()
380 remote = intel_context_create(engine); in __live_remote_context()
384 local = intel_context_create(engine); in __live_remote_context()
390 saved_heartbeat = engine->props.heartbeat_interval_ms; in __live_remote_context()
391 engine->props.heartbeat_interval_ms = 0; in __live_remote_context()
392 intel_engine_pm_get(engine); in __live_remote_context()
399 err = __remote_sync(engine->kernel_context, remote); in __live_remote_context()
405 engine->name, pass); in __live_remote_context()
411 intel_engine_pm_put(engine); in __live_remote_context()
412 engine->props.heartbeat_interval_ms = saved_heartbeat; in __live_remote_context()
423 struct intel_engine_cs *engine; in live_remote_context() local
427 for_each_engine(engine, gt, id) { in live_remote_context()
428 err = __live_remote_context(engine); in live_remote_context()