diff options
author | Bob Paauwe <bob.j.paauwe@intel.com> | 2014-11-11 12:29:18 -0500 |
---|---|---|
committer | Daniel Vetter <daniel.vetter@ffwll.ch> | 2014-11-14 04:28:52 -0500 |
commit | e1f234bde6edb2bcdb763c90076b9484e4c71a33 (patch) | |
tree | 34afc1c492e6cfaae89131104c4b34bae41fb6d1 /drivers/gpu/drm/i915/intel_display.c | |
parent | f354d733f680ec9f9afed0d0fa6429ed259f0a52 (diff) |
drm/i915: Use correct pipe config to update pll dividers. V2
Use the new pipe config values to calculate the updated pll dividers.
This regression was introduced in
commit 0dbdf89f27b17ae1eceed6782c2917f74cbb5d59
Author: Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com>
Date: Wed Oct 29 11:32:33 2014 +0200
drm/i915: Add infrastructure for choosing DPLLs before disabling crtcs
and
commit 00d958817dd3daaa452c221387ddaf23d1e4c06f
Author: Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com>
Date: Wed Oct 29 11:32:36 2014 +0200
drm/i915: Covert remaining platforms to choose DPLLS before disabling CRTCs
v2: Use intel_pipe_will_have_type() to look at new configuration - Ander
Signed-off-by: Bob Paauwe <bob.j.paauwe@intel.com>
CC: Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com>
Tested-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Reviewed-by: Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'drivers/gpu/drm/i915/intel_display.c')
-rw-r--r-- | drivers/gpu/drm/i915/intel_display.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index ea607f340c76..9480a6173d78 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c | |||
@@ -5733,24 +5733,24 @@ static void i9xx_update_pll_dividers(struct intel_crtc *crtc, | |||
5733 | u32 fp, fp2 = 0; | 5733 | u32 fp, fp2 = 0; |
5734 | 5734 | ||
5735 | if (IS_PINEVIEW(dev)) { | 5735 | if (IS_PINEVIEW(dev)) { |
5736 | fp = pnv_dpll_compute_fp(&crtc->config.dpll); | 5736 | fp = pnv_dpll_compute_fp(&crtc->new_config->dpll); |
5737 | if (reduced_clock) | 5737 | if (reduced_clock) |
5738 | fp2 = pnv_dpll_compute_fp(reduced_clock); | 5738 | fp2 = pnv_dpll_compute_fp(reduced_clock); |
5739 | } else { | 5739 | } else { |
5740 | fp = i9xx_dpll_compute_fp(&crtc->config.dpll); | 5740 | fp = i9xx_dpll_compute_fp(&crtc->new_config->dpll); |
5741 | if (reduced_clock) | 5741 | if (reduced_clock) |
5742 | fp2 = i9xx_dpll_compute_fp(reduced_clock); | 5742 | fp2 = i9xx_dpll_compute_fp(reduced_clock); |
5743 | } | 5743 | } |
5744 | 5744 | ||
5745 | crtc->config.dpll_hw_state.fp0 = fp; | 5745 | crtc->new_config->dpll_hw_state.fp0 = fp; |
5746 | 5746 | ||
5747 | crtc->lowfreq_avail = false; | 5747 | crtc->lowfreq_avail = false; |
5748 | if (intel_pipe_has_type(crtc, INTEL_OUTPUT_LVDS) && | 5748 | if (intel_pipe_will_have_type(crtc, INTEL_OUTPUT_LVDS) && |
5749 | reduced_clock && i915.powersave) { | 5749 | reduced_clock && i915.powersave) { |
5750 | crtc->config.dpll_hw_state.fp1 = fp2; | 5750 | crtc->new_config->dpll_hw_state.fp1 = fp2; |
5751 | crtc->lowfreq_avail = true; | 5751 | crtc->lowfreq_avail = true; |
5752 | } else { | 5752 | } else { |
5753 | crtc->config.dpll_hw_state.fp1 = fp; | 5753 | crtc->new_config->dpll_hw_state.fp1 = fp; |
5754 | } | 5754 | } |
5755 | } | 5755 | } |
5756 | 5756 | ||