Lines Matching refs:gvt
87 struct drm_i915_private *dev_priv = workload->vgpu->gvt->gt->i915; in sr_oa_regs()
130 struct intel_gvt *gvt = vgpu->gvt; in populate_shadow_context() local
218 if (IS_BROADWELL(gvt->gt->i915) && workload->engine->id == RCS0) in populate_shadow_context()
290 struct intel_gvt *gvt = container_of(nb, struct intel_gvt, in shadow_context_status_change() local
292 struct intel_gvt_workload_scheduler *scheduler = &gvt->scheduler; in shadow_context_status_change()
524 struct intel_gvt *gvt = workload->vgpu->gvt; in prepare_shadow_batch_buffer() local
525 const int gmadr_bytes = gvt->device_info.gmadr_bytes_in_cmd; in prepare_shadow_batch_buffer()
848 pick_next_workload(struct intel_gvt *gvt, struct intel_engine_cs *engine) in pick_next_workload() argument
850 struct intel_gvt_workload_scheduler *scheduler = &gvt->scheduler; in pick_next_workload()
853 mutex_lock(&gvt->sched_lock); in pick_next_workload()
902 mutex_unlock(&gvt->sched_lock); in pick_next_workload()
1056 for_each_engine_masked(engine, vgpu->gvt->gt, engine_mask, tmp) { in intel_vgpu_clean_workloads()
1066 static void complete_current_workload(struct intel_gvt *gvt, int ring_id) in complete_current_workload() argument
1068 struct intel_gvt_workload_scheduler *scheduler = &gvt->scheduler; in complete_current_workload()
1077 mutex_lock(&gvt->sched_lock); in complete_current_workload()
1143 if (gvt->scheduler.need_reschedule) in complete_current_workload()
1144 intel_gvt_request_service(gvt, INTEL_GVT_REQUEST_EVENT_SCHED); in complete_current_workload()
1146 mutex_unlock(&gvt->sched_lock); in complete_current_workload()
1154 struct intel_gvt *gvt = engine->i915->gvt; in workload_thread() local
1155 struct intel_gvt_workload_scheduler *scheduler = &gvt->scheduler; in workload_thread()
1168 workload = pick_next_workload(gvt, engine); in workload_thread()
1215 complete_current_workload(gvt, engine->id); in workload_thread()
1231 struct intel_gvt *gvt = vgpu->gvt; in intel_gvt_wait_vgpu_idle() local
1232 struct intel_gvt_workload_scheduler *scheduler = &gvt->scheduler; in intel_gvt_wait_vgpu_idle()
1242 void intel_gvt_clean_workload_scheduler(struct intel_gvt *gvt) in intel_gvt_clean_workload_scheduler() argument
1244 struct intel_gvt_workload_scheduler *scheduler = &gvt->scheduler; in intel_gvt_clean_workload_scheduler()
1250 for_each_engine(engine, gvt->gt, i) { in intel_gvt_clean_workload_scheduler()
1253 &gvt->shadow_ctx_notifier_block[i]); in intel_gvt_clean_workload_scheduler()
1258 int intel_gvt_init_workload_scheduler(struct intel_gvt *gvt) in intel_gvt_init_workload_scheduler() argument
1260 struct intel_gvt_workload_scheduler *scheduler = &gvt->scheduler; in intel_gvt_init_workload_scheduler()
1269 for_each_engine(engine, gvt->gt, i) { in intel_gvt_init_workload_scheduler()
1280 gvt->shadow_ctx_notifier_block[i].notifier_call = in intel_gvt_init_workload_scheduler()
1283 &gvt->shadow_ctx_notifier_block[i]); in intel_gvt_init_workload_scheduler()
1289 intel_gvt_clean_workload_scheduler(gvt); in intel_gvt_init_workload_scheduler()
1327 for_each_engine(engine, vgpu->gvt->gt, id) in intel_vgpu_clean_submission()
1384 struct drm_i915_private *i915 = vgpu->gvt->gt->i915; in intel_vgpu_setup_submission()
1397 for_each_engine(engine, vgpu->gvt->gt, i) { in intel_vgpu_setup_submission()
1444 for_each_engine(engine, vgpu->gvt->gt, i) { in intel_vgpu_setup_submission()
1470 struct drm_i915_private *i915 = vgpu->gvt->gt->i915; in intel_vgpu_select_submission_ops()
1784 intel_gvt_kick_schedule(workload->vgpu->gvt); in intel_vgpu_queue_workload()
1785 wake_up(&workload->vgpu->gvt->scheduler.waitq[workload->engine->id]); in intel_vgpu_queue_workload()