]> git.karo-electronics.de Git - mv-sheeva.git/commitdiff
staging:iio:buffer struct iio_buffer doesn't need an indio_dev pointer.
authorJonathan Cameron <jic23@kernel.org>
Mon, 5 Dec 2011 22:18:29 +0000 (22:18 +0000)
committerGreg Kroah-Hartman <gregkh@suse.de>
Thu, 8 Dec 2011 20:13:58 +0000 (12:13 -0800)
In all existing cases, the calls are coming from a location where
the indio_dev is already available.

Signed-off-by: Jonathan Cameron <jic23@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/staging/iio/accel/sca3000_core.c
drivers/staging/iio/accel/sca3000_ring.c
drivers/staging/iio/buffer.h
drivers/staging/iio/gyro/adis16260_core.c
drivers/staging/iio/impedance-analyzer/ad5933.c
drivers/staging/iio/industrialio-buffer.c
drivers/staging/iio/kfifo_buf.c
drivers/staging/iio/ring_sw.c

index a1277d2700ee56cf651e35861c326b2e01439142..1f30108fdb558dc18c1eba583ebad5472bf18b05 100644 (file)
@@ -1166,9 +1166,9 @@ static int __devinit sca3000_probe(struct spi_device *spi)
        if (ret < 0)
                goto error_unregister_dev;
        if (indio_dev->buffer) {
-               iio_scan_mask_set(indio_dev->buffer, 0);
-               iio_scan_mask_set(indio_dev->buffer, 1);
-               iio_scan_mask_set(indio_dev->buffer, 2);
+               iio_scan_mask_set(indio_dev, indio_dev->buffer, 0);
+               iio_scan_mask_set(indio_dev, indio_dev->buffer, 1);
+               iio_scan_mask_set(indio_dev, indio_dev->buffer, 2);
        }
 
        if (spi->irq) {
index 6a27a95bbba595a0d0b58f3f9d9577d3a7297162..6b824a11f7f4b42b0f438891469f9dc864a743d2 100644 (file)
@@ -157,8 +157,7 @@ static ssize_t sca3000_query_ring_int(struct device *dev,
 {
        struct iio_dev_attr *this_attr = to_iio_dev_attr(attr);
        int ret, val;
-       struct iio_buffer *ring = dev_get_drvdata(dev);
-       struct iio_dev *indio_dev = ring->indio_dev;
+       struct iio_dev *indio_dev = dev_get_drvdata(dev);
        struct sca3000_state *st = iio_priv(indio_dev);
 
        mutex_lock(&st->lock);
@@ -179,8 +178,7 @@ static ssize_t sca3000_set_ring_int(struct device *dev,
                                      const char *buf,
                                      size_t len)
 {
-       struct iio_buffer *ring = dev_get_drvdata(dev);
-       struct iio_dev *indio_dev = ring->indio_dev;
+       struct iio_dev *indio_dev = dev_get_drvdata(dev);
        struct sca3000_state *st = iio_priv(indio_dev);
        struct iio_dev_attr *this_attr = to_iio_dev_attr(attr);
        long val;
@@ -221,8 +219,7 @@ static ssize_t sca3000_show_buffer_scale(struct device *dev,
                                         struct device_attribute *attr,
                                         char *buf)
 {
-       struct iio_buffer *ring = dev_get_drvdata(dev);
-       struct iio_dev *indio_dev = ring->indio_dev;
+       struct iio_dev *indio_dev = dev_get_drvdata(dev);
        struct sca3000_state *st = iio_priv(indio_dev);
 
        return sprintf(buf, "0.%06d\n", 4*st->info->scale);
@@ -267,7 +264,7 @@ static struct iio_buffer *sca3000_rb_allocate(struct iio_dev *indio_dev)
        buf = &ring->buf;
        buf->stufftoread = 0;
        buf->attrs = &sca3000_ring_attr;
-       iio_buffer_init(buf, indio_dev);
+       iio_buffer_init(buf);
 
        return buf;
 }
index 501d4ee0bed891a655832b30c355cdf4da62b7b4..9b1a4f112f6891427da18a76557febcf6e6db661 100644 (file)
@@ -65,7 +65,6 @@ struct iio_buffer_access_funcs {
 
 /**
  * struct iio_buffer - general buffer structure
- * @indio_dev:         industrial I/O device structure
  * @length:            [DEVICE] number of datums in buffer
  * @bytes_per_datum:   [DEVICE] size of individual datum including timestamp
  * @scan_el_attrs:     [DRIVER] control of scan elements if that scan mode
@@ -79,7 +78,6 @@ struct iio_buffer_access_funcs {
  * @demux_bounce:      [INTERN] buffer for doing gather from incoming scan.
  **/
 struct iio_buffer {
-       struct iio_dev                          *indio_dev;
        int                                     length;
        int                                     bytes_per_datum;
        struct attribute_group                  *scan_el_attrs;
@@ -100,10 +98,8 @@ struct iio_buffer {
 /**
  * iio_buffer_init() - Initialize the buffer structure
  * @buffer: buffer to be initialized
- * @indio_dev: the iio device the buffer is assocated with
  **/
-void iio_buffer_init(struct iio_buffer *buffer,
-                         struct iio_dev *indio_dev);
+void iio_buffer_init(struct iio_buffer *buffer);
 
 void iio_buffer_deinit(struct iio_buffer *buffer);
 
@@ -120,14 +116,16 @@ static inline void __iio_update_buffer(struct iio_buffer *buffer,
        buffer->length = length;
 }
 
-int iio_scan_mask_query(struct iio_buffer *buffer, int bit);
+int iio_scan_mask_query(struct iio_dev *indio_dev,
+                       struct iio_buffer *buffer, int bit);
 
 /**
  * iio_scan_mask_set() - set particular bit in the scan mask
  * @buffer: the buffer whose scan mask we are interested in
  * @bit: the bit to be set.
  **/
-int iio_scan_mask_set(struct iio_buffer *buffer, int bit);
+int iio_scan_mask_set(struct iio_dev *indio_dev,
+                     struct iio_buffer *buffer, int bit);
 
 /**
  * iio_push_to_buffer() - push to a registered buffer.
index 5614a220f4a2cad71eb5f73b170b21bcbfdc566a..871f76bb3c382db281fae9de3e1e8c59f669de29 100644 (file)
@@ -632,11 +632,16 @@ static int __devinit adis16260_probe(struct spi_device *spi)
        }
        if (indio_dev->buffer) {
                /* Set default scan mode */
-               iio_scan_mask_set(indio_dev->buffer, ADIS16260_SCAN_SUPPLY);
-               iio_scan_mask_set(indio_dev->buffer, ADIS16260_SCAN_GYRO);
-               iio_scan_mask_set(indio_dev->buffer, ADIS16260_SCAN_AUX_ADC);
-               iio_scan_mask_set(indio_dev->buffer, ADIS16260_SCAN_TEMP);
-               iio_scan_mask_set(indio_dev->buffer, ADIS16260_SCAN_ANGL);
+               iio_scan_mask_set(indio_dev, indio_dev->buffer,
+                                 ADIS16260_SCAN_SUPPLY);
+               iio_scan_mask_set(indio_dev, indio_dev->buffer,
+                                 ADIS16260_SCAN_GYRO);
+               iio_scan_mask_set(indio_dev, indio_dev->buffer,
+                                 ADIS16260_SCAN_AUX_ADC);
+               iio_scan_mask_set(indio_dev, indio_dev->buffer,
+                                 ADIS16260_SCAN_TEMP);
+               iio_scan_mask_set(indio_dev, indio_dev->buffer,
+                                 ADIS16260_SCAN_ANGL);
        }
        if (spi->irq) {
                ret = adis16260_probe_trigger(indio_dev);
index 23241c4ca03eca67030c03e91733eba4bd5a75d6..f02d1c06b4541362c644e08ecef5b37ea0e05abc 100644 (file)
@@ -736,8 +736,8 @@ static int __devinit ad5933_probe(struct i2c_client *client,
                goto error_unreg_ring;
 
        /* enable both REAL and IMAG channels by default */
-       iio_scan_mask_set(indio_dev->buffer, 0);
-       iio_scan_mask_set(indio_dev->buffer, 1);
+       iio_scan_mask_set(indio_dev, indio_dev->buffer, 0);
+       iio_scan_mask_set(indio_dev, indio_dev->buffer, 1);
 
        ret = ad5933_setup(st);
        if (ret)
index b46ae6a2424f7dc079403b0e7018acaaa832bd4c..552e33f74769e46b7b66782649a8fdf4d5ae99ae 100644 (file)
@@ -85,10 +85,9 @@ void iio_chrdev_buffer_release(struct iio_dev *indio_dev)
                rb->access->unmark_in_use(rb);
 }
 
-void iio_buffer_init(struct iio_buffer *buffer, struct iio_dev *indio_dev)
+void iio_buffer_init(struct iio_buffer *buffer)
 {
        INIT_LIST_HEAD(&buffer->demux_list);
-       buffer->indio_dev = indio_dev;
        init_waitqueue_head(&buffer->pollq);
 }
 EXPORT_SYMBOL(iio_buffer_init);
@@ -158,7 +157,7 @@ static ssize_t iio_scan_el_store(struct device *dev,
                ret = -EBUSY;
                goto error_ret;
        }
-       ret = iio_scan_mask_query(buffer, this_attr->address);
+       ret = iio_scan_mask_query(indio_dev, buffer, this_attr->address);
        if (ret < 0)
                goto error_ret;
        if (!state && ret) {
@@ -166,7 +165,7 @@ static ssize_t iio_scan_el_store(struct device *dev,
                if (ret)
                        goto error_ret;
        } else if (state && !ret) {
-               ret = iio_scan_mask_set(buffer, this_attr->address);
+               ret = iio_scan_mask_set(indio_dev, buffer, this_attr->address);
                if (ret)
                        goto error_ret;
        }
@@ -578,9 +577,9 @@ EXPORT_SYMBOL(iio_sw_buffer_preenable);
  * @buffer: the buffer whose scan mask we are interested in
  * @bit: the bit to be set.
  **/
-int iio_scan_mask_set(struct iio_buffer *buffer, int bit)
+int iio_scan_mask_set(struct iio_dev *indio_dev,
+                     struct iio_buffer *buffer, int bit)
 {
-       struct iio_dev *indio_dev = buffer->indio_dev;
        unsigned long *mask;
        unsigned long *trialmask;
 
@@ -615,9 +614,9 @@ int iio_scan_mask_set(struct iio_buffer *buffer, int bit)
 };
 EXPORT_SYMBOL_GPL(iio_scan_mask_set);
 
-int iio_scan_mask_query(struct iio_buffer *buffer, int bit)
+int iio_scan_mask_query(struct iio_dev *indio_dev,
+                       struct iio_buffer *buffer, int bit)
 {
-       struct iio_dev *indio_dev = buffer->indio_dev;
        long *mask;
 
        if (bit > indio_dev->masklength)
index fb3b7ae978d14c82d948232dda1f4de647bf2a18..d8867abd0a84f3b85361a1e28d983497583c04de 100644 (file)
@@ -96,7 +96,7 @@ struct iio_buffer *iio_kfifo_allocate(struct iio_dev *indio_dev)
        if (!kf)
                return NULL;
        kf->update_needed = true;
-       iio_buffer_init(&kf->buffer, indio_dev);
+       iio_buffer_init(&kf->buffer);
        kf->buffer.attrs = &iio_kfifo_attribute_group;
        __iio_init_kfifo(kf);
 
index 37d26e658de190b64b42fe7a4fd9aefeff3d3610..a541a73a2105836b30208895c6999253c21a78aa 100644 (file)
@@ -385,7 +385,7 @@ struct iio_buffer *iio_sw_rb_allocate(struct iio_dev *indio_dev)
                return NULL;
        ring->update_needed = true;
        buf = &ring->buf;
-       iio_buffer_init(buf, indio_dev);
+       iio_buffer_init(buf);
        __iio_init_sw_ring_buffer(ring);
        buf->attrs = &iio_ring_attribute_group;