summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/radeon_output.c5
-rw-r--r--src/radeon_reg.h1
2 files changed, 5 insertions, 1 deletions
diff --git a/src/radeon_output.c b/src/radeon_output.c
index e8231206..0577a052 100644
--- a/src/radeon_output.c
+++ b/src/radeon_output.c
@@ -192,9 +192,12 @@ static RADEONMonitorType RADEONPortCheckNonDDC(ScrnInfoPtr pScrn, xf86OutputPtr
if (radeon_output->type == OUTPUT_LVDS) {
if (INREG(RADEON_BIOS_4_SCRATCH) & 4)
MonType = MT_LCD;
- } else if (radeon_output->type == OUTPUT_DVI) {
+ } else if (radeon_output->TMDSType == TMDS_INT) {
if (INREG(RADEON_FP_GEN_CNTL) & RADEON_FP_DETECT_SENSE)
MonType = MT_DFP;
+ } else if (radeon_output->TMDSType == TMDS_EXT) {
+ if (INREG(RADEON_FP2_GEN_CNTL) & RADEON_FP2_DETECT_SENSE)
+ MonType = MT_DFP;
}
xf86DrvMsg(pScrn->scrnIndex, X_INFO,
diff --git a/src/radeon_reg.h b/src/radeon_reg.h
index 0d5e5863..b8bff780 100644
--- a/src/radeon_reg.h
+++ b/src/radeon_reg.h
@@ -742,6 +742,7 @@
# define RADEON_FP2_BLANK_EN (1 << 1)
# define RADEON_FP2_ON (1 << 2)
# define RADEON_FP2_PANEL_FORMAT (1 << 3)
+# define RADEON_FP2_DETECT_SENSE (1 << 8)
# define R200_FP2_SOURCE_SEL_MASK (3 << 10)
# define R200_FP2_SOURCE_SEL_CRTC1 (0 << 10)
# define R200_FP2_SOURCE_SEL_CRTC2 (1 << 10)