aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLars-Peter Clausen <lars@metafoo.de>2012-05-12 09:39:36 -0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2012-05-14 16:39:19 -0400
commit0fbf0a15f9efd9b7dd5e49619718b6b51f3ce093 (patch)
treec6e90bfa56a412afda6a0a3bdc64e89cf75995bf
parentce7ea56c270451820cfcc0c96aa6a73516b061ee (diff)
staging:iio:adis16209_read_ring_data: Pass IIO device directly
When calling adis16209_read_ring_data we pass the device struct of embedded in the IIO device only to look up the IIO device from the device struct again right away. This patch changes the code to pass the IIO device directly. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Acked-by: Jonathan Cameron <jic23@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/staging/iio/accel/adis16209_ring.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/drivers/staging/iio/accel/adis16209_ring.c b/drivers/staging/iio/accel/adis16209_ring.c
index f7ed989dd20c..090607504c93 100644
--- a/drivers/staging/iio/accel/adis16209_ring.c
+++ b/drivers/staging/iio/accel/adis16209_ring.c
@@ -12,13 +12,12 @@
12 12
13/** 13/**
14 * adis16209_read_ring_data() read data registers which will be placed into ring 14 * adis16209_read_ring_data() read data registers which will be placed into ring
15 * @dev: device associated with child of actual device (iio_dev or iio_trig) 15 * @indio_dev: the IIO device
16 * @rx: somewhere to pass back the value read 16 * @rx: somewhere to pass back the value read
17 **/ 17 **/
18static int adis16209_read_ring_data(struct device *dev, u8 *rx) 18static int adis16209_read_ring_data(struct iio_dev *indio_dev, u8 *rx)
19{ 19{
20 struct spi_message msg; 20 struct spi_message msg;
21 struct iio_dev *indio_dev = dev_get_drvdata(dev);
22 struct adis16209_state *st = iio_priv(indio_dev); 21 struct adis16209_state *st = iio_priv(indio_dev);
23 struct spi_transfer xfers[ADIS16209_OUTPUTS + 1]; 22 struct spi_transfer xfers[ADIS16209_OUTPUTS + 1];
24 int ret; 23 int ret;
@@ -71,7 +70,7 @@ static irqreturn_t adis16209_trigger_handler(int irq, void *p)
71 } 70 }
72 71
73 if (!bitmap_empty(indio_dev->active_scan_mask, indio_dev->masklength) && 72 if (!bitmap_empty(indio_dev->active_scan_mask, indio_dev->masklength) &&
74 adis16209_read_ring_data(&indio_dev->dev, st->rx) >= 0) 73 adis16209_read_ring_data(indio_dev, st->rx) >= 0)
75 for (; i < bitmap_weight(indio_dev->active_scan_mask, 74 for (; i < bitmap_weight(indio_dev->active_scan_mask,
76 indio_dev->masklength); i++) 75 indio_dev->masklength); i++)
77 data[i] = be16_to_cpup((__be16 *)&(st->rx[i*2])); 76 data[i] = be16_to_cpup((__be16 *)&(st->rx[i*2]));