]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
drm/i915: add i915_driver_modeset_remove()
authorJani Nikula <jani.nikula@intel.com>
Fri, 20 Sep 2019 18:54:16 +0000 (21:54 +0300)
committerJani Nikula <jani.nikula@intel.com>
Mon, 23 Sep 2019 07:50:19 +0000 (10:50 +0300)
For completeness, add counterpart to i915_driver_modeset_probe() and
remove the asymmetry in the probe/remove parts. No functional changes.

Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20190920185421.17822-1-jani.nikula@intel.com
drivers/gpu/drm/i915/i915_drv.c

index c95986a984c81c38cd1d397f89d60678aa4d0f28..acccf852e654b2679892da675ad47e31743f8640 100644 (file)
@@ -447,6 +447,20 @@ static int i915_kick_out_firmware_fb(struct drm_i915_private *dev_priv)
        return ret;
 }
 
+static void i915_driver_modeset_remove(struct drm_i915_private *i915)
+{
+       struct pci_dev *pdev = i915->drm.pdev;
+
+       intel_modeset_driver_remove(&i915->drm);
+
+       intel_bios_driver_remove(i915);
+
+       vga_switcheroo_unregister_client(pdev);
+       vga_client_register(pdev, NULL, NULL, NULL);
+
+       intel_csr_ucode_fini(i915);
+}
+
 static void intel_init_dpio(struct drm_i915_private *dev_priv)
 {
        /*
@@ -1623,8 +1637,6 @@ int i915_driver_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
 
 void i915_driver_remove(struct drm_i915_private *i915)
 {
-       struct pci_dev *pdev = i915->drm.pdev;
-
        disable_rpm_wakeref_asserts(&i915->runtime_pm);
 
        i915_driver_unregister(i915);
@@ -1645,14 +1657,7 @@ void i915_driver_remove(struct drm_i915_private *i915)
 
        intel_gvt_driver_remove(i915);
 
-       intel_modeset_driver_remove(&i915->drm);
-
-       intel_bios_driver_remove(i915);
-
-       vga_switcheroo_unregister_client(pdev);
-       vga_client_register(pdev, NULL, NULL, NULL);
-
-       intel_csr_ucode_fini(i915);
+       i915_driver_modeset_remove(i915);
 
        /* Free error state after interrupts are fully disabled. */
        cancel_delayed_work_sync(&i915->gt.hangcheck.work);