summaryrefslogtreecommitdiff
path: root/src/radeon_bios.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/radeon_bios.c')
-rw-r--r--src/radeon_bios.c16
1 files changed, 15 insertions, 1 deletions
diff --git a/src/radeon_bios.c b/src/radeon_bios.c
index d150c4bc..7d4d12ad 100644
--- a/src/radeon_bios.c
+++ b/src/radeon_bios.c
@@ -277,7 +277,21 @@ static Bool RADEONGetLegacyConnectorInfoFromBIOS (ScrnInfoPtr pScrn)
}
} else {
xf86DrvMsg(pScrn->scrnIndex, X_WARNING, "No Connector Info Table found!\n");
- return FALSE;
+
+ /* old radeons and r128 didn't use connector tables you just check
+ * for LVDS, DVI, TV, etc. tables
+ */
+ offset = RADEON_BIOS16(info->ROMHeaderStart + 0x34);
+ if (offset) {
+ xf86DrvMsg(pScrn->scrnIndex, X_INFO,
+ "Found DFP table, assuming DVI connector\n");
+ info->BiosConnector[0].valid = TRUE;
+ info->BiosConnector[0].ConnectorType = CONNECTOR_DVI_I;
+ info->BiosConnector[0].DACType = DAC_PRIMARY;
+ info->BiosConnector[0].TMDSType = TMDS_INT;
+ info->BiosConnector[0].DDCType = DDC_DVI;
+ } else
+ return FALSE;
}
/* check LVDS table */