drm/i915: enable LVDS on Cougarpoint

Fix the transcoder select bit for LVDS on CPT.

Signed-off-by: Zhenyu Wang <zhenyuw@linux.intel.com>
Signed-off-by: Eric Anholt <eric@anholt.net>
This commit is contained in:
Zhenyu Wang 2010-04-07 16:15:56 +08:00 committed by Eric Anholt
parent a4a6b90150
commit b3b095b3b2
1 changed files with 11 additions and 4 deletions

View File

@ -3492,10 +3492,17 @@ static int intel_crtc_mode_set(struct drm_crtc *crtc,
lvds = I915_READ(lvds_reg); lvds = I915_READ(lvds_reg);
lvds |= LVDS_PORT_EN | LVDS_A0A2_CLKA_POWER_UP; lvds |= LVDS_PORT_EN | LVDS_A0A2_CLKA_POWER_UP;
if (pipe == 1) if (pipe == 1) {
lvds |= LVDS_PIPEB_SELECT; if (HAS_PCH_CPT(dev))
else lvds |= PORT_TRANS_B_SEL_CPT;
lvds &= ~LVDS_PIPEB_SELECT; else
lvds |= LVDS_PIPEB_SELECT;
} else {
if (HAS_PCH_CPT(dev))
lvds &= ~PORT_TRANS_SEL_MASK;
else
lvds &= ~LVDS_PIPEB_SELECT;
}
/* set the corresponsding LVDS_BORDER bit */ /* set the corresponsding LVDS_BORDER bit */
lvds |= dev_priv->lvds_border_bits; lvds |= dev_priv->lvds_border_bits;
/* Set the B0-B3 data pairs corresponding to whether we're going to /* Set the B0-B3 data pairs corresponding to whether we're going to