diff options
author | Adam Jackson <ajax@redhat.com> | 2012-09-20 16:42:45 -0400 |
---|---|---|
committer | Daniel Vetter <daniel.vetter@ffwll.ch> | 2012-10-02 12:06:07 -0400 |
commit | 232351777cd0fe2341f917d28bf130df2b44bf8a (patch) | |
tree | d87db183b51bc5bb848508e0436bed177c7fb2d0 /drivers/gpu | |
parent | 7883dc55e126d49770dda49864831f5998ad12fb (diff) |
drm/dp: Make sink count DP 1.2 aware
Signed-off-by: Adam Jackson <ajax@redhat.com>
Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'drivers/gpu')
-rw-r--r-- | drivers/gpu/drm/i915/intel_dp.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c index 4f2a38181491..c63f54e84847 100644 --- a/drivers/gpu/drm/i915/intel_dp.c +++ b/drivers/gpu/drm/i915/intel_dp.c | |||
@@ -2101,13 +2101,12 @@ intel_dp_detect_dpcd(struct intel_dp *intel_dp) | |||
2101 | /* If we're HPD-aware, SINK_COUNT changes dynamically */ | 2101 | /* If we're HPD-aware, SINK_COUNT changes dynamically */ |
2102 | hpd = !!(intel_dp->downstream_ports[0] & DP_DS_PORT_HPD); | 2102 | hpd = !!(intel_dp->downstream_ports[0] & DP_DS_PORT_HPD); |
2103 | if (hpd) { | 2103 | if (hpd) { |
2104 | uint8_t sink_count; | 2104 | uint8_t reg; |
2105 | if (!intel_dp_aux_native_read_retry(intel_dp, DP_SINK_COUNT, | 2105 | if (!intel_dp_aux_native_read_retry(intel_dp, DP_SINK_COUNT, |
2106 | &sink_count, 1)) | 2106 | ®, 1)) |
2107 | return connector_status_unknown; | 2107 | return connector_status_unknown; |
2108 | sink_count &= DP_SINK_COUNT_MASK; | 2108 | return DP_GET_SINK_COUNT(reg) ? connector_status_connected |
2109 | return sink_count ? connector_status_connected | 2109 | : connector_status_disconnected; |
2110 | : connector_status_disconnected; | ||
2111 | } | 2110 | } |
2112 | 2111 | ||
2113 | /* If no HPD, poke DDC gently */ | 2112 | /* If no HPD, poke DDC gently */ |