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 <ander.conselvan.de.oliveira@intel.com>
Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/1480667037-11215-8-git-send-email-ander.conselvan.de.oliveira@intel.com
This commit is contained in:
Ander Conselvan de Oliveira 2016-12-02 10:23:55 +02:00
parent 89b3c3c7ee
commit 09d093869f
1 changed files with 6 additions and 4 deletions

View File

@ -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;