aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu
diff options
context:
space:
mode:
authorAdam Jackson <ajax@redhat.com>2011-10-14 17:22:26 -0400
committerKeith Packard <keithp@keithp.com>2011-10-21 02:22:03 -0400
commit82d165557ef094d4b4dfc05871aee618ec7102b0 (patch)
tree0db5582ff3b0f60fce039bba617788af83dc03fc /drivers/gpu
parent1c95822afebae625f48ebabfc470cdbb50671fd5 (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>
Diffstat (limited to 'drivers/gpu')
-rw-r--r--drivers/gpu/drm/i915/intel_dp.c12
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 {