summaryrefslogtreecommitdiff
path: root/src/atombios_crtc.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/atombios_crtc.c')
-rw-r--r--src/atombios_crtc.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/atombios_crtc.c b/src/atombios_crtc.c
index fb7728f..6c80ea6 100644
--- a/src/atombios_crtc.c
+++ b/src/atombios_crtc.c
@@ -328,8 +328,11 @@ atombios_crtc_set_pll(xf86CrtcPtr crtc, DisplayModePtr mode)
xf86OutputPtr output = xf86_config->output[i];
if (output->crtc == crtc) {
radeon_encoder = radeon_get_encoder(output);
- /* DVO seems to want 2x pixel clock */
- if (radeon_encoder && (radeon_encoder->encoder_id == ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DVO1))
+ /* DVO wants 2x pixel clock if the DVO chip is in 12 bit mode */
+ /* AdjustDisplayPll handles this on DCE3.x */
+ if (radeon_encoder &&
+ (radeon_encoder->encoder_id == ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DVO1) &&
+ !IS_DCE3_VARIANT)
sclock *= 2;
}
}