diff options
author | Donghan Ryu <dryu@nvidia.com> | 2011-06-15 15:57:57 +0900 |
---|---|---|
committer | Niket Sirsi <nsirsi@nvidia.com> | 2011-07-27 15:09:21 -0700 |
commit | 432c968aa3543253507c9c85c525b4cc7c8dfa5f (patch) | |
tree | 524d7b0eda35e3dbc7e76b918ae2b395f53d7433 | |
parent | a5dc52ce49d00bba963544251a1fe858e774780b (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.c | 1 |
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); |