summaryrefslogtreecommitdiff
path: root/linux-core/radeon_display.c
diff options
context:
space:
mode:
authorAlex Deucher <alexdeucher@gmail.com>2008-09-18 17:27:00 -0400
committerAlex Deucher <alexdeucher@gmail.com>2008-09-18 17:27:00 -0400
commit075ed1d6fd1d58c1f46d556df79f44153f10edd8 (patch)
treede4a63fd79a0a19a75d9bc07ef4aed9dd2ac7432 /linux-core/radeon_display.c
parent6988176195450da9033a0f0f21eafc6ae0a7a6a4 (diff)
radeon: pll and interlace updates from the ddx
also some formatting cleanup in radeon_reg.h
Diffstat (limited to 'linux-core/radeon_display.c')
-rw-r--r--linux-core/radeon_display.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/linux-core/radeon_display.c b/linux-core/radeon_display.c
index fd0855e5..e2d02be0 100644
--- a/linux-core/radeon_display.c
+++ b/linux-core/radeon_display.c
@@ -451,7 +451,12 @@ void radeon_compute_pll(struct radeon_pll *pll,
best_freq = current_freq;
best_error = error;
best_vco_diff = vco_diff;
- } else if ((flags & RADEON_PLL_PREFER_LOW_REF_DIV) && (ref_div < best_ref_div)) {
+ } else if (((flags & RADEON_PLL_PREFER_LOW_REF_DIV) && (ref_div < best_ref_div)) ||
+ ((flags & RADEON_PLL_PREFER_HIGH_REF_DIV) && (ref_div > best_ref_div)) ||
+ ((flags & RADEON_PLL_PREFER_LOW_FB_DIV) && (feedback_div < best_feedback_div)) ||
+ ((flags & RADEON_PLL_PREFER_HIGH_FB_DIV) && (feedback_div > best_feedback_div)) ||
+ ((flags & RADEON_PLL_PREFER_LOW_POST_DIV) && (post_div < best_post_div)) ||
+ ((flags & RADEON_PLL_PREFER_HIGH_POST_DIV) && (post_div > best_post_div))) {
best_post_div = post_div;
best_ref_div = ref_div;
best_feedback_div = feedback_div;