diff options
author | Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com> | 2016-12-02 03:23:55 -0500 |
---|---|---|
committer | Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com> | 2016-12-02 09:42:11 -0500 |
commit | 09d093869feb09f098ac7bd28a8dbadccff79216 (patch) | |
tree | 7589956baa9b610997cb6e797e2c7f7b84bb10e9 /drivers/gpu/drm | |
parent | 89b3c3c7ee9d9be319b90af3d52f00feba04f1d8 (diff) |
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
Diffstat (limited to 'drivers/gpu/drm')
-rw-r--r-- | drivers/gpu/drm/i915/intel_display.c | 10 |
1 files changed, 6 insertions, 4 deletions
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) | |||
5805 | { | 5805 | { |
5806 | int max_cdclk_freq = dev_priv->max_cdclk_freq; | 5806 | int max_cdclk_freq = dev_priv->max_cdclk_freq; |
5807 | 5807 | ||
5808 | if (INTEL_INFO(dev_priv)->gen >= 9 || | 5808 | if (IS_GEMINILAKE(dev_priv)) |
5809 | IS_HASWELL(dev_priv) || IS_BROADWELL(dev_priv)) | 5809 | return 2 * max_cdclk_freq; |
5810 | else if (INTEL_INFO(dev_priv)->gen >= 9 || | ||
5811 | IS_HASWELL(dev_priv) || IS_BROADWELL(dev_priv)) | ||
5810 | return max_cdclk_freq; | 5812 | return max_cdclk_freq; |
5811 | else if (IS_CHERRYVIEW(dev_priv)) | 5813 | else if (IS_CHERRYVIEW(dev_priv)) |
5812 | return max_cdclk_freq*95/100; | 5814 | return max_cdclk_freq*95/100; |
@@ -6563,9 +6565,9 @@ static int valleyview_calc_cdclk(struct drm_i915_private *dev_priv, | |||
6563 | 6565 | ||
6564 | static int glk_calc_cdclk(int max_pixclk) | 6566 | static int glk_calc_cdclk(int max_pixclk) |
6565 | { | 6567 | { |
6566 | if (max_pixclk > 158400) | 6568 | if (max_pixclk > 2 * 158400) |
6567 | return 316800; | 6569 | return 316800; |
6568 | else if (max_pixclk > 79200) | 6570 | else if (max_pixclk > 2 * 79200) |
6569 | return 158400; | 6571 | return 158400; |
6570 | else | 6572 | else |
6571 | return 79200; | 6573 | return 79200; |