Home
last modified time | relevance | path

Searched refs:xe_exec_queue (Results 1 – 25 of 30) sorted by relevance

12

/linux/drivers/gpu/drm/xe/
H A Dxe_exec_queue.h21 struct xe_exec_queue *xe_exec_queue_create(struct xe_device *xe, struct xe_vm *vm,
25 struct xe_exec_queue *xe_exec_queue_create_class(struct xe_device *xe, struct xe_gt *gt,
29 struct xe_exec_queue *xe_exec_queue_create_bind(struct xe_device *xe,
34 void xe_exec_queue_fini(struct xe_exec_queue *q);
36 void xe_exec_queue_assign_name(struct xe_exec_queue *q, u32 instance);
38 static inline struct xe_exec_queue *
39 xe_exec_queue_get_unless_zero(struct xe_exec_queue *q) in xe_exec_queue_get_unless_zero()
47 struct xe_exec_queue *xe_exec_queue_lookup(struct xe_file *xef, u32 id);
49 static inline struct xe_exec_queue *xe_exec_queue_get(struct xe_exec_queue *q) in xe_exec_queue_get()
55 static inline void xe_exec_queue_put(struct xe_exec_queue *q) in xe_exec_queue_put()
[all …]
H A Dxe_exec_queue_types.h56 struct xe_exec_queue *primary;
77 struct xe_exec_queue { struct
259 int (*init)(struct xe_exec_queue *q); argument
261 void (*kill)(struct xe_exec_queue *q);
263 void (*fini)(struct xe_exec_queue *q);
269 void (*destroy)(struct xe_exec_queue *q);
271 int (*set_priority)(struct xe_exec_queue *q,
274 int (*set_timeslice)(struct xe_exec_queue *q, u32 timeslice_us);
276 int (*set_preempt_timeout)(struct xe_exec_queue *q, u32 preempt_timeout_us);
278 int (*set_multi_queue_priority)(struct xe_exec_queue *q,
[all …]
H A Dxe_guc_submit.c54 exec_queue_to_guc(struct xe_exec_queue *q) in exec_queue_to_guc()
77 static bool exec_queue_registered(struct xe_exec_queue *q) in exec_queue_registered()
82 static void set_exec_queue_registered(struct xe_exec_queue *q) in set_exec_queue_registered()
87 static void clear_exec_queue_registered(struct xe_exec_queue *q) in clear_exec_queue_registered()
92 static bool exec_queue_enabled(struct xe_exec_queue *q) in exec_queue_enabled()
97 static void set_exec_queue_enabled(struct xe_exec_queue *q) in set_exec_queue_enabled()
102 static void clear_exec_queue_enabled(struct xe_exec_queue *q) in clear_exec_queue_enabled()
107 static bool exec_queue_pending_enable(struct xe_exec_queue *q) in exec_queue_pending_enable()
112 static void set_exec_queue_pending_enable(struct xe_exec_queue *q) in set_exec_queue_pending_enable()
117 static void clear_exec_queue_pending_enable(struct xe_exec_queue *q) in clear_exec_queue_pending_enable()
[all …]
H A Dxe_exec_queue.c110 static int exec_queue_user_extensions(struct xe_device *xe, struct xe_exec_queue *q,
113 static void xe_exec_queue_group_cleanup(struct xe_exec_queue *q) in xe_exec_queue_group_cleanup()
141 static void __xe_exec_queue_free(struct xe_exec_queue *q) in __xe_exec_queue_free()
165 static int alloc_dep_schedulers(struct xe_device *xe, struct xe_exec_queue *q) in alloc_dep_schedulers()
198 static struct xe_exec_queue *__xe_exec_queue_alloc(struct xe_device *xe, in __xe_exec_queue_alloc()
204 struct xe_exec_queue *q; in __xe_exec_queue_alloc()
269 static void __xe_exec_queue_fini(struct xe_exec_queue *q) in __xe_exec_queue_fini()
279 static int __xe_exec_queue_init(struct xe_exec_queue *q, u32 exec_queue_flags) in __xe_exec_queue_init()
337 struct xe_exec_queue *xe_exec_queue_create(struct xe_device *xe, struct xe_vm *vm, in xe_exec_queue_create()
342 struct xe_exec_queue *q; in xe_exec_queue_create()
[all …]
H A Dxe_migrate.h19 struct xe_exec_queue;
135 int xe_migrate_ccs_rw_copy(struct xe_tile *tile, struct xe_exec_queue *q,
143 struct xe_exec_queue *xe_migrate_exec_queue(struct xe_migrate *migrate);
169 void xe_migrate_job_lock_assert(struct xe_exec_queue *q);
171 static inline void xe_migrate_job_lock_assert(struct xe_exec_queue *q) in xe_migrate_job_lock_assert()
176 void xe_migrate_job_lock(struct xe_migrate *m, struct xe_exec_queue *q);
177 void xe_migrate_job_unlock(struct xe_migrate *m, struct xe_exec_queue *q);
H A Dxe_execlist.c313 struct xe_exec_queue *q = job->q; in execlist_run_job()
335 static int execlist_exec_queue_init(struct xe_exec_queue *q) in execlist_exec_queue_init()
387 static void execlist_exec_queue_fini(struct xe_exec_queue *q) in execlist_exec_queue_fini()
401 struct xe_exec_queue *q = ee->q; in execlist_exec_queue_destroy_async()
416 static void execlist_exec_queue_kill(struct xe_exec_queue *q) in execlist_exec_queue_kill()
421 static void execlist_exec_queue_destroy(struct xe_exec_queue *q) in execlist_exec_queue_destroy()
427 static int execlist_exec_queue_set_priority(struct xe_exec_queue *q, in execlist_exec_queue_set_priority()
434 static int execlist_exec_queue_set_timeslice(struct xe_exec_queue *q, u32 timeslice_us) in execlist_exec_queue_set_timeslice()
440 static int execlist_exec_queue_set_preempt_timeout(struct xe_exec_queue *q, in execlist_exec_queue_set_preempt_timeout()
447 static int execlist_exec_queue_suspend(struct xe_exec_queue *q) in execlist_exec_queue_suspend()
[all …]
H A Dxe_devcoredump.h13 struct xe_exec_queue;
17 void xe_devcoredump(struct xe_exec_queue *q, struct xe_sched_job *job, const char *fmt, ...);
20 static inline void xe_devcoredump(struct xe_exec_queue *q, in xe_devcoredump()
H A Dxe_preempt_fence.c20 struct xe_exec_queue *q = pfence->q; in preempt_fence_work_func()
74 struct xe_exec_queue *q = pfence->q; in preempt_fence_enable_signaling()
143 xe_preempt_fence_arm(struct xe_preempt_fence *pfence, struct xe_exec_queue *q, in xe_preempt_fence_arm()
169 xe_preempt_fence_create(struct xe_exec_queue *q, in xe_preempt_fence_create()
H A Dxe_gsc_types.h19 struct xe_exec_queue;
36 struct xe_exec_queue *q;
H A Dxe_preempt_fence.h14 xe_preempt_fence_create(struct xe_exec_queue *q,
22 xe_preempt_fence_arm(struct xe_preempt_fence *pfence, struct xe_exec_queue *q,
H A Dxe_bb.c98 __xe_bb_create_job(struct xe_exec_queue *q, struct xe_bb *bb, u64 *addr) in __xe_bb_create_job()
112 struct xe_sched_job *xe_bb_create_migration_job(struct xe_exec_queue *q, in xe_bb_create_migration_job()
130 struct xe_sched_job *xe_bb_create_job(struct xe_exec_queue *q, in xe_bb_create_job()
H A Dxe_hw_engine.h14 struct xe_exec_queue;
59 xe_hw_engine_snapshot_capture(struct xe_hw_engine *hwe, struct xe_exec_queue *q);
H A Dxe_vm.h23 struct xe_exec_queue;
223 int xe_vm_add_compute_exec_queue(struct xe_vm *vm, struct xe_exec_queue *q);
224 void xe_vm_remove_compute_exec_queue(struct xe_vm *vm, struct xe_exec_queue *q);
272 struct xe_exec_queue *q, u64 addr,
H A Dxe_tlb_inval_job.c26 struct xe_exec_queue *q;
98 xe_tlb_inval_job_create(struct xe_exec_queue *q, struct xe_tlb_inval *tlb_inval, in xe_tlb_inval_job_create()
180 struct xe_exec_queue *q = job->q; in xe_tlb_inval_job_destroy()
H A Dxe_vm_types.h212 struct xe_exec_queue *q[XE_MAX_TILES_PER_DEVICE];
471 struct xe_exec_queue *q;
H A Dxe_lrc.h15 struct xe_exec_queue;
138 u32 *xe_lrc_emit_hwe_state_instructions(struct xe_exec_queue *q, u32 *cs);
H A Dxe_execlist_types.h35 struct xe_exec_queue *q;
H A Dxe_vm.c65 struct xe_exec_queue *q; in preempt_fences_waiting()
112 struct xe_exec_queue *q; in wait_for_existing_preempt_fences()
144 struct xe_exec_queue *q; in xe_vm_is_idle()
158 struct xe_exec_queue *q; in arm_preempt_fences()
176 struct xe_exec_queue *q; in add_preempt_fences()
201 struct xe_exec_queue *q; in resume_and_reinstall_preempt_fences()
214 int xe_vm_add_compute_exec_queue(struct xe_vm *vm, struct xe_exec_queue *q) in xe_vm_add_compute_exec_queue()
277 void xe_vm_remove_compute_exec_queue(struct xe_vm *vm, struct xe_exec_queue *q) in xe_vm_remove_compute_exec_queue()
307 struct xe_exec_queue *q; in xe_vm_kill()
684 struct xe_exec_queue *q,
[all …]
H A Dxe_sync.c333 struct xe_exec_queue *q, struct xe_vm *vm) in xe_sync_in_fence_get()
348 struct xe_exec_queue *__q; in xe_sync_in_fence_get()
H A Dxe_ring_ops.c136 static int emit_pipe_invalidate(struct xe_exec_queue *q, u32 mask_flags, in emit_pipe_invalidate()
180 struct xe_exec_queue *q = job->q; in emit_render_cache_flush()
212 static int emit_pipe_imm_ggtt(struct xe_exec_queue *q, u32 addr, u32 value, in emit_pipe_imm_ggtt()
H A Dxe_gt.c173 static int emit_job_sync(struct xe_exec_queue *q, struct xe_bb *bb, in emit_job_sync()
198 static int emit_nop_job(struct xe_gt *gt, struct xe_exec_queue *q) in emit_nop_job()
216 static int emit_wa_job(struct xe_gt *gt, struct xe_exec_queue *q) in emit_wa_job()
387 struct xe_exec_queue *q, *nop_q; in xe_gt_record_default_lrcs()
H A Dxe_drm_client.c322 struct xe_exec_queue *q; in show_run_ticks()
H A Dxe_exec.c118 struct xe_exec_queue *q; in xe_exec_ioctl()
H A Dxe_sriov_vf_ccs.c335 struct xe_exec_queue *q; in xe_sriov_vf_ccs_init()
H A Dxe_migrate.c50 struct xe_exec_queue *q;
1096 int xe_migrate_ccs_rw_copy(struct xe_tile *tile, struct xe_exec_queue *q, in xe_migrate_ccs_rw_copy()
1262 struct xe_exec_queue *xe_migrate_exec_queue(struct xe_migrate *migrate) in xe_migrate_exec_queue()
2495 void xe_migrate_job_lock(struct xe_migrate *m, struct xe_exec_queue *q) in xe_migrate_job_lock()
2513 void xe_migrate_job_unlock(struct xe_migrate *m, struct xe_exec_queue *q) in xe_migrate_job_unlock()
2528 void xe_migrate_job_lock_assert(struct xe_exec_queue *q) in xe_migrate_job_lock_assert()

12