summaryrefslogtreecommitdiff
path: root/drivers/video/ipu_disp.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/video/ipu_disp.c')
-rw-r--r--drivers/video/ipu_disp.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/drivers/video/ipu_disp.c b/drivers/video/ipu_disp.c
index 3c24863..5a8727f 100644
--- a/drivers/video/ipu_disp.c
+++ b/drivers/video/ipu_disp.c
@@ -49,7 +49,7 @@ int g_di1_tvout;
extern struct clk *g_ipu_clk;
#if defined(CONFIG_MX6) || defined(CONFIG_MX53)
-extern struct clk *g_ldb_clk;
+extern struct clk *g_ldb_clk[2];
#endif
extern struct clk *g_di_clk[2];
extern struct clk *g_pixel_clk[2];
@@ -647,6 +647,9 @@ void ipu_dp_dc_enable(ipu_channel_t channel)
__raw_writel(reg, DC_WR_CH_CONF(dc_chan));
clk_enable(g_pixel_clk[di]);
+#if defined(CONFIG_MX6) || defined(CONFIG_MX53)
+ clk_enable(g_ldb_clk[di]);
+#endif
}
static unsigned char dc_swap;
@@ -737,6 +740,9 @@ void ipu_dp_dc_disable(ipu_channel_t channel, unsigned char swap)
/* Clock is already off because it must be done quickly, but
we need to fix the ref count */
clk_disable(g_pixel_clk[g_dc_di_assignment[dc_chan]]);
+#if defined(CONFIG_MX6) || defined(CONFIG_MX53)
+ clk_disable(g_ldb_clk[g_dc_di_assignment[dc_chan]]);
+#endif
}
}
@@ -888,7 +894,7 @@ int32_t ipu_init_sync_panel(int disp, uint32_t pixel_clk,
}
}
#if defined(CONFIG_MX6) || defined(CONFIG_MX53)
- clk_set_parent(g_pixel_clk[disp], g_ldb_clk);
+ clk_set_parent(g_pixel_clk[disp], g_ldb_clk[disp]);
#endif
} else {
if (clk_get_usecount(g_pixel_clk[disp]) != 0)