drm/i915: restore RSTDBYCTL only on non-KMS paths
authorJani Nikula <jani.nikula@intel.com>
Tue, 11 Nov 2014 14:48:04 +0000 (16:48 +0200)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Fri, 14 Nov 2014 09:29:27 +0000 (10:29 +0100)
Since RSTDBYCTL is only saved on non-KMS path in within i915_save_state,
move the restore in i915_restore_state for symmetry.

Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/i915/i915_suspend.c

index bd8adf2ca7d8ba3867d249712289047b8d29a20c..26b6bf9261caa28fbc5ba300ba1fbfc8b2bd9a0f 100644 (file)
@@ -271,8 +271,6 @@ static void i915_restore_display(struct drm_device *dev)
                I915_WRITE(PCH_PP_OFF_DELAYS, dev_priv->regfile.savePP_OFF_DELAYS);
                I915_WRITE(PCH_PP_DIVISOR, dev_priv->regfile.savePP_DIVISOR);
                I915_WRITE(PCH_PP_CONTROL, dev_priv->regfile.savePP_CONTROL);
-               I915_WRITE(RSTDBYCTL,
-                          dev_priv->regfile.saveMCHBAR_RENDER_STANDBY);
        } else if (IS_VALLEYVIEW(dev)) {
                I915_WRITE(VLV_BLC_HIST_CTL(PIPE_A),
                           dev_priv->regfile.saveBLC_HIST_CTL);
@@ -367,6 +365,8 @@ int i915_restore_state(struct drm_device *dev)
                        I915_WRITE(_FDI_RXA_IMR, dev_priv->regfile.saveFDI_RXA_IMR);
                        I915_WRITE(_FDI_RXB_IMR, dev_priv->regfile.saveFDI_RXB_IMR);
                        I915_WRITE(PCH_PORT_HOTPLUG, dev_priv->regfile.savePCH_PORT_HOTPLUG);
+                       I915_WRITE(RSTDBYCTL,
+                                  dev_priv->regfile.saveMCHBAR_RENDER_STANDBY);
                } else {
                        I915_WRITE(IER, dev_priv->regfile.saveIER);
                        I915_WRITE(IMR, dev_priv->regfile.saveIMR);