diff options
author | Sanjay Singh Rawat <srawat@nvidia.com> | 2011-09-29 12:16:32 +0530 |
---|---|---|
committer | Cheryl Jones <chjones@nvidia.com> | 2011-09-29 16:38:37 -0700 |
commit | a36203b0493272a2304d6f6f6a4e44f8e316548b (patch) | |
tree | ed778a2660f2542c3a4949b0db397fa489e71785 | |
parent | 2675f16ffa2b7bcf2ec73e491197ad44e319ac83 (diff) |
video: tegra: Do correct pixel clock validation of HDMI sink
Resolution wise the pixel clock of the peripheral and supported resolution
mode if found different was checked whether in permissible range or not.
PICOS2KHZ macro argument is taken as denominator in division, in multiple
argument case care should be taken.
Bug 878912
Similar Bug 872389
Signed-off-by: Sanjay Singh Rawat <srawat@nvidia.com>
Reviewed-on: http://git-master/r/54050
(cherry picked from commit 927b647e437133a9d28336ed697447e41b09b9c7)
Change-Id: Ife7f675e2f2ec8601a953ba096e2b8a5dd0dc684
Reviewed-on: http://git-master/r/55137
Reviewed-by: Donghan Ryu <dryu@nvidia.com>
Tested-by: Sanjay Singh Rawat <srawat@nvidia.com>
Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
-rw-r--r-- | drivers/video/tegra/dc/hdmi.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/drivers/video/tegra/dc/hdmi.c b/drivers/video/tegra/dc/hdmi.c index 9850ddc14ec2..b239fd459791 100644 --- a/drivers/video/tegra/dc/hdmi.c +++ b/drivers/video/tegra/dc/hdmi.c @@ -506,14 +506,15 @@ static bool tegra_dc_hdmi_mode_equal(const struct fb_videomode *mode1, /* allows up to 1Hz of pixclock difference */ if (mode1->pixclock != mode2->pixclock) { return (mode1->xres == mode2->xres && - mode1->yres == mode2->yres && - (abs(PICOS2KHZ(mode1->pixclock - mode2->pixclock)) * 1000 - / clock_per_frame <= 1) && - mode1->vmode == mode2->vmode); + mode1->yres == mode2->yres && + mode1->vmode == mode2->vmode && + (abs(PICOS2KHZ(mode1->pixclock) - + PICOS2KHZ(mode2->pixclock)) * + 1000 / clock_per_frame <= 1)); } else { return (mode1->xres == mode2->xres && - mode1->yres == mode2->yres && - mode1->vmode == mode2->vmode); + mode1->yres == mode2->yres && + mode1->vmode == mode2->vmode); } } |