]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
drm/i915: Suspend the framebuffer console earlier during system suspend
authorImre Deak <imre.deak@intel.com>
Thu, 4 Jan 2024 08:30:02 +0000 (10:30 +0200)
committerImre Deak <imre.deak@intel.com>
Mon, 8 Jan 2024 16:51:32 +0000 (18:51 +0200)
Suspend the FB console early during system suspend to prevent new FB
probe/modeset cycles interfering with the HW uninitialization steps in a
similar way as during driver shutdown as described in the previous
patch.

Link: https://patchwork.freedesktop.org/patch/msgid/20240104083008.2715733-7-imre.deak@intel.com
Reviewed-by: Jouni Högander <jouni.hogander@intel.com>
Signed-off-by: Imre Deak <imre.deak@intel.com>
drivers/gpu/drm/i915/i915_driver.c

index 0d78df3e7eff47a4279435a0a3a46c0f138a7588..8005a29e78ca75b36f67fdc16c48db190b430f9f 100644 (file)
@@ -1080,6 +1080,7 @@ static int i915_drm_suspend(struct drm_device *dev)
        /* We do a lot of poking in a lot of registers, make sure they work
         * properly. */
        intel_power_domains_disable(dev_priv);
+       intel_fbdev_set_suspend(dev, FBINFO_STATE_SUSPENDED, true);
        if (HAS_DISPLAY(dev_priv))
                drm_kms_helper_poll_disable(dev);
 
@@ -1103,8 +1104,6 @@ static int i915_drm_suspend(struct drm_device *dev)
        opregion_target_state = suspend_to_idle(dev_priv) ? PCI_D1 : PCI_D3cold;
        intel_opregion_suspend(dev_priv, opregion_target_state);
 
-       intel_fbdev_set_suspend(dev, FBINFO_STATE_SUSPENDED, true);
-
        dev_priv->suspend_count++;
 
        intel_dmc_suspend(dev_priv);