Lines Matching refs:hwe

51 						   u16 width, struct xe_hw_engine *hwe,  in __xe_exec_queue_alloc()  argument
55 struct xe_gt *gt = hwe->gt; in __xe_exec_queue_alloc()
67 q->hwe = hwe; in __xe_exec_queue_alloc()
69 q->class = hwe->class; in __xe_exec_queue_alloc()
72 q->fence_irq = &gt->fence_irq[hwe->class]; in __xe_exec_queue_alloc()
73 q->ring_ops = gt->ring_ops[hwe->class]; in __xe_exec_queue_alloc()
79 q->sched_props.timeslice_us = hwe->eclass->sched_props.timeslice_us; in __xe_exec_queue_alloc()
81 hwe->eclass->sched_props.preempt_timeout_us; in __xe_exec_queue_alloc()
83 hwe->eclass->sched_props.job_timeout_ms; in __xe_exec_queue_alloc()
120 q->lrc[i] = xe_lrc_create(q->hwe, q->vm, SZ_16K); in __xe_exec_queue_init()
147 struct xe_hw_engine *hwe, u32 flags, in xe_exec_queue_create() argument
153 q = __xe_exec_queue_alloc(xe, vm, logical_mask, width, hwe, flags, in xe_exec_queue_create()
174 struct xe_hw_engine *hwe, *hwe0 = NULL; in xe_exec_queue_create_class() local
178 for_each_hw_engine(hwe, gt, id) { in xe_exec_queue_create_class()
179 if (xe_hw_engine_is_reserved(hwe)) in xe_exec_queue_create_class()
182 if (hwe->class == class) { in xe_exec_queue_create_class()
183 logical_mask |= BIT(hwe->logical_instance); in xe_exec_queue_create_class()
185 hwe0 = hwe; in xe_exec_queue_create_class()
221 struct xe_hw_engine *hwe = xe_gt_hw_engine(gt, in xe_exec_queue_create_bind() local
226 if (!hwe) { in xe_exec_queue_create_bind()
232 BIT(hwe->logical_instance), 1, hwe, in xe_exec_queue_create_bind()
390 xe_exec_queue_get_prop_minmax(q->hwe->eclass, in exec_queue_set_timeslice()
497 struct xe_hw_engine *hwe; in calc_validate_logical_mask() local
501 hwe = xe_hw_engine_lookup(xe, eci[n]); in calc_validate_logical_mask()
502 if (XE_IOCTL_DBG(xe, !hwe)) in calc_validate_logical_mask()
505 if (XE_IOCTL_DBG(xe, xe_hw_engine_is_reserved(hwe))) in calc_validate_logical_mask()
539 struct xe_hw_engine *hwe; in xe_exec_queue_create_ioctl() local
601 hwe = xe_hw_engine_lookup(xe, eci[0]); in xe_exec_queue_create_ioctl()
602 if (XE_IOCTL_DBG(xe, !hwe)) in xe_exec_queue_create_ioctl()
622 args->width, hwe, 0, in xe_exec_queue_create_ioctl()
637 if (q->vm && q->hwe->hw_engine_group) { in xe_exec_queue_create_ioctl()
638 err = xe_hw_engine_group_add_exec_queue(q->hwe->hw_engine_group, q); in xe_exec_queue_create_ioctl()
833 if (q->vm && q->hwe->hw_engine_group) in xe_exec_queue_destroy_ioctl()
834 xe_hw_engine_group_del_exec_queue(q->hwe->hw_engine_group, q); in xe_exec_queue_destroy_ioctl()
851 lockdep_assert_held(&q->hwe->hw_engine_group->mode_sem); in xe_exec_queue_last_fence_lockdep_assert()
922 lockdep_assert_held_write(&q->hwe->hw_engine_group->mode_sem); in xe_exec_queue_last_fence_get_for_resume()