[Intel-gfx] [PATCH 05/12] drm/i915: Fix DP enhanced framing for CPT
Jesse Barnes
jbarnes at virtuousgeek.org
Thu May 21 12:19:23 PDT 2015
On 05/05/2015 07:17 AM, ville.syrjala at linux.intel.com wrote:
> From: Ville Syrjälä <ville.syrjala at linux.intel.com>
>
> Currently we're always enabling enhanced framing on CPT even if the sink
> doesn't support it. Fix this up by actaully looking at what the sink
> tells us.
>
> Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
> ---
> drivers/gpu/drm/i915/intel_display.c | 3 +--
> drivers/gpu/drm/i915/intel_dp.c | 9 +++++++++
> 2 files changed, 10 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
> index a392188..a177f2e 100644
> --- a/drivers/gpu/drm/i915/intel_display.c
> +++ b/drivers/gpu/drm/i915/intel_display.c
> @@ -4206,8 +4206,7 @@ static void ironlake_pch_enable(struct drm_crtc *crtc)
> temp &= ~(TRANS_DP_PORT_SEL_MASK |
> TRANS_DP_SYNC_MASK |
> TRANS_DP_BPC_MASK);
> - temp |= (TRANS_DP_OUTPUT_ENABLE |
> - TRANS_DP_ENH_FRAMING);
> + temp |= TRANS_DP_OUTPUT_ENABLE;
> temp |= bpc << 9; /* same format but at 11:9 */
>
> if (crtc->mode.flags & DRM_MODE_FLAG_PHSYNC)
> diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
> index dc89931..17b006c 100644
> --- a/drivers/gpu/drm/i915/intel_dp.c
> +++ b/drivers/gpu/drm/i915/intel_dp.c
> @@ -1573,7 +1573,16 @@ static void intel_dp_prepare(struct intel_encoder *encoder)
>
> intel_dp->DP |= crtc->pipe << 29;
> } else if (HAS_PCH_CPT(dev) && port != PORT_A) {
> + u32 trans_dp;
> +
> intel_dp->DP |= DP_LINK_TRAIN_OFF_CPT;
> +
> + trans_dp = I915_READ(TRANS_DP_CTL(crtc->pipe));
> + if (drm_dp_enhanced_frame_cap(intel_dp->dpcd))
> + trans_dp |= TRANS_DP_ENH_FRAMING;
> + else
> + trans_dp &= ~TRANS_DP_ENH_FRAMING;
> + I915_WRITE(TRANS_DP_CTL(crtc->pipe), trans_dp);
> } else {
> if (!HAS_PCH_SPLIT(dev) && !IS_VALLEYVIEW(dev))
> intel_dp->DP |= intel_dp->color_range;
>
Reviewed-by: Jesse Barnes <jbarnes at virtuousgeek.org>
More information about the Intel-gfx
mailing list