From: Ander Conselvan de Oliveira Date: Fri, 2 Dec 2016 08:23:55 +0000 (+0200) Subject: drm/i915/glk: Allow dotclock up to 2 * cdclk on geminilake X-Git-Tag: v4.11-rc1~83^2~47^2~169 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=09d093869feb09f098ac7bd28a8dbadccff79216;p=karo-tx-linux.git drm/i915/glk: Allow dotclock up to 2 * cdclk on geminilake Geminilake has double wide pipes so it can output two pixels per CD clock. Signed-off-by: Ander Conselvan de Oliveira Reviewed-by: Rodrigo Vivi Link: http://patchwork.freedesktop.org/patch/msgid/1480667037-11215-8-git-send-email-ander.conselvan.de.oliveira@intel.com --- diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index 2490fadfb7b4..aabef5e13bd4 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c @@ -5805,8 +5805,10 @@ static int intel_compute_max_dotclk(struct drm_i915_private *dev_priv) { int max_cdclk_freq = dev_priv->max_cdclk_freq; - if (INTEL_INFO(dev_priv)->gen >= 9 || - IS_HASWELL(dev_priv) || IS_BROADWELL(dev_priv)) + if (IS_GEMINILAKE(dev_priv)) + return 2 * max_cdclk_freq; + else if (INTEL_INFO(dev_priv)->gen >= 9 || + IS_HASWELL(dev_priv) || IS_BROADWELL(dev_priv)) return max_cdclk_freq; else if (IS_CHERRYVIEW(dev_priv)) return max_cdclk_freq*95/100; @@ -6563,9 +6565,9 @@ static int valleyview_calc_cdclk(struct drm_i915_private *dev_priv, static int glk_calc_cdclk(int max_pixclk) { - if (max_pixclk > 158400) + if (max_pixclk > 2 * 158400) return 316800; - else if (max_pixclk > 79200) + else if (max_pixclk > 2 * 79200) return 158400; else return 79200;