Re: [PATCH] i2c: Modify error handling

2016-07-31 Thread Sakari Ailus
Hi Amitoj,

On Sun, Jul 31, 2016 at 09:28:00AM +0530, Amitoj Kaur Chawla wrote:
> devm_gpiod_get returns an ERR_PTR on error so a null check is
> incorrect and an IS_ERR check is required.
> 
> The Coccinelle semantic patch used to make this change is as follows:
> @@
> expression e;
> statement S;
> @@
> 
>   e = devm_gpiod_get(...);
>  if(
> -   !e
> +   IS_ERR(e)
>)
>   {
>...
> -  return ...;
> +  return PTR_ERR(e);
>   }
> 
> Signed-off-by: Amitoj Kaur Chawla 
> ---
>  drivers/media/i2c/adp1653.c | 4 ++--

In this exact case, the issue has been fixed by similar patch in media-tree
master branch. You likely used another branch for preparing this patch.

Nevertheless, thank you for the patch --- this kind of cleanups are always
much appreciated.

commit 806f8ffa8a0fa9a6f0481c5648c27aa51d10fdc6
Author: Vladimir Zapolskiy 
Date:   Mon Mar 7 15:39:32 2016 -0300

[media] media: i2c/adp1653: fix check of devm_gpiod_get() error code

The devm_gpiod_get() function returns either a valid pointer to
struct gpio_desc or ERR_PTR() error value, check for NULL is bogus.

Signed-off-by: Vladimir Zapolskiy 
Signed-off-by: Sakari Ailus 
Signed-off-by: Mauro Carvalho Chehab 

diff --git a/drivers/media/i2c/adp1653.c b/drivers/media/i2c/adp1653.c
index fb7ed73..9e1731c 100644
--- a/drivers/media/i2c/adp1653.c
+++ b/drivers/media/i2c/adp1653.c
@@ -466,9 +466,9 @@ static int adp1653_of_init(struct i2c_client *client,
of_node_put(child);
 
pd->enable_gpio = devm_gpiod_get(>dev, "enable", GPIOD_OUT_LOW);
-   if (!pd->enable_gpio) {
+   if (IS_ERR(pd->enable_gpio)) {
dev_err(>dev, "Error getting GPIO\n");
-   return -EINVAL;
+   return PTR_ERR(pd->enable_gpio);
}
 
return 0;

-- 
Kind regards,

Sakari Ailus
e-mail: sakari.ai...@iki.fi XMPP: sai...@retiisi.org.uk
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH] i2c: Modify error handling

2016-07-30 Thread Amitoj Kaur Chawla
devm_gpiod_get returns an ERR_PTR on error so a null check is
incorrect and an IS_ERR check is required.

The Coccinelle semantic patch used to make this change is as follows:
@@
expression e;
statement S;
@@

  e = devm_gpiod_get(...);
 if(
-   !e
+   IS_ERR(e)
   )
  {
   ...
-  return ...;
+  return PTR_ERR(e);
  }

Signed-off-by: Amitoj Kaur Chawla 
---
 drivers/media/i2c/adp1653.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/media/i2c/adp1653.c b/drivers/media/i2c/adp1653.c
index 7e9cbf7..54b355e 100644
--- a/drivers/media/i2c/adp1653.c
+++ b/drivers/media/i2c/adp1653.c
@@ -466,9 +466,9 @@ static int adp1653_of_init(struct i2c_client *client,
of_node_put(child);
 
pd->enable_gpio = devm_gpiod_get(>dev, "enable", GPIOD_OUT_LOW);
-   if (!pd->enable_gpio) {
+   if (IS_ERR(pd->enable_gpio)) {
dev_err(>dev, "Error getting GPIO\n");
-   return -EINVAL;
+   return PTR_ERR(pd->enable_gpio);
}
 
return 0;
-- 
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html