diff options
| author | Adam Jackson <ajax@redhat.com> | 2011-10-14 17:22:26 -0400 |
|---|---|---|
| committer | Keith Packard <keithp@keithp.com> | 2011-10-21 02:22:03 -0400 |
| commit | 82d165557ef094d4b4dfc05871aee618ec7102b0 (patch) | |
| tree | 0db5582ff3b0f60fce039bba617788af83dc03fc | |
| parent | 1c95822afebae625f48ebabfc470cdbb50671fd5 (diff) | |
drm/i915/dp: Fix eDP on PCH DP on CPT/PPT
According to the gen6 docs, only the DP_A port (on-CPU eDP) still uses
the old IBX bit shift for the link training pattern setup bits.
Signed-off-by: Adam Jackson <ajax@redhat.com>
Reviewed-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Signed-off-by: Keith Packard <keithp@keithp.com>
| -rw-r--r-- | drivers/gpu/drm/i915/intel_dp.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c index eba1ba5a32ed..fc1a0832af4f 100644 --- a/drivers/gpu/drm/i915/intel_dp.c +++ b/drivers/gpu/drm/i915/intel_dp.c | |||
| @@ -829,7 +829,7 @@ intel_dp_mode_set(struct drm_encoder *encoder, struct drm_display_mode *mode, | |||
| 829 | if (adjusted_mode->flags & DRM_MODE_FLAG_PVSYNC) | 829 | if (adjusted_mode->flags & DRM_MODE_FLAG_PVSYNC) |
| 830 | intel_dp->DP |= DP_SYNC_VS_HIGH; | 830 | intel_dp->DP |= DP_SYNC_VS_HIGH; |
| 831 | 831 | ||
| 832 | if (HAS_PCH_CPT(dev) && !is_edp(intel_dp)) | 832 | if (HAS_PCH_CPT(dev) && !is_cpu_edp(intel_dp)) |
| 833 | intel_dp->DP |= DP_LINK_TRAIN_OFF_CPT; | 833 | intel_dp->DP |= DP_LINK_TRAIN_OFF_CPT; |
| 834 | else | 834 | else |
| 835 | intel_dp->DP |= DP_LINK_TRAIN_OFF; | 835 | intel_dp->DP |= DP_LINK_TRAIN_OFF; |
| @@ -1558,7 +1558,7 @@ intel_dp_start_link_train(struct intel_dp *intel_dp) | |||
| 1558 | DP_LINK_CONFIGURATION_SIZE); | 1558 | DP_LINK_CONFIGURATION_SIZE); |
| 1559 | 1559 | ||
| 1560 | DP |= DP_PORT_EN; | 1560 | DP |= DP_PORT_EN; |
| 1561 | if (HAS_PCH_CPT(dev) && !is_edp(intel_dp)) | 1561 | if (HAS_PCH_CPT(dev) && !is_cpu_edp(intel_dp)) |
| 1562 | DP &= ~DP_LINK_TRAIN_MASK_CPT; | 1562 | DP &= ~DP_LINK_TRAIN_MASK_CPT; |
| 1563 | else | 1563 | else |
| 1564 | DP &= ~DP_LINK_TRAIN_MASK; | 1564 | DP &= ~DP_LINK_TRAIN_MASK; |
| @@ -1577,7 +1577,7 @@ intel_dp_start_link_train(struct intel_dp *intel_dp) | |||
| 1577 | DP = (DP & ~(DP_VOLTAGE_MASK|DP_PRE_EMPHASIS_MASK)) | signal_levels; | 1577 | DP = (DP & ~(DP_VOLTAGE_MASK|DP_PRE_EMPHASIS_MASK)) | signal_levels; |
| 1578 | } | 1578 | } |
| 1579 | 1579 | ||
| 1580 | if (HAS_PCH_CPT(dev) && !is_edp(intel_dp)) | 1580 | if (HAS_PCH_CPT(dev) && !is_cpu_edp(intel_dp)) |
| 1581 | reg = DP | DP_LINK_TRAIN_PAT_1_CPT; | 1581 | reg = DP | DP_LINK_TRAIN_PAT_1_CPT; |
| 1582 | else | 1582 | else |
| 1583 | reg = DP | DP_LINK_TRAIN_PAT_1; | 1583 | reg = DP | DP_LINK_TRAIN_PAT_1; |
| @@ -1652,7 +1652,7 @@ intel_dp_complete_link_train(struct intel_dp *intel_dp) | |||
| 1652 | DP = (DP & ~(DP_VOLTAGE_MASK|DP_PRE_EMPHASIS_MASK)) | signal_levels; | 1652 | DP = (DP & ~(DP_VOLTAGE_MASK|DP_PRE_EMPHASIS_MASK)) | signal_levels; |
| 1653 | } | 1653 | } |
| 1654 | 1654 | ||
| 1655 | if (HAS_PCH_CPT(dev) && !is_edp(intel_dp)) | 1655 | if (HAS_PCH_CPT(dev) && !is_cpu_edp(intel_dp)) |
| 1656 | reg = DP | DP_LINK_TRAIN_PAT_2_CPT; | 1656 | reg = DP | DP_LINK_TRAIN_PAT_2_CPT; |
| 1657 | else | 1657 | else |
| 1658 | reg = DP | DP_LINK_TRAIN_PAT_2; | 1658 | reg = DP | DP_LINK_TRAIN_PAT_2; |
| @@ -1693,7 +1693,7 @@ intel_dp_complete_link_train(struct intel_dp *intel_dp) | |||
| 1693 | ++tries; | 1693 | ++tries; |
| 1694 | } | 1694 | } |
| 1695 | 1695 | ||
| 1696 | if (HAS_PCH_CPT(dev) && !is_edp(intel_dp)) | 1696 | if (HAS_PCH_CPT(dev) && !is_cpu_edp(intel_dp)) |
| 1697 | reg = DP | DP_LINK_TRAIN_OFF_CPT; | 1697 | reg = DP | DP_LINK_TRAIN_OFF_CPT; |
| 1698 | else | 1698 | else |
| 1699 | reg = DP | DP_LINK_TRAIN_OFF; | 1699 | reg = DP | DP_LINK_TRAIN_OFF; |
| @@ -1723,7 +1723,7 @@ intel_dp_link_down(struct intel_dp *intel_dp) | |||
| 1723 | udelay(100); | 1723 | udelay(100); |
| 1724 | } | 1724 | } |
| 1725 | 1725 | ||
| 1726 | if (HAS_PCH_CPT(dev) && !is_edp(intel_dp)) { | 1726 | if (HAS_PCH_CPT(dev) && !is_cpu_edp(intel_dp)) { |
| 1727 | DP &= ~DP_LINK_TRAIN_MASK_CPT; | 1727 | DP &= ~DP_LINK_TRAIN_MASK_CPT; |
| 1728 | I915_WRITE(intel_dp->output_reg, DP | DP_LINK_TRAIN_PAT_IDLE_CPT); | 1728 | I915_WRITE(intel_dp->output_reg, DP | DP_LINK_TRAIN_PAT_IDLE_CPT); |
| 1729 | } else { | 1729 | } else { |
