drm/i915: Enable DVO between mode_set and dpms hooks
authorVille Syrjälä <ville.syrjala@linux.intel.com>
Thu, 14 Aug 2014 22:21:59 +0000 (01:21 +0300)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Wed, 3 Sep 2014 09:05:12 +0000 (11:05 +0200)
To more closely match the IEGD ns2501 driver behaviour, call the
mode_set hook while the DVO port is still disabled, then enable the DVO
port, and finally call the dpms hook.

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Tested-by: Thomas Richter <richter@rus.uni-stuttgart.de>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/i915/intel_dvo.c

index d5ea393e69049f4be0968c086d073fb3058c81f8..4f115c1d2cc139d4ae1dd31215d6e1f9d9c5df26 100644 (file)
@@ -185,12 +185,13 @@ static void intel_enable_dvo(struct intel_encoder *encoder)
        u32 dvo_reg = intel_dvo->dev.dvo_reg;
        u32 temp = I915_READ(dvo_reg);
 
-       I915_WRITE(dvo_reg, temp | DVO_ENABLE);
-       I915_READ(dvo_reg);
        intel_dvo->dev.dev_ops->mode_set(&intel_dvo->dev,
                                         &crtc->config.requested_mode,
                                         &crtc->config.adjusted_mode);
 
+       I915_WRITE(dvo_reg, temp | DVO_ENABLE);
+       I915_READ(dvo_reg);
+
        intel_dvo->dev.dev_ops->dpms(&intel_dvo->dev, true);
 }