diff options
Diffstat (limited to 'drivers/mxc/mipi/mxc_mipi_csi2.c')
-rw-r--r-- | drivers/mxc/mipi/mxc_mipi_csi2.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/drivers/mxc/mipi/mxc_mipi_csi2.c b/drivers/mxc/mipi/mxc_mipi_csi2.c index 2f5cb0219a88..df45c364f144 100644 --- a/drivers/mxc/mipi/mxc_mipi_csi2.c +++ b/drivers/mxc/mipi/mxc_mipi_csi2.c @@ -1,5 +1,5 @@ /* - * Copyright (C) 2011-2013 Freescale Semiconductor, Inc. All Rights Reserved. + * Copyright (C) 2011-2014 Freescale Semiconductor, Inc. All Rights Reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -77,6 +77,7 @@ bool mipi_csi2_enable(struct mipi_csi2_info *info) if (!info->mipi_en) { info->mipi_en = true; + clk_prepare_enable(info->cfg_clk); clk_prepare_enable(info->dphy_clk); } else mipi_dbg("mipi csi2 already enabled!\n"); @@ -104,6 +105,7 @@ bool mipi_csi2_disable(struct mipi_csi2_info *info) if (info->mipi_en) { info->mipi_en = false; clk_disable_unprepare(info->dphy_clk); + clk_disable_unprepare(info->cfg_clk); } else mipi_dbg("mipi csi2 already disabled!\n"); @@ -426,6 +428,13 @@ static int mipi_csi2_probe(struct platform_device *pdev) gmipi_csi2->pdev = pdev; gmipi_csi2->mipi_en = false; + gmipi_csi2->cfg_clk = devm_clk_get(dev, "cfg_clk"); + if (IS_ERR(gmipi_csi2->cfg_clk)) { + dev_err(&pdev->dev, "failed to get cfg_clk\n"); + ret = PTR_ERR(gmipi_csi2->cfg_clk); + goto err; + } + /* get mipi dphy clk */ gmipi_csi2->dphy_clk = devm_clk_get(dev, "dphy_clk"); if (IS_ERR(gmipi_csi2->dphy_clk)) { |