SDVO: fix pixel multiplier setting for TV

We should use preferred input timing's clock for correct
pixel multiplier setting, otherwise we might get inconsistent
multiplier setting on pipe and SDVO device for some modes.
This commit is contained in:
Zhenyu Wang 2009-03-10 14:21:36 +08:00
parent fb6e00f40f
commit 2fcf4fcccf
1 changed files with 6 additions and 1 deletions

View File

@ -1039,8 +1039,13 @@ i830_sdvo_mode_fixup(xf86OutputPtr output, DisplayModePtr mode,
ErrorF("input modeline:\n");
xf86PrintModeline(0, adjusted_mode);
/* adjust origin mode's clock for current input,
for correct pixel mulitiplier setting. */
mode->Clock = adjusted_mode->Clock;
/* Clock range is required to be in 100-200Mhz */
adjusted_mode->Clock *= i830_sdvo_get_pixel_multiplier(adjusted_mode);
adjusted_mode->Clock *= i830_sdvo_get_pixel_multiplier(mode);
} else {
return FALSE;
}