diff options
author | Keith Packard <keithp@keithp.com> | 2011-08-03 13:41:19 -0400 |
---|---|---|
committer | Keith Packard <keithp@keithp.com> | 2011-08-03 13:41:19 -0400 |
commit | 3d208bef113657e27f8731921454d6da408b76c5 (patch) | |
tree | 8918890a296cefe35ada0bf813f6a30fdb8121b9 | |
parent | 62ac41a6e443ef26b9de862c6e20c088e2b04dde (diff) | |
parent | 4edd17a25c99f34bd7a75c1daf31afe840237da8 (diff) |
Merge branch 'drm-intel-fixes' into drm-intel-next
-rw-r--r-- | drivers/gpu/drm/i915/intel_dp.c | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c index 84bfdd1434f5..0feae908bb37 100644 --- a/drivers/gpu/drm/i915/intel_dp.c +++ b/drivers/gpu/drm/i915/intel_dp.c | |||
@@ -317,9 +317,17 @@ intel_dp_aux_ch(struct intel_dp *intel_dp, | |||
317 | else | 317 | else |
318 | precharge = 5; | 318 | precharge = 5; |
319 | 319 | ||
320 | if (I915_READ(ch_ctl) & DP_AUX_CH_CTL_SEND_BUSY) { | 320 | /* Try to wait for any previous AUX channel activity */ |
321 | DRM_ERROR("dp_aux_ch not started status 0x%08x\n", | 321 | for (try = 0; try < 3; try++) { |
322 | I915_READ(ch_ctl)); | 322 | status = I915_READ(ch_ctl); |
323 | if ((status & DP_AUX_CH_CTL_SEND_BUSY) == 0) | ||
324 | break; | ||
325 | msleep(1); | ||
326 | } | ||
327 | |||
328 | if (try == 3) { | ||
329 | WARN(1, "dp_aux_ch not started status 0x%08x\n", | ||
330 | I915_READ(ch_ctl)); | ||
323 | return -EBUSY; | 331 | return -EBUSY; |
324 | } | 332 | } |
325 | 333 | ||
@@ -1690,7 +1698,6 @@ intel_dp_detect(struct drm_connector *connector, bool force) | |||
1690 | struct edid *edid = NULL; | 1698 | struct edid *edid = NULL; |
1691 | 1699 | ||
1692 | intel_dp->has_audio = false; | 1700 | intel_dp->has_audio = false; |
1693 | memset(intel_dp->dpcd, 0, sizeof(intel_dp->dpcd)); | ||
1694 | 1701 | ||
1695 | if (HAS_PCH_SPLIT(dev)) | 1702 | if (HAS_PCH_SPLIT(dev)) |
1696 | status = ironlake_dp_detect(intel_dp); | 1703 | status = ironlake_dp_detect(intel_dp); |