All of lore.kernel.org
 help / color / mirror / Atom feed
From: Stephen Warren <swarren@nvidia.com>
To: Greg Kroah-Hartman <gregkh@suse.de>,
	Jean Delvare <khali@linux-fr.org>,
	Ben Dooks <ben-linux@fluff.org>,
	Grant Likely <grant.likely@secretlab.ca>
Cc: Russell King <linux@arm.linux.org.uk>,
	Jonathan Cameron <jic23@cam.ac.uk>,
	Andrew Chew <achew@nvidia.com>,
	linux-iio@vger.kernel.org, devel@driverdev.osuosl.org,
	linux-kernel@vger.kernel.org, linux-tegra@vger.kernel.org,
	linux-i2c@vger.kernel.org,
	spi-devel-general@lists.sourceforge.net,
	Stephen Warren <swarren@nvidia.com>
Subject: [PATCH V3 4/5] staging:iio:magnetometer:ak8975: Don't assume 0 is an invalid GPIO
Date: Thu,  1 Sep 2011 16:04:35 -0600	[thread overview]
Message-ID: <1314914676-28397-9-git-send-email-swarren@nvidia.com> (raw)
In-Reply-To: <1314914676-28397-1-git-send-email-swarren@nvidia.com>

gpio_is_valid() is the defined mechanism to determine whether a GPIO is
valid. Use this instead of assuming that 0 is an invalid GPIO.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
---
 drivers/staging/iio/magnetometer/ak8975.c |   11 +++++------
 1 files changed, 5 insertions(+), 6 deletions(-)

diff --git a/drivers/staging/iio/magnetometer/ak8975.c b/drivers/staging/iio/magnetometer/ak8975.c
index 14076da..0dfdf50 100644
--- a/drivers/staging/iio/magnetometer/ak8975.c
+++ b/drivers/staging/iio/magnetometer/ak8975.c
@@ -373,7 +373,7 @@ static int ak8975_read_axis(struct iio_dev *indio_dev, int index, int *val)
 	}
 
 	/* Wait for the conversion to complete. */
-	if (data->eoc_gpio)
+	if (gpio_is_valid(data->eoc_gpio))
 		ret = wait_conversion_complete_gpio(data);
 	else
 		ret = wait_conversion_complete_polled(data);
