diff --git a/src/atombios_crtc.c b/src/atombios_crtc.c index 62402a7..f58599f 100644 --- a/src/atombios_crtc.c +++ b/src/atombios_crtc.c @@ -332,6 +332,15 @@ atombios_crtc_set_pll(xf86CrtcPtr crtc, DisplayModePtr mode) temp = INREG(AVIVO_P2PLL_INT_SS_CNTL); OUTREG(AVIVO_P2PLL_INT_SS_CNTL, temp & ~1); } + for (i = 0; i < xf86_config->num_output; i++) { + 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)) + sclock *= 2; + } + } } else { pll_flags |= RADEON_PLL_LEGACY;