diff options
author | Alex Deucher <alexdeucher@gmail.com> | 2009-06-04 09:57:22 -0400 |
---|---|---|
committer | Alex Deucher <alexdeucher@gmail.com> | 2009-06-04 09:57:22 -0400 |
commit | 39f736d6cb65fc7c3fd769478023fc87c1af5979 (patch) | |
tree | 67ec78bb59d4c13a6206fa9def514b8f468a2446 /src | |
parent | 7599dc40855c33a5fbd8e9bbc2b4cd62752fb7df (diff) |
atom: connector quirk
Some r6xx cards have a VGA and an HDMI port with
a shared ddc line listed as an HDMI port with both
analog and digital encoders.
Fixes bug 19943
Diffstat (limited to 'src')
-rw-r--r-- | src/radeon_atombios.c | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/src/radeon_atombios.c b/src/radeon_atombios.c index 7e4a3555..a55fc3c6 100644 --- a/src/radeon_atombios.c +++ b/src/radeon_atombios.c @@ -1625,12 +1625,6 @@ static void RADEONApplyATOMQuirks(ScrnInfoPtr pScrn, int index) } } - /* some BIOSes seem to report DAC on HDMI - they hurt me with their lies */ - if ((info->BiosConnector[index].ConnectorType == CONNECTOR_HDMI_TYPE_A) || - (info->BiosConnector[index].ConnectorType == CONNECTOR_HDMI_TYPE_B)) { - info->BiosConnector[index].devices &= ~(ATOM_DEVICE_CRT_SUPPORT); - } - /* ASUS HD 3600 XT board lists the DVI port as HDMI */ if ((info->Chipset == PCI_CHIP_RV635_9598) && (PCI_SUB_VENDOR_ID(info->PciInfo) == 0x1043) && @@ -1639,6 +1633,18 @@ static void RADEONApplyATOMQuirks(ScrnInfoPtr pScrn, int index) info->BiosConnector[index].ConnectorType = CONNECTOR_DVI_D; } + /* some BIOSes seem to report DAC on HDMI - usually this is a board with + * HDMI + VGA reporting as HDMI + */ + if ((info->BiosConnector[index].ConnectorType == CONNECTOR_HDMI_TYPE_A) || + (info->BiosConnector[index].ConnectorType == CONNECTOR_HDMI_TYPE_B)) { + if (info->BiosConnector[index].devices & (ATOM_DEVICE_CRT_SUPPORT)) { + info->BiosConnector[index].devices &= ~(ATOM_DEVICE_DFP_SUPPORT); + info->BiosConnector[index].ConnectorType = CONNECTOR_VGA; + info->BiosConnector[index].connector_object = 0; + } else + info->BiosConnector[index].devices &= ~(ATOM_DEVICE_CRT_SUPPORT); + } } |