OSDN Git Service

drm/i915/bxt: Remove DSP CLK_GATE programming for BXT
authorUma Shankar <uma.shankar@intel.com>
Thu, 18 Feb 2016 11:49:26 +0000 (13:49 +0200)
committerJani Nikula <jani.nikula@intel.com>
Thu, 18 Feb 2016 17:06:32 +0000 (19:06 +0200)
DSP CLK_GATE registers are specific to BYT and CHT.
Avoid programming the same for BXT platform.

v2: Rebased on latest drm nightly branch.

v3: Fixed Jani's review comments

Signed-off-by: Uma Shankar <uma.shankar@intel.com>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/1455796166-13052-1-git-send-email-jani.nikula@intel.com
drivers/gpu/drm/i915/intel_dsi.c

index fcd746c..b928c50 100644 (file)
@@ -634,7 +634,6 @@ static void intel_dsi_post_disable(struct intel_encoder *encoder)
 {
        struct drm_i915_private *dev_priv = encoder->base.dev->dev_private;
        struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
-       u32 val;
 
        DRM_DEBUG_KMS("\n");
 
@@ -642,9 +641,13 @@ static void intel_dsi_post_disable(struct intel_encoder *encoder)
 
        intel_dsi_clear_device_ready(encoder);
 
-       val = I915_READ(DSPCLK_GATE_D);
-       val &= ~DPOUNIT_CLOCK_GATE_DISABLE;
-       I915_WRITE(DSPCLK_GATE_D, val);
+       if (!IS_BROXTON(dev_priv)) {
+               u32 val;
+
+               val = I915_READ(DSPCLK_GATE_D);
+               val &= ~DPOUNIT_CLOCK_GATE_DISABLE;
+               I915_WRITE(DSPCLK_GATE_D, val);
+       }
 
        drm_panel_unprepare(intel_dsi->panel);