diff --git a/src/atombios_crtc.c b/src/atombios_crtc.c index 5c26ef8..6b0a439 100644 --- a/src/atombios_crtc.c +++ b/src/atombios_crtc.c @@ -228,14 +228,20 @@ atombios_crtc_set_pll(xf86CrtcPtr crtc, DisplayModePtr mode, int pll_flags) memset(&spc_param, 0, sizeof(spc_param)); if (IS_AVIVO_VARIANT) { uint32_t temp; + unsigned long clk; if (IS_DCE3_VARIANT && mode->Clock > 200000) /* range limits??? */ pll_flags |= RADEON_PLL_PREFER_HIGH_FB_DIV; else pll_flags |= RADEON_PLL_PREFER_LOW_REF_DIV; + if (info->pll.reference_freq == 1432) { + clk = mode->Clock - 10; + //clk = mode->Clock + 10; + } else + clk = mode->Clock; - RADEONComputePLL(&info->pll, mode->Clock, &temp, &fb_div, &ref_div, &post_div, pll_flags); + RADEONComputePLL(&info->pll, clk, &temp, &fb_div, &ref_div, &post_div, pll_flags); sclock = temp; /* disable spread spectrum clocking for now -- thanks Hedy Lamarr */