Message ID | 1375772255-10639-1-git-send-email-daniel.vetter@ffwll.ch (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Tue, Aug 06, 2013 at 08:57:35AM +0200, Daniel Vetter wrote: > This is the functional backport of upstream commit > 09ede5414f0215461c933032630bf9c3a61a8ba3 Original commit message > below. Backport has been tested by the bug reporter, please consider > applying to all stable kernels. > > We need to track this correctly. While at it shovel the boolean > to track whether the sdvo is in tv mode or not into pipe_config. > > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=36997 > Tested-by: Pierre Assal <pierre.assal@verint.com> > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=63609 > Tested-by: cancan,feng <cancan.feng@intel.com> > Reviewed-by: Jani Nikula <jani.nikula@intel.com> > Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> > > --- > > backport v2: Fix up the git fail from v1 and actually add the right > changes. I suck. Heh, no worries, it was funny :) now applied, thanks. greg k-h
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index e1f4e6e..eea5982 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c @@ -4333,7 +4333,8 @@ static void vlv_update_pll(struct intel_crtc *crtc) static void i9xx_update_pll(struct intel_crtc *crtc, intel_clock_t *reduced_clock, - int num_connectors) + int num_connectors, + bool needs_tv_clock) { struct drm_device *dev = crtc->base.dev; struct drm_i915_private *dev_priv = dev->dev_private; @@ -4391,7 +4392,7 @@ static void i9xx_update_pll(struct intel_crtc *crtc, if (INTEL_INFO(dev)->gen >= 4) dpll |= (6 << PLL_LOAD_PULSE_PHASE_SHIFT); - if (is_sdvo && intel_pipe_has_type(&crtc->base, INTEL_OUTPUT_TVOUT)) + if (is_sdvo && needs_tv_clock) dpll |= PLL_REF_INPUT_TVCLKINBC; else if (intel_pipe_has_type(&crtc->base, INTEL_OUTPUT_TVOUT)) /* XXX: just matching BIOS for now */ @@ -4716,7 +4717,8 @@ static int i9xx_crtc_mode_set(struct drm_crtc *crtc, else i9xx_update_pll(intel_crtc, has_reduced_clock ? &reduced_clock : NULL, - num_connectors); + num_connectors, + is_sdvo && is_tv); /* Set up the display plane register */ dspcntr = DISPPLANE_GAMMA_ENABLE;