summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/i915/i915_drv.c
diff options
context:
space:
mode:
authorJani Nikula <jani.nikula@intel.com>2020-02-14 16:50:57 +0300
committerJani Nikula <jani.nikula@intel.com>2020-02-19 16:16:27 +0300
commit93a0ed6cc164bad2bc9afcf1d06186f8425020af (patch)
treeb9ec37cde674798cc9086ca9c237c7a0ff727c12 /drivers/gpu/drm/i915/i915_drv.c
parent200452f1cb437895cb4bb0fcb0d5b74afdbf17ac (diff)
downloadlinux-93a0ed6cc164bad2bc9afcf1d06186f8425020af.tar.xz
drm/i915: split intel_modeset_driver_remove() to pre/post irq uninstall
Split intel_modeset_driver_remove() to two, the part with working irqs before irq uninstall, and the part after irq uninstall. Move irq_unintall() closer to the layer it belongs. The error path in i915_driver_modeset_probe() looks obviously weird after this, but remains as good or broken as it ever was. No functional changes. Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Signed-off-by: Jani Nikula <jani.nikula@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20200214135058.7580-1-jani.nikula@intel.com
Diffstat (limited to 'drivers/gpu/drm/i915/i915_drv.c')
-rw-r--r--drivers/gpu/drm/i915/i915_drv.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
index 0e8b56d8fce2..e85078eb7b7d 100644
--- a/drivers/gpu/drm/i915/i915_drv.c
+++ b/drivers/gpu/drm/i915/i915_drv.c
@@ -272,6 +272,9 @@ cleanup_gem:
i915_gem_driver_release(i915);
cleanup_modeset:
intel_modeset_driver_remove(i915);
+ intel_irq_uninstall(i915);
+ intel_modeset_driver_remove_noirq(i915);
+ goto cleanup_csr;
cleanup_irq:
intel_irq_uninstall(i915);
cleanup_csr:
@@ -288,6 +291,8 @@ static void i915_driver_modeset_remove(struct drm_i915_private *i915)
intel_irq_uninstall(i915);
+ intel_modeset_driver_remove_noirq(i915);
+
intel_bios_driver_remove(i915);
intel_vga_unregister(i915);