OMAPDSS: Fix DSI_FCLK clock source selection
authorArchit Taneja <archit@ti.com>
Mon, 7 May 2012 11:21:35 +0000 (16:51 +0530)
committerTomi Valkeinen <tomi.valkeinen@ti.com>
Wed, 9 May 2012 10:43:11 +0000 (13:43 +0300)
The wrong bit field was being updated in DSS_CTRL when trying to configure the
clock source of DSI2 functional clock. Use the correct bit field based on the
dsi module number.

Signed-off-by: Archit Taneja <archit@ti.com>
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
drivers/video/omap2/dss/dss.c

index e731aa46eeaf99ec0cdc150658208146fb532b7f..e212acb1e7d5489de7a367e8b22098fec3afb5eb 100644 (file)
@@ -335,7 +335,7 @@ void dss_select_dsi_clk_source(int dsi_module,
                enum omap_dss_clk_source clk_src)
 {
        struct platform_device *dsidev;
-       int b;
+       int b, pos;
 
        switch (clk_src) {
        case OMAP_DSS_CLK_SRC_FCK:
@@ -357,7 +357,8 @@ void dss_select_dsi_clk_source(int dsi_module,
                BUG();
        }
 
-       REG_FLD_MOD(DSS_CONTROL, b, 1, 1);      /* DSI_CLK_SWITCH */
+       pos = dsi_module == 0 ? 1 : 10;
+       REG_FLD_MOD(DSS_CONTROL, b, pos, pos);  /* DSIx_CLK_SWITCH */
 
        dss.dsi_clk_source[dsi_module] = clk_src;
 }