diff --git a/drivers/media/platform/msm/camera_v2/common/cam_soc_api.c b/drivers/media/platform/msm/camera_v2/common/cam_soc_api.c index 7f5e49809a26..8da079d9d0c8 100644 --- a/drivers/media/platform/msm/camera_v2/common/cam_soc_api.c +++ b/drivers/media/platform/msm/camera_v2/common/cam_soc_api.c @@ -24,6 +24,7 @@ #include #include #include +#include #include "cam_soc_api.h" struct msm_cam_bus_pscale_data { @@ -454,6 +455,17 @@ long msm_camera_clk_set_rate(struct device *dev, } EXPORT_SYMBOL(msm_camera_clk_set_rate); +int msm_camera_set_clk_flags(struct clk *clk, unsigned long flags) +{ + if (!clk) + return -EINVAL; + + CDBG("clk : %p, flags : %ld\n", clk, flags); + + return clk_set_flags(clk, flags); +} +EXPORT_SYMBOL(msm_camera_set_clk_flags); + /* release memory allocated for clocks */ static int msm_camera_put_clk_info_internal(struct device *dev, struct msm_cam_clk_info **clk_info, diff --git a/drivers/media/platform/msm/camera_v2/common/cam_soc_api.h b/drivers/media/platform/msm/camera_v2/common/cam_soc_api.h index d1eeab92773f..b4494d4d6bab 100644 --- a/drivers/media/platform/msm/camera_v2/common/cam_soc_api.h +++ b/drivers/media/platform/msm/camera_v2/common/cam_soc_api.h @@ -187,6 +187,18 @@ int msm_camera_clk_enable(struct device *dev, long msm_camera_clk_set_rate(struct device *dev, struct clk *clk, long clk_rate); +/** + * @brief : Sets flags of a clock + * + * This function will set the flags for a specified clock + * + * @param clk : Pointer to clock to set flags for + * @param flags : The flags to set + * + * @return Status of operation. + */ + +int msm_camera_set_clk_flags(struct clk *clk, unsigned long flags); /** * @brief : Gets regulator info * @@ -200,6 +212,7 @@ long msm_camera_clk_set_rate(struct device *dev, * * @return Status of operation. Negative in case of error. Zero otherwise. */ + int msm_camera_get_regulator_info(struct platform_device *pdev, struct msm_cam_regulator **vdd_info, int *num_reg); /**