Lines Matching full:ve

1699 guc_virtual_get_sibling(struct intel_engine_cs *ve, unsigned int sibling)  in guc_virtual_get_sibling()  argument
1702 intel_engine_mask_t tmp, mask = ve->mask; in guc_virtual_get_sibling()
1705 for_each_engine_masked(engine, ve->gt, mask, tmp) in guc_virtual_get_sibling()
3416 struct guc_virtual_engine *ve = in __guc_context_destroy() local
3417 container_of(ce, typeof(*ve), context); in __guc_context_destroy()
3419 if (ve->base.breadcrumbs) in __guc_context_destroy()
3420 intel_breadcrumbs_put(ve->base.breadcrumbs); in __guc_context_destroy()
3422 kfree(ve); in __guc_context_destroy()
5687 * requests need to be skipped. The front end (execuf IOCTL) should've called
5828 struct guc_virtual_engine *ve; in guc_create_virtual() local
5833 ve = kzalloc(sizeof(*ve), GFP_KERNEL); in guc_create_virtual()
5834 if (!ve) in guc_create_virtual()
5839 ve->base.i915 = siblings[0]->i915; in guc_create_virtual()
5840 ve->base.gt = siblings[0]->gt; in guc_create_virtual()
5841 ve->base.uncore = siblings[0]->uncore; in guc_create_virtual()
5842 ve->base.id = -1; in guc_create_virtual()
5844 ve->base.uabi_class = I915_ENGINE_CLASS_INVALID; in guc_create_virtual()
5845 ve->base.instance = I915_ENGINE_CLASS_INVALID_VIRTUAL; in guc_create_virtual()
5846 ve->base.uabi_instance = I915_ENGINE_CLASS_INVALID_VIRTUAL; in guc_create_virtual()
5847 ve->base.saturated = ALL_ENGINES; in guc_create_virtual()
5849 snprintf(ve->base.name, sizeof(ve->base.name), "virtual"); in guc_create_virtual()
5851 ve->base.sched_engine = i915_sched_engine_get(guc->sched_engine); in guc_create_virtual()
5853 ve->base.cops = &virtual_guc_context_ops; in guc_create_virtual()
5854 ve->base.request_alloc = guc_request_alloc; in guc_create_virtual()
5855 ve->base.bump_serial = virtual_guc_bump_serial; in guc_create_virtual()
5857 ve->base.submit_request = guc_submit_request; in guc_create_virtual()
5859 ve->base.flags = I915_ENGINE_IS_VIRTUAL; in guc_create_virtual()
5862 ve->base.mask = VIRTUAL_ENGINES; in guc_create_virtual()
5864 intel_context_init(&ve->context, &ve->base); in guc_create_virtual()
5870 if (sibling->mask & ve->base.mask) { in guc_create_virtual()
5877 ve->base.mask |= sibling->mask; in guc_create_virtual()
5878 ve->base.logical_mask |= sibling->logical_mask; in guc_create_virtual()
5880 if (n != 0 && ve->base.class != sibling->class) { in guc_create_virtual()
5882 sibling->class, ve->base.class); in guc_create_virtual()
5886 ve->base.class = sibling->class; in guc_create_virtual()
5887 ve->base.uabi_class = sibling->uabi_class; in guc_create_virtual()
5888 snprintf(ve->base.name, sizeof(ve->base.name), in guc_create_virtual()
5889 "v%dx%d", ve->base.class, count); in guc_create_virtual()
5890 ve->base.context_size = sibling->context_size; in guc_create_virtual()
5892 ve->base.add_active_request = in guc_create_virtual()
5894 ve->base.remove_active_request = in guc_create_virtual()
5896 ve->base.emit_bb_start = sibling->emit_bb_start; in guc_create_virtual()
5897 ve->base.emit_flush = sibling->emit_flush; in guc_create_virtual()
5898 ve->base.emit_init_breadcrumb = in guc_create_virtual()
5900 ve->base.emit_fini_breadcrumb = in guc_create_virtual()
5902 ve->base.emit_fini_breadcrumb_dw = in guc_create_virtual()
5904 ve->base.breadcrumbs = in guc_create_virtual()
5907 ve->base.flags |= sibling->flags; in guc_create_virtual()
5909 ve->base.props.timeslice_duration_ms = in guc_create_virtual()
5911 ve->base.props.preempt_timeout_ms = in guc_create_virtual()
5916 return &ve->context; in guc_create_virtual()
5919 intel_context_put(&ve->context); in guc_create_virtual()
5923 bool intel_guc_virtual_engine_has_heartbeat(const struct intel_engine_cs *ve) in intel_guc_virtual_engine_has_heartbeat() argument
5926 intel_engine_mask_t tmp, mask = ve->mask; in intel_guc_virtual_engine_has_heartbeat()
5928 for_each_engine_masked(engine, ve->gt, mask, tmp) in intel_guc_virtual_engine_has_heartbeat()