From: Tomi Valkeinen Date: Wed, 10 Apr 2013 11:47:38 +0000 (+0300) Subject: OMAPDSS: fix dss_fck clock rate rounding X-Git-Tag: omap-for-v3.10/dt-fixes-for-merge-window~55^2~46^2^2~6 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=648a55e1254117bd7500747a789f0b112c7af240;p=pandora-kernel.git OMAPDSS: fix dss_fck clock rate rounding DSS func clock is calculated with prate / div * m. However, the current omapdss code calculates it with prate * m / div, which yields a slightly different result when there's a remainder. For example, 432000000 / 14 * 2 = 61714284, but 432000000 * 2 / 14 = 61714285. In addition to that, the clock framework wants the clock rate given with clk_set_rate to be higher than the actual (truncated) end result. So, if prate is 432000000, and div is 14, the real result is 30857142.8571... We need to call clk_set_rate with 30857143, which gives us a clock of 30857142. That's why we need to use DIV_ROUND_UP() when calling clk_set_rate. This patch fixes the clock calculation. Signed-off-by: Tomi Valkeinen --- Reading git-diff-tree failed