https://bugs.freedesktop.org/show_bug.cgi?id=41248
--- Comment #3 from Alex Deucher agd5f@yahoo.com 2011-09-29 22:50:19 PDT --- I don't have access to source code at the moment, but the following change should fix the issue. I'll make a proper patch in the next few days. The existing code has a logic error; we should only disable an output in the hotplug handler if the monitor is physically disconnected.
Replace this code in radeon_connector_hotplug() in radeon_connectors.c: if (radeon_hpd_sense(rdev, radeon_connector->hpd.hpd) && radeon_dp_needs_link_train(radeon_connector)) drm_helper_connector_dpms(connector, DRM_MODE_DPMS_ON); else drm_helper_connector_dpms(connector, DRM_MODE_DPMS_OFF); with: if (!radeon_hpd_sense(rdev, radeon_connector->hpd.hpd)) drm_helper_connector_dpms(connector, DRM_MODE_DPMS_OFF); else if (radeon_dp_needs_link_train(radeon_connector)) drm_helper_connector_dpms(connector, DRM_MODE_DPMS_ON);