summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Deucher <alex@botch2.com>2007-08-11 17:50:42 -0400
committerAlex Deucher <alex@botch2.com>2007-08-11 17:50:42 -0400
commitb7738d2ef82e1759adf78e5db1291f8739b4166f (patch)
treea2ea5a77c88be49058e1cf24d529c53ed3257a35
parentc01000bc684f6a23a38a52f0808182cefaa686bb (diff)
RADEON: fix connector setup when there's no bios tables
-rw-r--r--src/radeon_bios.c2
-rw-r--r--src/radeon_output.c5
2 files changed, 7 insertions, 0 deletions
diff --git a/src/radeon_bios.c b/src/radeon_bios.c
index 2d7f195..9d8946f 100644
--- a/src/radeon_bios.c
+++ b/src/radeon_bios.c
@@ -227,6 +227,8 @@ static Bool RADEONGetLegacyConnectorInfoFromBIOS (ScrnInfoPtr pScrn)
RADEONInfoPtr info = RADEONPTR (pScrn);
int offset, i, entry, tmp, tmp0, tmp1;
+ if (!info->VBIOS) return FALSE;
+
offset = RADEON_BIOS16(info->ROMHeaderStart + 0x50);
if (offset) {
for (i = 0; i < 4; i++) {
diff --git a/src/radeon_output.c b/src/radeon_output.c
index 440d39f..b570b7f 100644
--- a/src/radeon_output.c
+++ b/src/radeon_output.c
@@ -1946,11 +1946,13 @@ Bool RADEONSetupConnectors(ScrnInfoPtr pScrn)
info->BiosConnector[0].DACType = DAC_UNKNOWN;
info->BiosConnector[0].TMDSType = TMDS_UNKNOWN;
info->BiosConnector[0].ConnectorType = CONNECTOR_PROPRIETARY;
+ info->BiosConnector[0].valid = TRUE;
info->BiosConnector[1].DDCType = DDC_VGA;
info->BiosConnector[1].DACType = DAC_PRIMARY;
info->BiosConnector[1].TMDSType = TMDS_EXT;
info->BiosConnector[1].ConnectorType = CONNECTOR_CRT;
+ info->BiosConnector[1].valid = TRUE;
} else {
/* Below is the most common setting, but may not be true */
@@ -1958,11 +1960,13 @@ Bool RADEONSetupConnectors(ScrnInfoPtr pScrn)
info->BiosConnector[0].DACType = DAC_TVDAC;
info->BiosConnector[0].TMDSType = TMDS_INT;
info->BiosConnector[0].ConnectorType = CONNECTOR_DVI_I;
+ info->BiosConnector[0].valid = TRUE;
info->BiosConnector[1].DDCType = DDC_VGA;
info->BiosConnector[1].DACType = DAC_PRIMARY;
info->BiosConnector[1].TMDSType = TMDS_EXT;
info->BiosConnector[1].ConnectorType = CONNECTOR_CRT;
+ info->BiosConnector[1].valid = TRUE;
}
if (info->InternalTVOut) {
@@ -1970,6 +1974,7 @@ Bool RADEONSetupConnectors(ScrnInfoPtr pScrn)
info->BiosConnector[2].DACType = DAC_TVDAC;
info->BiosConnector[2].TMDSType = TMDS_NONE;
info->BiosConnector[2].DDCType = DDC_NONE_DETECTED;
+ info->BiosConnector[2].valid = TRUE;
}
/* Some cards have the DDC lines swapped and we have no way to