diff options
author | Jonathan Cameron <jic23@cam.ac.uk> | 2011-08-12 17:08:36 +0100 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2011-08-23 13:31:06 -0700 |
commit | 7a6ff010e5f423822145e728a57744e5d0f18e2f (patch) | |
tree | 43a7662adfac75b8d00752b4d9f44e2eb5c3d809 /drivers/staging/iio/imu/adis16400_core.c | |
parent | deda386deb537dd2c8ec129bb53c1ffe57e827f7 (diff) |
staging:iio:imu:adis16400: use strtobool for reset sysfs and don't assign unused tx members.
Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Acked-by: Michael Hennerich <michael.hennerich@analog.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/staging/iio/imu/adis16400_core.c')
-rw-r--r-- | drivers/staging/iio/imu/adis16400_core.c | 23 |
1 files changed, 11 insertions, 12 deletions
diff --git a/drivers/staging/iio/imu/adis16400_core.c b/drivers/staging/iio/imu/adis16400_core.c index a2c3b67dcbdf..4feee26c6f6b 100644 --- a/drivers/staging/iio/imu/adis16400_core.c +++ b/drivers/staging/iio/imu/adis16400_core.c @@ -150,8 +150,6 @@ static int adis16400_spi_read_reg_16(struct iio_dev *indio_dev, mutex_lock(&st->buf_lock); st->tx[0] = ADIS16400_READ_REG(lower_reg_address); st->tx[1] = 0; - st->tx[2] = 0; - st->tx[3] = 0; spi_message_init(&msg); spi_message_add_tail(&xfers[0], &msg); @@ -240,17 +238,18 @@ static ssize_t adis16400_write_reset(struct device *dev, struct device_attribute *attr, const char *buf, size_t len) { - struct iio_dev *indio_dev = dev_get_drvdata(dev); + bool val; + int ret; - if (len < 1) - return -1; - switch (buf[0]) { - case '1': - case 'y': - case 'Y': - return adis16400_reset(indio_dev); - } - return -1; + ret = strtobool(buf, &val); + if (ret < 0) + return ret; + if (val) + ret = adis16400_reset(dev_get_drvdata(dev)); + if (ret < 0) + return ret; + + return len; } int adis16400_set_irq(struct iio_dev *indio_dev, bool enable) |