summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDonghan Ryu <dryu@nvidia.com>2011-06-15 15:57:57 +0900
committerNiket Sirsi <nsirsi@nvidia.com>2011-07-27 15:09:21 -0700
commit432c968aa3543253507c9c85c525b4cc7c8dfa5f (patch)
tree524d7b0eda35e3dbc7e76b918ae2b395f53d7433
parenta5dc52ce49d00bba963544251a1fe858e774780b (diff)
fbdev: Fix fb_find_nearest_mode refresh comparison
Refresh rate nearness is not calculated or reset when nearest resolution changes. This patch resets the refresh rate differential measurement whenever a new nearest resolution is discovered. This fixes two error cases; first, wherein the first mode's refresh rate differential is never calculated and second, when the closest refresh rate from a previous nearest resolution is erroneously preserved. back-ported from kernel.org (cherry picked from commit 8917a5603a3e6534d6c75ed0d91077062805b111) Reviewed-on: http://git-master/r/37417 (cherry picked from commit a169b1a92dc1ed4c824569e9dc70267cb1e2eb52) Change-Id: I9757e98053a0676491dfe943f06a0c4946ef96be Signed-off-by: Sanjay Singh Rawat <srawat@nvidia.com> Reviewed-on: http://git-master/r/42390 Reviewed-by: Donghan Ryu <dryu@nvidia.com> Tested-by: Gerrit_Virtual_Submit Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
-rw-r--r--drivers/video/modedb.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/video/modedb.c b/drivers/video/modedb.c
index 930070e3ccf4..f0696a72563f 100644
--- a/drivers/video/modedb.c
+++ b/drivers/video/modedb.c
@@ -1308,6 +1308,7 @@ const struct fb_videomode *fb_find_nearest_mode(const struct fb_videomode *mode,
abs(cmode->yres - mode->yres);
if (diff > d) {
diff = d;
+ diff_refresh = abs(cmode->refresh - mode->refresh);
best = cmode;
} else if (diff == d) {
d = abs(cmode->refresh - mode->refresh);