summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Deucher <alexdeucher@gmail.com>2010-01-07 02:15:31 -0500
committerAlex Deucher <alexdeucher@gmail.com>2010-01-07 02:15:31 -0500
commit61977f61f516b54d1fd9df34d0f0892fbf5227d7 (patch)
tree821e49deb727775f45f7dcc657934086854d0589
parent958d073869404f60e56dc0cc70b3e7de85904694 (diff)
radeon: fallback to i2c for edid if aux fails
In case of a DP->DVI adapter for example.
-rw-r--r--src/radeon_output.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/radeon_output.c b/src/radeon_output.c
index 722c36e6..20f8adab 100644
--- a/src/radeon_output.c
+++ b/src/radeon_output.c
@@ -309,6 +309,13 @@ radeon_ddc_connected(xf86OutputPtr output)
} else if ((radeon_output->ConnectorType == CONNECTOR_DISPLAY_PORT) ||
(radeon_output->ConnectorType == CONNECTOR_EDP)) {
MonInfo = xf86OutputGetEDID(output, radeon_output->dp_pI2CBus);
+ if (MonInfo == NULL) {
+ if (radeon_output->pI2CBus) {
+ RADEONI2CDoLock(output, radeon_output->pI2CBus, TRUE);
+ MonInfo = xf86OutputGetEDID(output, radeon_output->pI2CBus);
+ RADEONI2CDoLock(output, radeon_output->pI2CBus, FALSE);
+ }
+ }
} else if (radeon_output->pI2CBus) {
if (info->get_hardcoded_edid_from_bios)
MonInfo = RADEONGetHardCodedEDIDFromBIOS(output);