staging: iio: chrdev.h rationalization.
authorJonathan Cameron <jic23@cam.ac.uk>
Tue, 30 Aug 2011 11:32:44 +0000 (12:32 +0100)
committerGreg Kroah-Hartman <gregkh@suse.de>
Tue, 6 Sep 2011 22:59:09 +0000 (15:59 -0700)
Push some functions out of header and include this where it is needed
in other headers only.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/staging/iio/chrdev.h
drivers/staging/iio/iio.h
drivers/staging/iio/industrialio-core.c
drivers/staging/iio/ring_generic.h

index 3e31ee6220edab7659371a6cd84473362c217edb..8a229e7c2eb4a1edf63110264db03b4ba9382606 100644 (file)
@@ -9,7 +9,6 @@
 
 #ifndef _IIO_CHRDEV_H_
 #define _IIO_CHRDEV_H_
-struct iio_dev;
 
 /**
  * struct iio_handler - Structure used to specify file operations
@@ -41,35 +40,4 @@ struct iio_event_data {
        s64     timestamp;
 };
 
-/**
- * struct iio_detected_event_list - list element for events that have occurred
- * @list:              linked list header
- * @ev:                        the event itself
- */
-struct iio_detected_event_list {
-       struct list_head                list;
-       struct iio_event_data           ev;
-};
-
-/**
- * struct iio_event_interface - chrdev interface for an event line
- * @dev:               device assocated with event interface
- * @handler:           fileoperations and related control for the chrdev
- * @wait:              wait queue to allow blocking reads of events
- * @event_list_lock:   mutex to protect the list of detected events
- * @det_events:                list of detected events
- * @max_events:                maximum number of events before new ones are dropped
- * @current_events:    number of events in detected list
- */
-struct iio_event_interface {
-       struct device                           dev;
-       struct iio_handler                      handler;
-       wait_queue_head_t                       wait;
-       struct mutex                            event_list_lock;
-       struct list_head                        det_events;
-       int                                     max_events;
-       int                                     current_events;
-       struct list_head dev_attr_list;
-};
-
 #endif
index 753f769736ef3f5fe1f0101732f9a5a4d10a644f..cfa148091baccc90c2ff3a655682506905b01192 100644 (file)
@@ -15,7 +15,6 @@
 #include <linux/cdev.h>
 #include <linux/irq.h>
 #include "sysfs.h"
-#include "chrdev.h"
 
 /* IIO TODO LIST */
 /*
@@ -178,6 +177,7 @@ static inline s64 iio_get_time_ns(void)
 #define IIO_VAL_INT_PLUS_NANO 3
 
 struct iio_trigger; /* forward declaration */
+struct iio_dev;
 
 /**
  * struct iio_info - constant information about device
index ed8a6df5bf424cd89b48810ecd6ed6341a9b7d71..8a21c5e7807d48a60dc7130dafae901d3ef4604f 100644 (file)
@@ -24,6 +24,7 @@
 #include "iio.h"
 #include "iio_core.h"
 #include "iio_core_trigger.h"
+#include "chrdev.h"
 
 #define IIO_ID_PREFIX "device"
 #define IIO_ID_FORMAT IIO_ID_PREFIX "%d"
@@ -117,6 +118,37 @@ static void iio_free_ida_val(struct ida *this_ida, int id)
        spin_unlock(&iio_ida_lock);
 }
 
+/**
+ * struct iio_detected_event_list - list element for events that have occurred
+ * @list:              linked list header
+ * @ev:                        the event itself
+ */
+struct iio_detected_event_list {
+       struct list_head                list;
+       struct iio_event_data           ev;
+};
+
+/**
+ * struct iio_event_interface - chrdev interface for an event line
+ * @dev:               device assocated with event interface
+ * @handler:           fileoperations and related control for the chrdev
+ * @wait:              wait queue to allow blocking reads of events
+ * @event_list_lock:   mutex to protect the list of detected events
+ * @det_events:                list of detected events
+ * @max_events:                maximum number of events before new ones are dropped
+ * @current_events:    number of events in detected list
+ */
+struct iio_event_interface {
+       struct device                           dev;
+       struct iio_handler                      handler;
+       wait_queue_head_t                       wait;
+       struct mutex                            event_list_lock;
+       struct list_head                        det_events;
+       int                                     max_events;
+       int                                     current_events;
+       struct list_head dev_attr_list;
+};
+
 int iio_push_event(struct iio_dev *dev_info,
                   int ev_line,
                   int ev_code,
index 3f26f7175b6a30d09608c66f18c93930225c3c8c..d103262dc5b92563a72481c0789e4b208f047ac3 100644 (file)
@@ -10,6 +10,7 @@
 #ifndef _IIO_RING_GENERIC_H_
 #define _IIO_RING_GENERIC_H_
 #include "iio.h"
+#include "chrdev.h"
 
 #ifdef CONFIG_IIO_RING_BUFFER