]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
drm/i915: Fix GMBUSFREQ on vlv/chv
authorVille Syrjälä <ville.syrjala@linux.intel.com>
Thu, 16 Oct 2014 17:52:31 +0000 (20:52 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 14 Nov 2014 18:10:39 +0000 (10:10 -0800)
commit 6be1e3d3ea29354d7c834a3936e796e185d5c73b upstream.

vlv_cdclk_freq is in kHz but we need MHz for the GMBUSFREQ divider.

This is a regression from:
commit f8bf63fdcb1f82459dae7a3f22ee5ce92f3ea727
Author: Ville Syrjälä <ville.syrjala@linux.intel.com>
Date:   Fri Jun 13 13:37:54 2014 +0300

    drm/i915: Kill duplicated cdclk readout code from i2c

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/gpu/drm/i915/intel_display.c

index d8324c69fa868de2364cf1b272426f5a634c5c31..6a74e364b0de8af6b4116ff6f1f145d17c61876e 100644 (file)
@@ -4470,7 +4470,7 @@ static void vlv_update_cdclk(struct drm_device *dev)
         * BSpec erroneously claims we should aim for 4MHz, but
         * in fact 1MHz is the correct frequency.
         */
-       I915_WRITE(GMBUSFREQ_VLV, dev_priv->vlv_cdclk_freq);
+       I915_WRITE(GMBUSFREQ_VLV, DIV_ROUND_UP(dev_priv->vlv_cdclk_freq, 1000));
 }
 
 /* Adjust CDclk dividers to allow high res or save power if possible */