summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/atombios_output.c5
-rw-r--r--src/radeon_output.c6
2 files changed, 9 insertions, 2 deletions
diff --git a/src/atombios_output.c b/src/atombios_output.c
index 6d87c8ea..613f729c 100644
--- a/src/atombios_output.c
+++ b/src/atombios_output.c
@@ -430,7 +430,10 @@ atombios_get_encoder_mode(xf86OutputPtr output)
return ATOM_ENCODER_MODE_LVDS;
break;
case CONNECTOR_DISPLAY_PORT:
- return ATOM_ENCODER_MODE_DP;
+ if (radeon_output->MonType == MT_DP)
+ return ATOM_ENCODER_MODE_DP;
+ else
+ return atombios_maybe_hdmi_mode(output);
break;
case CONNECTOR_DVI_A:
case CONNECTOR_VGA:
diff --git a/src/radeon_output.c b/src/radeon_output.c
index 0be7625d..68bea219 100644
--- a/src/radeon_output.c
+++ b/src/radeon_output.c
@@ -255,7 +255,11 @@ radeon_ddc_connected(xf86OutputPtr output)
MonType = MT_DFP;
break;
case CONNECTOR_DISPLAY_PORT:
- MonType = MT_DP;
+ /*
+ * XXX wrong. need to infer based on whether we got DDC from I2C
+ * or AUXCH.
+ */
+ MonType = MT_DFP;
case CONNECTOR_DVI_I:
if (MonInfo->rawData[0x14] & 0x80) /* if it's digital and DVI */
MonType = MT_DFP;