@@ -725,7 +725,7 @@ static struct platform_device camera_devices[] = {
* So, we should change parent of fsi
*/
#define FCLKBCR 0xa415000c
-static void fsimck_init(struct clk *clk)
+static int fsimck_enable(struct clk *clk)
{
u32 status = __raw_readl(clk->enable_reg);
@@ -734,10 +734,23 @@ static void fsimck_init(struct clk *clk)
status |= 0x00000080;
__raw_writel(status, clk->enable_reg);
+
+ return 0;
+}
+
+static void fsimck_disable(struct clk *clk)
+{
+ u32 status = __raw_readl(clk->enable_reg);
+
+ /* use external clock */
+ status &= ~0x00000080;
+
+ __raw_writel(status, clk->enable_reg);
}
static struct clk_ops fsimck_clk_ops = {
- .init = fsimck_init,
+ .enable = fsimck_enable,
+ .disable = fsimck_disable,
};
static struct clk fsimckb_clk = {