-
- Downloads
drm/i915: Move priolist to new i915_sched_engine object
Introduce i915_sched_engine object which is lower level data structure that i915_scheduler / generic code can operate on without touching execlist specific structures. This allows additional submission backends to be added without breaking the layering. Currently the execlists backend uses 1 of these object per each engine (physical or virtual) but future backends like the GuC will point to less instances utilizing the reference counting. This is a bit of detour to integrating the i915 with the DRM scheduler but this object will still exist when the DRM scheduler lands in the i915. It will however look a bit different. It will encapsulate the drm_gpu_scheduler object plus and common variables (to the backends) related to scheduling. Regardless this is a step in the right direction. This patch starts the aforementioned transition by moving the priolist into the i915_sched_engine object. v3: (Jason Ekstrand) Update comment next to intel_engine_cs.virtual Add kernel doc (Checkpatch) Fix double the in commit message v4: (Daniele) Update comment message. Add comment about subclass field Signed-off-by:Matthew Brost <matthew.brost@intel.com> Reviewed-by:
Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com> Signed-off-by:
Matt Roper <matthew.d.roper@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20210618010638.98941-2-matthew.brost@intel.com
Showing
- Documentation/gpu/i915.rst 5 additions, 0 deletionsDocumentation/gpu/i915.rst
- drivers/gpu/drm/i915/gt/intel_engine_cs.c 10 additions, 4 deletionsdrivers/gpu/drm/i915/gt/intel_engine_cs.c
- drivers/gpu/drm/i915/gt/intel_engine_pm.c 2 additions, 2 deletionsdrivers/gpu/drm/i915/gt/intel_engine_pm.c
- drivers/gpu/drm/i915/gt/intel_engine_types.h 6 additions, 26 deletionsdrivers/gpu/drm/i915/gt/intel_engine_types.h
- drivers/gpu/drm/i915/gt/intel_execlists_submission.c 46 additions, 35 deletionsdrivers/gpu/drm/i915/gt/intel_execlists_submission.c
- drivers/gpu/drm/i915/gt/mock_engine.c 8 additions, 1 deletiondrivers/gpu/drm/i915/gt/mock_engine.c
- drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c 10 additions, 9 deletionsdrivers/gpu/drm/i915/gt/uc/intel_guc_submission.c
- drivers/gpu/drm/i915/i915_scheduler.c 40 additions, 13 deletionsdrivers/gpu/drm/i915/i915_scheduler.c
- drivers/gpu/drm/i915/i915_scheduler.h 18 additions, 0 deletionsdrivers/gpu/drm/i915/i915_scheduler.h
- drivers/gpu/drm/i915/i915_scheduler_types.h 47 additions, 0 deletionsdrivers/gpu/drm/i915/i915_scheduler_types.h
Loading
Please register or sign in to comment