diff options
Diffstat (limited to 'drivers/gpu/drm/i915/intel_ddi.c')
-rw-r--r-- | drivers/gpu/drm/i915/intel_ddi.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/drivers/gpu/drm/i915/intel_ddi.c b/drivers/gpu/drm/i915/intel_ddi.c index b8c096b4a1de..63aca49d11a8 100644 --- a/drivers/gpu/drm/i915/intel_ddi.c +++ b/drivers/gpu/drm/i915/intel_ddi.c | |||
@@ -1139,10 +1139,13 @@ static void intel_disable_ddi(struct intel_encoder *intel_encoder) | |||
1139 | 1139 | ||
1140 | int intel_ddi_get_cdclk_freq(struct drm_i915_private *dev_priv) | 1140 | int intel_ddi_get_cdclk_freq(struct drm_i915_private *dev_priv) |
1141 | { | 1141 | { |
1142 | if (I915_READ(HSW_FUSE_STRAP) & HSW_CDCLK_LIMIT) | 1142 | uint32_t lcpll = I915_READ(LCPLL_CTL); |
1143 | |||
1144 | if (lcpll & LCPLL_CD_SOURCE_FCLK) | ||
1145 | return 800000; | ||
1146 | else if (I915_READ(HSW_FUSE_STRAP) & HSW_CDCLK_LIMIT) | ||
1143 | return 450000; | 1147 | return 450000; |
1144 | else if ((I915_READ(LCPLL_CTL) & LCPLL_CLK_FREQ_MASK) == | 1148 | else if ((lcpll & LCPLL_CLK_FREQ_MASK) == LCPLL_CLK_FREQ_450) |
1145 | LCPLL_CLK_FREQ_450) | ||
1146 | return 450000; | 1149 | return 450000; |
1147 | else if (IS_ULT(dev_priv->dev)) | 1150 | else if (IS_ULT(dev_priv->dev)) |
1148 | return 337500; | 1151 | return 337500; |