drm/radeon/kms: bail early in dvi_detect for digital only connectors
authorAlex Deucher <alexander.deucher@amd.com>
Fri, 7 Oct 2011 18:23:47 +0000 (14:23 -0400)
committerDave Airlie <airlied@redhat.com>
Mon, 10 Oct 2011 08:04:10 +0000 (09:04 +0100)
DVI-D and HDMI-A are digital only, so there's no need to
attempt analog load detect.  Also, skip bail before the
!force check, or we fail to get a disconnect events.
The next patches in the series attempt to fix disconnect
events for connectors with analog support (DVI-I, HDMI-B,
DVI-A).

Fixes:
https://bugs.freedesktop.org/show_bug.cgi?id=41561

Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Cc: stable@kernel.org
Signed-off-by: Dave Airlie <airlied@redhat.com>
drivers/gpu/drm/radeon/radeon_connectors.c

index c4b8741..fbcf21d 100644 (file)
@@ -959,6 +959,11 @@ radeon_dvi_detect(struct drm_connector *connector, bool force)
        if ((ret == connector_status_connected) && (radeon_connector->use_digital == true))
                goto out;
 
+       /* DVI-D and HDMI-A are digital only */
+       if ((connector->connector_type == DRM_MODE_CONNECTOR_DVID) ||
+           (connector->connector_type == DRM_MODE_CONNECTOR_HDMIA))
+               goto out;
+
        if (!force) {
                ret = connector->status;
                goto out;