aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/staging/iio/imu
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/staging/iio/imu')
-rw-r--r--drivers/staging/iio/imu/adis16300_core.c7
-rw-r--r--drivers/staging/iio/imu/adis16300_ring.c9
-rw-r--r--drivers/staging/iio/imu/adis16350.h20
-rw-r--r--drivers/staging/iio/imu/adis16350_core.c7
-rw-r--r--drivers/staging/iio/imu/adis16350_ring.c9
-rw-r--r--drivers/staging/iio/imu/adis16400.h11
-rw-r--r--drivers/staging/iio/imu/adis16400_core.c7
-rw-r--r--drivers/staging/iio/imu/adis16400_ring.c10
8 files changed, 12 insertions, 68 deletions
diff --git a/drivers/staging/iio/imu/adis16300_core.c b/drivers/staging/iio/imu/adis16300_core.c
index 28667e8f26c..f1950d56cb1 100644
--- a/drivers/staging/iio/imu/adis16300_core.c
+++ b/drivers/staging/iio/imu/adis16300_core.c
@@ -20,6 +20,7 @@
20 20
21#include "../iio.h" 21#include "../iio.h"
22#include "../sysfs.h" 22#include "../sysfs.h"
23#include "../ring_generic.h"
23#include "../accel/accel.h" 24#include "../accel/accel.h"
24#include "../accel/inclinometer.h" 25#include "../accel/inclinometer.h"
25#include "../gyro/gyro.h" 26#include "../gyro/gyro.h"
@@ -644,7 +645,7 @@ static int __devinit adis16300_probe(struct spi_device *spi)
644 goto error_unreg_ring_funcs; 645 goto error_unreg_ring_funcs;
645 regdone = 1; 646 regdone = 1;
646 647
647 ret = adis16300_initialize_ring(st->indio_dev->ring); 648 ret = iio_ring_buffer_register(st->indio_dev->ring, 0);
648 if (ret) { 649 if (ret) {
649 printk(KERN_ERR "failed to initialize the ring\n"); 650 printk(KERN_ERR "failed to initialize the ring\n");
650 goto error_unreg_ring_funcs; 651 goto error_unreg_ring_funcs;
@@ -676,7 +677,7 @@ error_unregister_line:
676 if (spi->irq) 677 if (spi->irq)
677 iio_unregister_interrupt_line(st->indio_dev, 0); 678 iio_unregister_interrupt_line(st->indio_dev, 0);
678error_uninitialize_ring: 679error_uninitialize_ring:
679 adis16300_uninitialize_ring(st->indio_dev->ring); 680 iio_ring_buffer_unregister(st->indio_dev->ring);
680error_unreg_ring_funcs: 681error_unreg_ring_funcs:
681 adis16300_unconfigure_ring(st->indio_dev); 682 adis16300_unconfigure_ring(st->indio_dev);
682error_free_dev: 683error_free_dev:
@@ -710,7 +711,7 @@ static int adis16300_remove(struct spi_device *spi)
710 if (spi->irq) 711 if (spi->irq)
711 iio_unregister_interrupt_line(indio_dev, 0); 712 iio_unregister_interrupt_line(indio_dev, 0);
712 713
713 adis16300_uninitialize_ring(indio_dev->ring); 714 iio_ring_buffer_unregister(indio_dev->ring);
714 iio_device_unregister(indio_dev); 715 iio_device_unregister(indio_dev);
715 adis16300_unconfigure_ring(indio_dev); 716 adis16300_unconfigure_ring(indio_dev);
716 kfree(st->tx); 717 kfree(st->tx);
diff --git a/drivers/staging/iio/imu/adis16300_ring.c b/drivers/staging/iio/imu/adis16300_ring.c
index a76d43cd209..3bf9904f7d7 100644
--- a/drivers/staging/iio/imu/adis16300_ring.c
+++ b/drivers/staging/iio/imu/adis16300_ring.c
@@ -241,12 +241,3 @@ error_iio_sw_rb_free:
241 return ret; 241 return ret;
242} 242}
243 243
244int adis16300_initialize_ring(struct iio_ring_buffer *ring)
245{
246 return iio_ring_buffer_register(ring, 0);
247}
248
249void adis16300_uninitialize_ring(struct iio_ring_buffer *ring)
250{
251 iio_ring_buffer_unregister(ring);
252}
diff --git a/drivers/staging/iio/imu/adis16350.h b/drivers/staging/iio/imu/adis16350.h
index b4533a0e0ef..d94f6ab57fb 100644
--- a/drivers/staging/iio/imu/adis16350.h
+++ b/drivers/staging/iio/imu/adis16350.h
@@ -148,8 +148,6 @@ ssize_t adis16350_read_data_from_ring(struct device *dev,
148int adis16350_configure_ring(struct iio_dev *indio_dev); 148int adis16350_configure_ring(struct iio_dev *indio_dev);
149void adis16350_unconfigure_ring(struct iio_dev *indio_dev); 149void adis16350_unconfigure_ring(struct iio_dev *indio_dev);
150 150
151int adis16350_initialize_ring(struct iio_ring_buffer *ring);
152void adis16350_uninitialize_ring(struct iio_ring_buffer *ring);
153#else /* CONFIG_IIO_RING_BUFFER */ 151#else /* CONFIG_IIO_RING_BUFFER */
154 152
155static inline void adis16350_remove_trigger(struct iio_dev *indio_dev) 153static inline void adis16350_remove_trigger(struct iio_dev *indio_dev)
@@ -169,23 +167,5 @@ adis16350_read_data_from_ring(struct device *dev,
169 return 0; 167 return 0;
170} 168}
171 169
172static int adis16350_configure_ring(struct iio_dev *indio_dev)
173{
174 return 0;
175}
176
177static inline void adis16350_unconfigure_ring(struct iio_dev *indio_dev)
178{
179}
180
181static inline int adis16350_initialize_ring(struct iio_ring_buffer *ring)
182{
183 return 0;
184}
185
186static inline void adis16350_uninitialize_ring(struct iio_ring_buffer *ring)
187{
188}
189
190#endif /* CONFIG_IIO_RING_BUFFER */ 170#endif /* CONFIG_IIO_RING_BUFFER */
191#endif /* SPI_ADIS16350_H_ */ 171#endif /* SPI_ADIS16350_H_ */
diff --git a/drivers/staging/iio/imu/adis16350_core.c b/drivers/staging/iio/imu/adis16350_core.c
index 0bb19a9d12f..1575b7b5d44 100644
--- a/drivers/staging/iio/imu/adis16350_core.c
+++ b/drivers/staging/iio/imu/adis16350_core.c
@@ -20,6 +20,7 @@
20 20
21#include "../iio.h" 21#include "../iio.h"
22#include "../sysfs.h" 22#include "../sysfs.h"
23#include "../ring_generic.h"
23#include "../accel/accel.h" 24#include "../accel/accel.h"
24#include "../adc/adc.h" 25#include "../adc/adc.h"
25#include "../gyro/gyro.h" 26#include "../gyro/gyro.h"
@@ -619,7 +620,7 @@ static int __devinit adis16350_probe(struct spi_device *spi)
619 goto error_unreg_ring_funcs; 620 goto error_unreg_ring_funcs;
620 regdone = 1; 621 regdone = 1;
621 622
622 ret = adis16350_initialize_ring(st->indio_dev->ring); 623 ret = iio_ring_buffer_register(st->indio_dev->ring, 0);
623 if (ret) { 624 if (ret) {
624 printk(KERN_ERR "failed to initialize the ring\n"); 625 printk(KERN_ERR "failed to initialize the ring\n");
625 goto error_unreg_ring_funcs; 626 goto error_unreg_ring_funcs;
@@ -651,7 +652,7 @@ error_unregister_line:
651 if (spi->irq) 652 if (spi->irq)
652 iio_unregister_interrupt_line(st->indio_dev, 0); 653 iio_unregister_interrupt_line(st->indio_dev, 0);
653error_uninitialize_ring: 654error_uninitialize_ring:
654 adis16350_uninitialize_ring(st->indio_dev->ring); 655 iio_ring_buffer_unregister(st->indio_dev->ring);
655error_unreg_ring_funcs: 656error_unreg_ring_funcs:
656 adis16350_unconfigure_ring(st->indio_dev); 657 adis16350_unconfigure_ring(st->indio_dev);
657error_free_dev: 658error_free_dev:
@@ -685,7 +686,7 @@ static int adis16350_remove(struct spi_device *spi)
685 if (spi->irq) 686 if (spi->irq)
686 iio_unregister_interrupt_line(indio_dev, 0); 687 iio_unregister_interrupt_line(indio_dev, 0);
687 688
688 adis16350_uninitialize_ring(indio_dev->ring); 689 iio_ring_buffer_unregister(indio_dev->ring);
689 iio_device_unregister(indio_dev); 690 iio_device_unregister(indio_dev);
690 adis16350_unconfigure_ring(indio_dev); 691 adis16350_unconfigure_ring(indio_dev);
691 kfree(st->tx); 692 kfree(st->tx);
diff --git a/drivers/staging/iio/imu/adis16350_ring.c b/drivers/staging/iio/imu/adis16350_ring.c
index ca4f685d2f5..319aa34b19c 100644
--- a/drivers/staging/iio/imu/adis16350_ring.c
+++ b/drivers/staging/iio/imu/adis16350_ring.c
@@ -246,12 +246,3 @@ error_iio_sw_rb_free:
246 return ret; 246 return ret;
247} 247}
248 248
249int adis16350_initialize_ring(struct iio_ring_buffer *ring)
250{
251 return iio_ring_buffer_register(ring, 0);
252}
253
254void adis16350_uninitialize_ring(struct iio_ring_buffer *ring)
255{
256 iio_ring_buffer_unregister(ring);
257}
diff --git a/drivers/staging/iio/imu/adis16400.h b/drivers/staging/iio/imu/adis16400.h
index f74faee1d29..0685195b351 100644
--- a/drivers/staging/iio/imu/adis16400.h
+++ b/drivers/staging/iio/imu/adis16400.h
@@ -178,8 +178,6 @@ ssize_t adis16400_read_data_from_ring(struct device *dev,
178int adis16400_configure_ring(struct iio_dev *indio_dev); 178int adis16400_configure_ring(struct iio_dev *indio_dev);
179void adis16400_unconfigure_ring(struct iio_dev *indio_dev); 179void adis16400_unconfigure_ring(struct iio_dev *indio_dev);
180 180
181int adis16400_initialize_ring(struct iio_ring_buffer *ring);
182void adis16400_uninitialize_ring(struct iio_ring_buffer *ring);
183#else /* CONFIG_IIO_RING_BUFFER */ 181#else /* CONFIG_IIO_RING_BUFFER */
184 182
185static inline void adis16400_remove_trigger(struct iio_dev *indio_dev) 183static inline void adis16400_remove_trigger(struct iio_dev *indio_dev)
@@ -208,14 +206,5 @@ static inline void adis16400_unconfigure_ring(struct iio_dev *indio_dev)
208{ 206{
209} 207}
210 208
211static inline int adis16400_initialize_ring(struct iio_ring_buffer *ring)
212{
213 return 0;
214}
215
216static inline void adis16400_uninitialize_ring(struct iio_ring_buffer *ring)
217{
218}
219
220#endif /* CONFIG_IIO_RING_BUFFER */ 209#endif /* CONFIG_IIO_RING_BUFFER */
221#endif /* SPI_ADIS16400_H_ */ 210#endif /* SPI_ADIS16400_H_ */
diff --git a/drivers/staging/iio/imu/adis16400_core.c b/drivers/staging/iio/imu/adis16400_core.c
index 160585fab31..6013fee218e 100644
--- a/drivers/staging/iio/imu/adis16400_core.c
+++ b/drivers/staging/iio/imu/adis16400_core.c
@@ -27,6 +27,7 @@
27 27
28#include "../iio.h" 28#include "../iio.h"
29#include "../sysfs.h" 29#include "../sysfs.h"
30#include "../ring_generic.h"
30#include "../accel/accel.h" 31#include "../accel/accel.h"
31#include "../adc/adc.h" 32#include "../adc/adc.h"
32#include "../gyro/gyro.h" 33#include "../gyro/gyro.h"
@@ -641,7 +642,7 @@ static int __devinit adis16400_probe(struct spi_device *spi)
641 goto error_unreg_ring_funcs; 642 goto error_unreg_ring_funcs;
642 regdone = 1; 643 regdone = 1;
643 644
644 ret = adis16400_initialize_ring(st->indio_dev->ring); 645 ret = iio_ring_buffer_register(st->indio_dev->ring, 0);
645 if (ret) { 646 if (ret) {
646 printk(KERN_ERR "failed to initialize the ring\n"); 647 printk(KERN_ERR "failed to initialize the ring\n");
647 goto error_unreg_ring_funcs; 648 goto error_unreg_ring_funcs;
@@ -674,7 +675,7 @@ error_unregister_line:
674 if (st->indio_dev->modes & INDIO_RING_TRIGGERED) 675 if (st->indio_dev->modes & INDIO_RING_TRIGGERED)
675 iio_unregister_interrupt_line(st->indio_dev, 0); 676 iio_unregister_interrupt_line(st->indio_dev, 0);
676error_uninitialize_ring: 677error_uninitialize_ring:
677 adis16400_uninitialize_ring(st->indio_dev->ring); 678 iio_ring_buffer_unregister(st->indio_dev->ring);
678error_unreg_ring_funcs: 679error_unreg_ring_funcs:
679 adis16400_unconfigure_ring(st->indio_dev); 680 adis16400_unconfigure_ring(st->indio_dev);
680error_free_dev: 681error_free_dev:
@@ -709,7 +710,7 @@ static int adis16400_remove(struct spi_device *spi)
709 if (spi->irq && gpio_is_valid(irq_to_gpio(spi->irq)) > 0) 710 if (spi->irq && gpio_is_valid(irq_to_gpio(spi->irq)) > 0)
710 iio_unregister_interrupt_line(indio_dev, 0); 711 iio_unregister_interrupt_line(indio_dev, 0);
711 712
712 adis16400_uninitialize_ring(indio_dev->ring); 713 iio_ring_buffer_unregister(st->indio_dev->ring);
713 adis16400_unconfigure_ring(indio_dev); 714 adis16400_unconfigure_ring(indio_dev);
714 iio_device_unregister(indio_dev); 715 iio_device_unregister(indio_dev);
715 kfree(st->tx); 716 kfree(st->tx);
diff --git a/drivers/staging/iio/imu/adis16400_ring.c b/drivers/staging/iio/imu/adis16400_ring.c
index 59d62a78096..c7744efefd7 100644
--- a/drivers/staging/iio/imu/adis16400_ring.c
+++ b/drivers/staging/iio/imu/adis16400_ring.c
@@ -252,13 +252,3 @@ error_iio_sw_rb_free:
252 iio_sw_rb_free(indio_dev->ring); 252 iio_sw_rb_free(indio_dev->ring);
253 return ret; 253 return ret;
254} 254}
255
256int adis16400_initialize_ring(struct iio_ring_buffer *ring)
257{
258 return iio_ring_buffer_register(ring, 0);
259}
260
261void adis16400_uninitialize_ring(struct iio_ring_buffer *ring)
262{
263 iio_ring_buffer_unregister(ring);
264}