Lines Matching refs:engine
153 intel_read_status_page(const struct intel_engine_cs *engine, int reg) in intel_read_status_page() argument
156 return READ_ONCE(engine->status_page.addr[reg]); in intel_read_status_page()
160 intel_write_status_page(struct intel_engine_cs *engine, int reg, u32 value) in intel_write_status_page() argument
167 drm_clflush_virt_range(&engine->status_page.addr[reg], sizeof(value)); in intel_write_status_page()
168 WRITE_ONCE(engine->status_page.addr[reg], value); in intel_write_status_page()
169 drm_clflush_virt_range(&engine->status_page.addr[reg], sizeof(value)); in intel_write_status_page()
207 void intel_engine_stop(struct intel_engine_cs *engine);
208 void intel_engine_cleanup(struct intel_engine_cs *engine);
213 void intel_engine_free_request_pool(struct intel_engine_cs *engine);
218 int intel_engine_init_common(struct intel_engine_cs *engine);
219 void intel_engine_cleanup_common(struct intel_engine_cs *engine);
221 int intel_engine_resume(struct intel_engine_cs *engine);
223 int intel_ring_submission_setup(struct intel_engine_cs *engine);
225 int intel_engine_stop_cs(struct intel_engine_cs *engine);
226 void intel_engine_cancel_stop_cs(struct intel_engine_cs *engine);
228 void intel_engine_wait_for_pending_mi_fw(struct intel_engine_cs *engine);
230 void intel_engine_set_hwsp_writemask(struct intel_engine_cs *engine, u32 mask);
232 u64 intel_engine_get_active_head(const struct intel_engine_cs *engine);
233 u64 intel_engine_get_last_batch_head(const struct intel_engine_cs *engine);
235 void intel_engine_get_instdone(const struct intel_engine_cs *engine,
238 void intel_engine_init_execlists(struct intel_engine_cs *engine);
240 bool intel_engine_irq_enable(struct intel_engine_cs *engine);
241 void intel_engine_irq_disable(struct intel_engine_cs *engine);
243 static inline void __intel_engine_reset(struct intel_engine_cs *engine, in __intel_engine_reset() argument
246 if (engine->reset.rewind) in __intel_engine_reset()
247 engine->reset.rewind(engine, stalled); in __intel_engine_reset()
248 engine->serial++; /* contexts lost */ in __intel_engine_reset()
252 bool intel_engine_is_idle(struct intel_engine_cs *engine);
254 void __intel_engine_flush_submission(struct intel_engine_cs *engine, bool sync);
255 static inline void intel_engine_flush_submission(struct intel_engine_cs *engine) in intel_engine_flush_submission() argument
257 __intel_engine_flush_submission(engine, true); in intel_engine_flush_submission()
262 bool intel_engine_can_store_dword(struct intel_engine_cs *engine);
265 void intel_engine_dump(struct intel_engine_cs *engine,
272 ktime_t intel_engine_get_busy_time(struct intel_engine_cs *engine,
275 void intel_engine_get_hung_entity(struct intel_engine_cs *engine,
280 intel_engine_create_pinned_context(struct intel_engine_cs *engine,
289 void xehp_enable_ccs_engines(struct intel_engine_cs *engine);
295 static inline bool intel_engine_uses_guc(const struct intel_engine_cs *engine) in intel_engine_uses_guc() argument
297 return engine->gt->submission_method >= INTEL_SUBMISSION_GUC; in intel_engine_uses_guc()
301 intel_engine_has_preempt_reset(const struct intel_engine_cs *engine) in intel_engine_has_preempt_reset() argument
306 return intel_engine_has_preemption(engine); in intel_engine_has_preempt_reset()
324 intel_virtual_engine_has_heartbeat(const struct intel_engine_cs *engine) in intel_virtual_engine_has_heartbeat() argument
332 GEM_BUG_ON(!intel_engine_uses_guc(engine)); in intel_virtual_engine_has_heartbeat()
334 return intel_guc_virtual_engine_has_heartbeat(engine); in intel_virtual_engine_has_heartbeat()
338 intel_engine_has_heartbeat(const struct intel_engine_cs *engine) in intel_engine_has_heartbeat() argument
343 if (intel_engine_is_virtual(engine)) in intel_engine_has_heartbeat()
344 return intel_virtual_engine_has_heartbeat(engine); in intel_engine_has_heartbeat()
346 return READ_ONCE(engine->props.heartbeat_interval_ms); in intel_engine_has_heartbeat()
350 intel_engine_get_sibling(struct intel_engine_cs *engine, unsigned int sibling) in intel_engine_get_sibling() argument
352 GEM_BUG_ON(!intel_engine_is_virtual(engine)); in intel_engine_get_sibling()
353 return engine->cops->get_sibling(engine, sibling); in intel_engine_get_sibling()
357 intel_engine_set_hung_context(struct intel_engine_cs *engine, in intel_engine_set_hung_context() argument
360 engine->hung_ce = ce; in intel_engine_set_hung_context()
364 intel_engine_clear_hung_context(struct intel_engine_cs *engine) in intel_engine_clear_hung_context() argument
366 intel_engine_set_hung_context(engine, NULL); in intel_engine_clear_hung_context()
370 intel_engine_get_hung_context(struct intel_engine_cs *engine) in intel_engine_get_hung_context() argument
372 return engine->hung_ce; in intel_engine_get_hung_context()
375 u64 intel_clamp_heartbeat_interval_ms(struct intel_engine_cs *engine, u64 value);
376 u64 intel_clamp_max_busywait_duration_ns(struct intel_engine_cs *engine, u64 value);
377 u64 intel_clamp_preempt_timeout_ms(struct intel_engine_cs *engine, u64 value);
378 u64 intel_clamp_stop_timeout_ms(struct intel_engine_cs *engine, u64 value);
379 u64 intel_clamp_timeslice_duration_ms(struct intel_engine_cs *engine, u64 value);