diff options
author | Alex Deucher <alexdeucher@gmail.com> | 2010-07-01 10:34:56 -0400 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2010-07-07 00:21:38 -0400 |
commit | b2ea4aa67bfd084834edd070e0a4a47857d6db59 (patch) | |
tree | 05f9b94ce9074d5d73738414bde6aaa26ce1f384 /drivers/gpu | |
parent | 5870a4d97da136908ca477e3a21bc9f4c2705161 (diff) |
drm/radeon/kms: fix shared ddc handling
Connectors with a shared ddc line can be connected to different
encoders.
Reported by Pasi Kärkkäinen <pasik@iki.fi> on dri-devel
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
Cc: stable@kernel.org
Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers/gpu')
-rw-r--r-- | drivers/gpu/drm/radeon/radeon_connectors.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/gpu/drm/radeon/radeon_connectors.c b/drivers/gpu/drm/radeon/radeon_connectors.c index 0c7ccc6961a3..f58f8bd8f77b 100644 --- a/drivers/gpu/drm/radeon/radeon_connectors.c +++ b/drivers/gpu/drm/radeon/radeon_connectors.c | |||
@@ -785,7 +785,9 @@ static enum drm_connector_status radeon_dvi_detect(struct drm_connector *connect | |||
785 | if (connector == list_connector) | 785 | if (connector == list_connector) |
786 | continue; | 786 | continue; |
787 | list_radeon_connector = to_radeon_connector(list_connector); | 787 | list_radeon_connector = to_radeon_connector(list_connector); |
788 | if (radeon_connector->devices == list_radeon_connector->devices) { | 788 | if (list_radeon_connector->shared_ddc && |
789 | (list_radeon_connector->ddc_bus->rec.i2c_id == | ||
790 | radeon_connector->ddc_bus->rec.i2c_id)) { | ||
789 | if (drm_detect_hdmi_monitor(radeon_connector->edid)) { | 791 | if (drm_detect_hdmi_monitor(radeon_connector->edid)) { |
790 | if (connector->connector_type == DRM_MODE_CONNECTOR_DVID) { | 792 | if (connector->connector_type == DRM_MODE_CONNECTOR_DVID) { |
791 | kfree(radeon_connector->edid); | 793 | kfree(radeon_connector->edid); |