Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

[PATCH] media: i2c: mt9v032: Check return value of clk_prepare_enable/clk_set_rate

4 views
Skip to first unread message

Prabhakar Lad

unread,
Jan 17, 2014, 4:30:02 AM1/17/14
to
From: "Lad, Prabhakar" <prabhaka...@gmail.com>

clk_set_rate(), clk_prepare_enable() functions can fail, so check the return
values to avoid surprises.

Signed-off-by: Lad, Prabhakar <prabhaka...@gmail.com>
---
drivers/media/i2c/mt9v032.c | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/drivers/media/i2c/mt9v032.c b/drivers/media/i2c/mt9v032.c
index 36c504b..40172b8 100644
--- a/drivers/media/i2c/mt9v032.c
+++ b/drivers/media/i2c/mt9v032.c
@@ -317,8 +317,14 @@ static int mt9v032_power_on(struct mt9v032 *mt9v032)
struct i2c_client *client = v4l2_get_subdevdata(&mt9v032->subdev);
int ret;

- clk_set_rate(mt9v032->clk, mt9v032->sysclk);
- clk_prepare_enable(mt9v032->clk);
+ ret = clk_set_rate(mt9v032->clk, mt9v032->sysclk);
+ if (ret < 0)
+ return ret;
+
+ ret = clk_prepare_enable(mt9v032->clk);
+ if (ret)
+ return ret;
+
udelay(1);

/* Reset the chip and stop data read out */
--
1.7.9.5

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majo...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

Laurent Pinchart

unread,
Jan 19, 2014, 3:10:02 PM1/19/14
to
Hi Prabhakar,

Thank you for the patch.

On Friday 17 January 2014 14:52:47 Prabhakar Lad wrote:
> From: "Lad, Prabhakar" <prabhaka...@gmail.com>
>
> clk_set_rate(), clk_prepare_enable() functions can fail, so check the return
> values to avoid surprises.
>
> Signed-off-by: Lad, Prabhakar <prabhaka...@gmail.com>

Acked-by: Laurent Pinchart <laurent....@ideasonboard.com>

I've applied the patch to my tree and will send a pull request.

> ---
> drivers/media/i2c/mt9v032.c | 10 ++++++++--
> 1 file changed, 8 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/media/i2c/mt9v032.c b/drivers/media/i2c/mt9v032.c
> index 36c504b..40172b8 100644
> --- a/drivers/media/i2c/mt9v032.c
> +++ b/drivers/media/i2c/mt9v032.c
> @@ -317,8 +317,14 @@ static int mt9v032_power_on(struct mt9v032 *mt9v032)
> struct i2c_client *client = v4l2_get_subdevdata(&mt9v032->subdev);
> int ret;
>
> - clk_set_rate(mt9v032->clk, mt9v032->sysclk);
> - clk_prepare_enable(mt9v032->clk);
> + ret = clk_set_rate(mt9v032->clk, mt9v032->sysclk);
> + if (ret < 0)
> + return ret;
> +
> + ret = clk_prepare_enable(mt9v032->clk);
> + if (ret)
> + return ret;
> +
> udelay(1);
>
> /* Reset the chip and stop data read out */
--
Regards,

Laurent Pinchart
0 new messages