@@ -481,7 +481,7 @@ static int ak8975_probe(struct i2c_client *client,
 
 	/* We may not have a GPIO based IRQ to scan, that is fine, we will
 	   poll if so */
-	if (eoc_gpio > 0) {
+	if (gpio_is_valid(eoc_gpio)) {
 		err = gpio_request(eoc_gpio, "ak_8975");
 		if (err < 0) {
 			dev_err(&client->dev,
@@ -497,8 +497,7 @@ static int ak8975_probe(struct i2c_client *client,
 						eoc_gpio, err);
 			goto exit_gpio;
 		}
-	} else
-		eoc_gpio = 0;	/* No GPIO available */
+	}
 
 	/* Register with IIO */
 	indio_dev = iio_allocate_device(sizeof(*data));
@@ -534,7 +533,7 @@ static int ak8975_probe(struct i2c_client *client,
 exit_free_iio:
 	iio_free_device(indio_dev);
 exit_gpio:
-	if (eoc_gpio)
+	if (gpio_is_valid(eoc_gpio))
 		gpio_free(eoc_gpio);
 exit:
 	return err;
@@ -549,7 +548,7 @@ static int ak8975_remove(struct i2c_client *client)
 	iio_device_unregister(indio_dev);
 	iio_free_device(indio_dev);
 
-	if (eoc_gpio)
+	if (gpio_is_valid(eoc_gpio))
 		gpio_free(eoc_gpio);
 
 	return 0;
-- 
1.7.0.4

WARNING: multiple messages have this Message-ID (diff)
From: Stephen Warren <swarren@nvidia.com>
To: Greg Kroah-Hartman <gregkh@suse.de>,
	Jean Delvare <khali@linux-fr.org>,
	Ben Dooks <ben-linux@fluff.org>,
	Jonathan Cameron <jic23@cam.ac.uk>,
	Grant Likely <grant.likely@secretlab.ca>,
	Arnd Bergmann <arnd@arndb.de>
Cc: Russell King <linux@arm.linux.org.uk>,
	Jonathan Cameron <jic23@cam.ac.uk>,
	Andrew Chew <achew@nvidia.com>,
	linux-iio@vger.kernel.org, devel@driverdev.osuosl.org,
	linux-kernel@vger.kernel.org, linux-tegra@vger.kernel.org,
	linux-i2c@vger.kernel.org,
	spi-devel-general@lists.sourceforge.net,
	Stephen Warren <swarren@nvidia.com>
Subject: [PATCH V3 4/5] staging:iio:magnetometer:ak8975: Don't assume 0 is an invalid GPIO
Date: Thu,  1 Sep 2011 16:04:35 -0600	[thread overview]
Message-ID: <1314914676-28397-9-git-send-email-swarren@nvidia.com> (raw)
In-Reply-To: <1314914676-28397-1-git-send-email-swarren@nvidia.com>

gpio_is_valid() is the defined mechanism to determine whether a GPIO is
valid. Use this instead of assuming that 0 is an invalid GPIO.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
---
 drivers/staging/iio/magnetometer/ak8975.c |   11 +++++------
 1 files changed, 5 insertions(+), 6 deletions(-)

diff --git a/drivers/staging/iio/magnetometer/ak8975.c b/drivers/staging/iio/magnetometer/ak8975.c
index 14076da..0dfdf50 100644
--- a/drivers/staging/iio/magnetometer/ak8975.c
+++ b/drivers/staging/iio/magnetometer/ak8975.c
@@ -373,7 +373,7 @@ static int ak8975_read_axis(struct iio_dev *indio_dev, int index, int *val)
 	}
 
 	/* Wait for the conversion to complete. */
-	if (data->eoc_gpio)
+	if (gpio_is_valid(data->eoc_gpio))
 		ret = wait_conversion_complete_gpio(data);
 	else
 		ret = wait_conversion_complete_polled(data);
@@ -481,7 +481,7 @@ static int ak8975_probe(struct i2c_client *client,
 
 	/* We may not have a GPIO based IRQ to scan, that is fine, we will
 	   poll if so */
-	if (eoc_gpio > 0) {
+	if (gpio_is_valid(eoc_gpio)) {
 		err = gpio_request(eoc_gpio, "ak_8975");
 		if (err < 0) {
 			dev_err(&client->dev,
@@ -497,8 +497,7 @@ static int ak8975_probe(struct i2c_client *client,
 						eoc_gpio, err);
 			goto exit_gpio;
 		}
-	} else
-		eoc_gpio = 0;	/* No GPIO available */
+	}
 
 	/* Register with IIO */
 	indio_dev = iio_allocate_device(sizeof(*data));
@@ -534,7 +533,7 @@ static int ak8975_probe(struct i2c_client *client,
 exit_free_iio:
 	iio_free_device(indio_dev);
 exit_gpio:
-	if (eoc_gpio)
+	if (gpio_is_valid(eoc_gpio))
 		gpio_free(eoc_gpio);
 exit:
 	return err;
@@ -549,7 +548,7 @@ static int ak8975_remove(struct i2c_client *client)
 	iio_device_unregister(indio_dev);
 	iio_free_device(indio_dev);
 
-	if (eoc_gpio)
+	if (gpio_is_valid(eoc_gpio))
 		gpio_free(eoc_gpio);
 
 	return 0;
-- 
1.7.0.4


WARNING: multiple messages have this Message-ID (diff)
From: Stephen Warren <swarren@nvidia.com>
To: Greg Kroah-Hartman <gregkh@suse.de>,
	Jean Delvare <khali@linux-fr.org>,
	Ben Dooks <ben-linux@fluff.org>,
	Jonathan Cameron <jic23@cam.ac.uk>,
	Grant Likely <grant.likely@secretlab.ca>,
Cc: Russell King <linux@arm.linux.org.uk>,
	Jonathan Cameron <jic23@cam.ac.uk>,
	Andrew Chew <achew@nvidia.com>,
	linux-iio@vger.kernel.org, devel@driverdev.osuosl.org,
	linux-kernel@vger.kernel.org, linux-tegra@vger.kernel.org,
	linux-i2c@vger.kernel.org,
	spi-devel-general@lists.sourceforge.net,
	Stephen Warren <swarren@nvidia.com>
Subject: [PATCH V3 4/5] staging:iio:magnetometer:ak8975: Don't assume 0 is an invalid GPIO
Date: Thu,  1 Sep 2011 16:04:35 -0600	[thread overview]
Message-ID: <1314914676-28397-9-git-send-email-swarren@nvidia.com> (raw)
In-Reply-To: <1314914676-28397-1-git-send-email-swarren@nvidia.com>

gpio_is_valid() is the defined mechanism to determine whether a GPIO is
valid. Use this instead of assuming that 0 is an invalid GPIO.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
---
 drivers/staging/iio/magnetometer/ak8975.c |   11 +++++------
 1 files changed, 5 insertions(+), 6 deletions(-)

diff --git a/drivers/staging/iio/magnetometer/ak8975.c b/drivers/staging/iio/magnetometer/ak8975.c
index 14076da..0dfdf50 100644
--- a/drivers/staging/iio/magnetometer/ak8975.c
+++ b/drivers/staging/iio/magnetometer/ak8975.c
@@ -373,7 +373,7 @@ static int ak8975_read_axis(struct iio_dev *indio_dev, int index, int *val)
 	}
 
 	/* Wait for the conversion to complete. */
-	if (data->eoc_gpio)
+	if (gpio_is_valid(data->eoc_gpio))
 		ret = wait_conversion_complete_gpio(data);
 	else
 		ret = wait_conversion_complete_polled(data);
@@ -481,7 +481,7 @@ static int ak8975_probe(struct i2c_client *client,
 
 	/* We may not have a GPIO based IRQ to scan, that is fine, we will
 	   poll if so */
-	if (eoc_gpio > 0) {
+	if (gpio_is_valid(eoc_gpio)) {
 		err = gpio_request(eoc_gpio, "ak_8975");
 		if (err < 0) {
 			dev_err(&client->dev,
@@ -497,8 +497,7 @@ static int ak8975_probe(struct i2c_client *client,
 						eoc_gpio, err);
 			goto exit_gpio;
 		}
-	} else
-		eoc_gpio = 0;	/* No GPIO available */
+	}
 
 	/* Register with IIO */
 	indio_dev = iio_allocate_device(sizeof(*data));
@@ -534,7 +533,7 @@ static int ak8975_probe(struct i2c_client *client,
 exit_free_iio:
 	iio_free_device(indio_dev);
 exit_gpio:
-	if (eoc_gpio)
+	if (gpio_is_valid(eoc_gpio))
 		gpio_free(eoc_gpio);
 exit:
 	return err;
@@ -549,7 +548,7 @@ static int ak8975_remove(struct i2c_client *client)
 	iio_device_unregister(indio_dev);
 	iio_free_device(indio_dev);
 
-	if (eoc_gpio)
+	if (gpio_is_valid(eoc_gpio))
 		gpio_free(eoc_gpio);
 
 	return 0;
-- 
1.7.0.4

  parent reply	other threads:[~2011-09-01 22:04 UTC|newest]

Thread overview: 50+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-09-01 22:04 [PATCH V3 1/5] i2c: Add irq_gpio field to struct i2c_client, i2c_board_info Stephen Warren
2011-09-01 22:04 ` Stephen Warren
2011-09-01 22:04 ` Stephen Warren
2011-09-01 22:04 ` [PATCH V3 2/5] spi: Add irq_gpio field to struct spi_device, spi_board_info Stephen Warren
2011-09-01 22:04   ` Stephen Warren
2011-09-01 22:04   ` Stephen Warren
     [not found] ` <1314914676-28397-1-git-send-email-swarren-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2011-09-01 22:04   ` [PATCH V3 3/5] staging:iio:magnetometer:ak8975 Don't use irq_to_gpio() Stephen Warren
2011-09-01 22:04     ` Stephen Warren
2011-09-01 22:04     ` Stephen Warren
2011-09-02  6:56   ` [PATCH V3 1/5] i2c: Add irq_gpio field to struct i2c_client, i2c_board_info Jean Delvare
2011-09-02  6:56     ` Jean Delvare
     [not found]     ` <20110902085620.4ad918c4-R0o5gVi9kd7kN2dkZ6Wm7A@public.gmane.org>
2011-09-02  9:19       ` Jonathan Cameron
2011-09-02  9:19         ` Jonathan Cameron
     [not found]         ` <4E609F9C.5020403-KWPb1pKIrIJaa/9Udqfwiw@public.gmane.org>
2011-09-02  9:24           ` Jean Delvare
2011-09-02  9:24             ` Jean Delvare
2011-09-02  9:24             ` Jean Delvare
     [not found]             ` <20110902112435.69c9e8f7-R0o5gVi9kd7kN2dkZ6Wm7A@public.gmane.org>
2011-09-02 18:24               ` Stephen Warren
2011-09-02 18:24                 ` Stephen Warren
2011-09-02 18:24                 ` Stephen Warren
     [not found]                 ` <74CDBE0F657A3D45AFBB94109FB122FF04B327A628-C7FfzLzN0UxDw2glCA4ptUEOCMrvLtNR@public.gmane.org>
2011-09-06 22:57                   ` Greg KH
2011-09-06 22:57                     ` Greg KH
2011-09-06 22:57                     ` Greg KH
2011-09-19 21:59                     ` Stephen Warren
2011-09-19 21:59                       ` Stephen Warren
2011-09-19 21:59                       ` Stephen Warren
2011-09-20  4:16       ` Grant Likely
2011-09-20  4:16         ` Grant Likely
     [not found]         ` <20110920041629.GC30517-e0URQFbLeQY2iJbIjFUEsiwD8/FfD2ys@public.gmane.org>
2011-09-20  8:54           ` Jonathan Cameron
2011-09-20  8:54             ` Jonathan Cameron
2011-09-01 22:04 ` [PATCH V3 4/5] staging:iio:magnetometer:ak8975: Don't assume 0 is an invalid GPIO Stephen Warren
2011-09-01 22:04   ` Stephen Warren
2011-09-01 22:04   ` Stephen Warren
2011-09-01 22:04 ` [PATCH V3 5/5] staging:iio:magnetometer:ak8975: Fix probe() error-handling Stephen Warren
2011-09-01 22:04   ` Stephen Warren
2011-09-01 22:04   ` Stephen Warren
2011-09-01 22:04 ` [PATCH V3 1/5] i2c: Add irq_gpio field to struct i2c_client, i2c_board_info Stephen Warren
2011-09-01 22:04   ` Stephen Warren
2011-09-01 22:04   ` Stephen Warren
2011-09-01 22:04 ` [PATCH V3 2/5] spi: Add irq_gpio field to struct spi_device, spi_board_info Stephen Warren
2011-09-01 22:04   ` Stephen Warren
2011-09-01 22:04   ` Stephen Warren
2011-09-01 22:04 ` [PATCH V3 3/5] staging:iio:magnetometer:ak8975 Don't use irq_to_gpio() Stephen Warren
2011-09-01 22:04   ` Stephen Warren
2011-09-01 22:04   ` Stephen Warren
2011-09-01 22:04 ` Stephen Warren [this message]
2011-09-01 22:04   ` [PATCH V3 4/5] staging:iio:magnetometer:ak8975: Don't assume 0 is an invalid GPIO Stephen Warren
2011-09-01 22:04   ` Stephen Warren
2011-09-01 22:04 ` [PATCH V3 5/5] staging:iio:magnetometer:ak8975: Fix probe() error-handling Stephen Warren
2011-09-01 22:04   ` Stephen Warren
2011-09-01 22:04   ` Stephen Warren

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1314914676-28397-9-git-send-email-swarren@nvidia.com \
    --to=swarren@nvidia.com \
    --cc=achew@nvidia.com \
    --cc=ben-linux@fluff.org \
    --cc=devel@driverdev.osuosl.org \
    --cc=grant.likely@secretlab.ca \
    --cc=gregkh@suse.de \
    --cc=jic23@cam.ac.uk \
    --cc=khali@linux-fr.org \
    --cc=linux-i2c@vger.kernel.org \
    --cc=linux-iio@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-tegra@vger.kernel.org \
    --cc=linux@arm.linux.org.uk \
    --cc=spi-devel-general@lists.sourceforge.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.