merge of '49118a4c6035353c0f8cf1aa30297dd36e43241f'
[vuplus_openembedded] / packages / linux / linux-omap2-git / beagleboard / 06-ensure-fclk.diff
1 From: Mans Rullgard <mans@mansr.com>
2 Date: Mon, 7 Jul 2008 23:59:08 +0000 (+0100)
3 Subject: omapfb: ensure fck/lcd < 173MHz
4 X-Git-Url: http://git.mansr.com/?p=linux-omap;a=commitdiff_plain;h=0523ece1bad659c48c66aea364d83f7490e7e5ae
5
6 omapfb: ensure fck/lcd < 173MHz
7 ---
8
9 diff --git a/drivers/video/omap/dispc.c b/drivers/video/omap/dispc.c
10 index c17371c..85d6cad 100644
11 --- a/drivers/video/omap/dispc.c
12 +++ b/drivers/video/omap/dispc.c
13 @@ -738,14 +738,16 @@ static void setup_color_conv_coef(void)
14         MOD_REG_FLD(at2_reg, (1 << 11), ct->full_range);
15  }
16  
17 +#define MAX_FCK_LCD 173000000
18 +
19  static void calc_ck_div(int is_tft, int pck, int *lck_div, int *pck_div)
20  {
21         unsigned long fck, lck;
22  
23 -       *lck_div = 1;
24         pck = max(1, pck);
25         fck = clk_get_rate(dispc.dss1_fck);
26 -       lck = fck;
27 +       *lck_div = (fck + MAX_FCK_LCD - 1) / MAX_FCK_LCD;
28 +       lck = fck / *lck_div;
29         *pck_div = (lck + pck - 1) / pck;
30         if (is_tft)
31                 *pck_div = max(2, *pck_div);