Re: [PATCH] iio: accel: kxsd9: fix the usage of spi_w8r8()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 17 June 2016 14:22:24 BST, Linus Walleij <linus.walleij@xxxxxxxxxx> wrote:
>These two spi_w8r8() calls return a value with is used by the code
>following the error check. The dubious use was caused by a cleanup
>patch.
>
>Fixes: d34dbee8ac8e ("staging:iio:accel:kxsd9 cleanup and conversion to
>iio_chan_spec.")
>Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>
>---
>Jonathan: I suspect the driver was never tested after the cleanup?
>I'm trying to use the driver to bolt on I2C support, but I'm a bit
>suspicious that it's not really working for SPI even.

Sadly it is more than possible. My test bodge rig for this one was down for a long time. (Hides guilty expression)
Most of it is back running now as I was looking at the sca3000 driver recently
 which used the same mashup (with another adapter cable).

Pretty simple device iirc so shouldn't be too hard to fix. Original driver got written
 in about a day long ago...

Where did you find one of these. I thought they were long obsoleted?

J
>---
> drivers/iio/accel/kxsd9.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
>diff --git a/drivers/iio/accel/kxsd9.c b/drivers/iio/accel/kxsd9.c
>index 923f56598d4b..3a9f106787d2 100644
>--- a/drivers/iio/accel/kxsd9.c
>+++ b/drivers/iio/accel/kxsd9.c
>@@ -81,7 +81,7 @@ static int kxsd9_write_scale(struct iio_dev
>*indio_dev, int micro)
> 
> 	mutex_lock(&st->buf_lock);
> 	ret = spi_w8r8(st->us, KXSD9_READ(KXSD9_REG_CTRL_C));
>-	if (ret)
>+	if (ret < 0)
> 		goto error_ret;
> 	st->tx[0] = KXSD9_WRITE(KXSD9_REG_CTRL_C);
> 	st->tx[1] = (ret & ~KXSD9_FS_MASK) | i;
>@@ -163,7 +163,7 @@ static int kxsd9_read_raw(struct iio_dev
>*indio_dev,
> 		break;
> 	case IIO_CHAN_INFO_SCALE:
> 		ret = spi_w8r8(st->us, KXSD9_READ(KXSD9_REG_CTRL_C));
>-		if (ret)
>+		if (ret < 0)
> 			goto error_ret;
> 		*val2 = kxsd9_micro_scales[ret & KXSD9_FS_MASK];
> 		ret = IIO_VAL_INT_PLUS_MICRO;

-- 
Sent from my Android device with K-9 Mail. Please excuse my brevity.
--
To unsubscribe from this list: send the line "unsubscribe linux-iio" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Input]     [Linux Kernel]     [Linux SCSI]     [X.org]

  Powered by Linux