OMAPDSS: HDMI: make hdmi pclk check more permissive
authorTomi Valkeinen <tomi.valkeinen@ti.com>
Wed, 24 Oct 2012 08:55:54 +0000 (11:55 +0300)
committerTomi Valkeinen <tomi.valkeinen@ti.com>
Mon, 29 Oct 2012 10:44:42 +0000 (12:44 +0200)
The hdmi driver tries to find the given video timings from its static
list of timings, to find the required ID for the mode. The check tries
to find exact match for the pixel clock, among other checks.

with omapfb driver there can be some amount of error in the give pixel
clock, as the pixel clock is converted between Hz and ps, thus the
hdmi's check fails to find the mode.

This patch makes the check more allowing, by rounding the pixel clocks
to nearest MHz.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Cc: Ricardo Neri <ricardo.neri@ti.com>
drivers/video/omap2/dss/hdmi.c

index 9f5c4c2..03440e6 100644 (file)
@@ -404,7 +404,8 @@ static bool hdmi_timings_compare(struct omap_video_timings *timing1,
 {
        int timing1_vsync, timing1_hsync, timing2_vsync, timing2_hsync;
 
-       if ((timing2->pixel_clock == timing1->pixel_clock) &&
+       if ((DIV_ROUND_CLOSEST(timing2->pixel_clock, 1000) ==
+                       DIV_ROUND_CLOSEST(timing1->pixel_clock, 1000)) &&
                (timing2->x_res == timing1->x_res) &&
                (timing2->y_res == timing1->y_res)) {