aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/i915_gem.c
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2019-08-06 13:42:59 +0100
committerChris Wilson <chris@chris-wilson.co.uk>2019-08-06 15:00:14 +0100
commitc29579d2fabe7448a444681d8229384249d315f9 (patch)
treeeaca421c39e0fca04dd0107bf2c1a82483ab54f8 /drivers/gpu/drm/i915/i915_gem.c
parentdrm/i915: Use drm_i915_private directly from drv_get_drvdata() (diff)
downloadlinux-dev-c29579d2fabe7448a444681d8229384249d315f9.tar.xz
linux-dev-c29579d2fabe7448a444681d8229384249d315f9.zip
drm/i915/gem: Make caps.scheduler static
We do not notify userspace when the scheduler capabilities are changed (due to wedging the driver) and as such userspace will expect the caps to be static and unchanging. Make it so, and so we only need to compute our caps once during driver registration. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com> Reviewed-by: Mika Kuoppala <mika.kuoppala@linux.intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20190806124300.24945-1-chris@chris-wilson.co.uk
Diffstat (limited to 'drivers/gpu/drm/i915/i915_gem.c')
-rw-r--r--drivers/gpu/drm/i915/i915_gem.c13
1 files changed, 11 insertions, 2 deletions
diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
index eb34f3e5a74d..5ab1ddfef23c 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
@@ -1249,8 +1249,6 @@ int i915_gem_init_hw(struct drm_i915_private *i915)
intel_mocs_init(gt);
- intel_engines_set_scheduler_caps(i915);
-
out:
intel_uncore_forcewake_put(uncore, FORCEWAKE_ALL);
return ret;
@@ -1599,6 +1597,17 @@ err_unlock:
return ret;
}
+void i915_gem_driver_register(struct drm_i915_private *i915)
+{
+ i915_gem_driver_register__shrinker(i915);
+ intel_engines_set_scheduler_caps(i915);
+}
+
+void i915_gem_driver_unregister(struct drm_i915_private *i915)
+{
+ i915_gem_driver_unregister__shrinker(i915);
+}
+
void i915_gem_driver_remove(struct drm_i915_private *dev_priv)
{
GEM_BUG_ON(dev_priv->gt.awake);