Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1447971 > unrolled thread

[PATCH] staging: iio: ad5933: Return correct value for AD5933_OUT_RANGE.

Started byPhil Turnbull <phil.turnbull@oracle.com>
First post2016-07-21 17:30 +0200
Last post2016-07-24 12:10 +0200
Articles 2 — 2 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH] staging: iio: ad5933: Return correct value for AD5933_OUT_RANGE. Phil Turnbull <phil.turnbull@oracle.com> - 2016-07-21 17:30 +0200
    Re: [PATCH] staging: iio: ad5933: Return correct value for  AD5933_OUT_RANGE. Jonathan Cameron <jic23@kernel.org> - 2016-07-24 12:10 +0200

#1447971 — [PATCH] staging: iio: ad5933: Return correct value for AD5933_OUT_RANGE.

FromPhil Turnbull <phil.turnbull@oracle.com>
Date2016-07-21 17:30 +0200
Subject[PATCH] staging: iio: ad5933: Return correct value for AD5933_OUT_RANGE.
Message-ID<rXo5c-Qr-29@gated-at.bofh.it>
The 'break' statement after calling ad5933_cmd only breaks out of the
'for' loop, which then unconditionally sets the return value to -EINVAL.
Move the initialisation of 'ret' so we return the correct value.

Signed-off-by: Phil Turnbull <phil.turnbull@oracle.com>
---
 drivers/staging/iio/impedance-analyzer/ad5933.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/staging/iio/impedance-analyzer/ad5933.c b/drivers/staging/iio/impedance-analyzer/ad5933.c
index 9f43976..34a6990 100644
--- a/drivers/staging/iio/impedance-analyzer/ad5933.c
+++ b/drivers/staging/iio/impedance-analyzer/ad5933.c
@@ -419,6 +419,7 @@ static ssize_t ad5933_store(struct device *dev,
 	mutex_lock(&indio_dev->mlock);
 	switch ((u32)this_attr->address) {
 	case AD5933_OUT_RANGE:
+		ret = -EINVAL;
 		for (i = 0; i < 4; i++)
 			if (val == st->range_avail[i]) {
 				st->ctrl_hb &= ~AD5933_CTRL_RANGE(0x3);
@@ -426,7 +427,6 @@ static ssize_t ad5933_store(struct device *dev,
 				ret = ad5933_cmd(st, 0);
 				break;
 			}
-		ret = -EINVAL;
 		break;
 	case AD5933_IN_PGA_GAIN:
 		if (sysfs_streq(buf, "1")) {
-- 
2.9.0.rc2

[toc] | [next] | [standalone]


#1449102 — Re: [PATCH] staging: iio: ad5933: Return correct value for AD5933_OUT_RANGE.

FromJonathan Cameron <jic23@kernel.org>
Date2016-07-24 12:10 +0200
SubjectRe: [PATCH] staging: iio: ad5933: Return correct value for AD5933_OUT_RANGE.
Message-ID<rYow9-6Cm-5@gated-at.bofh.it>
In reply to#1447971
On 21/07/16 16:23, Phil Turnbull wrote:
> The 'break' statement after calling ad5933_cmd only breaks out of the
> 'for' loop, which then unconditionally sets the return value to -EINVAL.
> Move the initialisation of 'ret' so we return the correct value.
> 
> Signed-off-by: Phil Turnbull <phil.turnbull@oracle.com>
As I have nothing in the fixes-togreg branch, I've applied this to
the fixes-togreg-post-rc1 as that's the next one that will go upstream.
I don't tend to send Greg fixes during the merge window as he is
rather busy and won't pick them up until after anyways!

This may be delayed by a few weeks though as I'm travelling.

Thanks,

Jonathan
> ---
>  drivers/staging/iio/impedance-analyzer/ad5933.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/staging/iio/impedance-analyzer/ad5933.c b/drivers/staging/iio/impedance-analyzer/ad5933.c
> index 9f43976..34a6990 100644
> --- a/drivers/staging/iio/impedance-analyzer/ad5933.c
> +++ b/drivers/staging/iio/impedance-analyzer/ad5933.c
> @@ -419,6 +419,7 @@ static ssize_t ad5933_store(struct device *dev,
>  	mutex_lock(&indio_dev->mlock);
>  	switch ((u32)this_attr->address) {
>  	case AD5933_OUT_RANGE:
> +		ret = -EINVAL;
>  		for (i = 0; i < 4; i++)
>  			if (val == st->range_avail[i]) {
>  				st->ctrl_hb &= ~AD5933_CTRL_RANGE(0x3);
> @@ -426,7 +427,6 @@ static ssize_t ad5933_store(struct device *dev,
>  				ret = ad5933_cmd(st, 0);
>  				break;
>  			}
> -		ret = -EINVAL;
>  		break;
>  	case AD5933_IN_PGA_GAIN:
>  		if (sysfs_streq(buf, "1")) {
> 

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web