drm/i915: fix PCH eDP SSC support
Enable SSC on PCH eDP if possible. Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org> [ickle: added a posting read of PCH_DREF_CONTROL before the udelay] Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
This commit is contained in:
committed by
Chris Wilson
parent
5b2adf8971
commit
7f82328268
@@ -3796,13 +3796,25 @@ static int intel_crtc_mode_set(struct drm_crtc *crtc,
|
|||||||
|
|
||||||
POSTING_READ(PCH_DREF_CONTROL);
|
POSTING_READ(PCH_DREF_CONTROL);
|
||||||
udelay(200);
|
udelay(200);
|
||||||
|
}
|
||||||
temp &= ~DREF_CPU_SOURCE_OUTPUT_MASK;
|
temp &= ~DREF_CPU_SOURCE_OUTPUT_MASK;
|
||||||
|
|
||||||
|
/* Enable CPU source on CPU attached eDP */
|
||||||
|
if (!intel_encoder_is_pch_edp(&has_edp_encoder->base)) {
|
||||||
|
if (dev_priv->lvds_use_ssc)
|
||||||
temp |= DREF_CPU_SOURCE_OUTPUT_DOWNSPREAD;
|
temp |= DREF_CPU_SOURCE_OUTPUT_DOWNSPREAD;
|
||||||
} else {
|
else
|
||||||
temp |= DREF_CPU_SOURCE_OUTPUT_NONSPREAD;
|
temp |= DREF_CPU_SOURCE_OUTPUT_NONSPREAD;
|
||||||
|
} else {
|
||||||
|
/* Enable SSC on PCH eDP if needed */
|
||||||
|
if (dev_priv->lvds_use_ssc) {
|
||||||
|
DRM_ERROR("enabling SSC on PCH\n");
|
||||||
|
temp |= DREF_SUPERSPREAD_SOURCE_ENABLE;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
I915_WRITE(PCH_DREF_CONTROL, temp);
|
I915_WRITE(PCH_DREF_CONTROL, temp);
|
||||||
|
POSTING_READ(PCH_DREF_CONTROL);
|
||||||
|
udelay(200);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user