staging: comedi: add comedi_write_array_to_buffer()
authorIan Abbott <abbotti@mev.co.uk>
Mon, 15 Sep 2014 12:46:03 +0000 (13:46 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 19 Sep 2014 22:55:31 +0000 (15:55 -0700)
The "comedi_fc" module contains a few functions useful to Comedi
drivers.  Their functionality is being migrated to the core "comedi"
module and renamed to start with the prefix `comedi_`.  As part of this
migration, move `cfc_write_array_to_buffer()` into the core comedi
module and rename it to `comedi_write_array_to_buffer()`.  Change the
external declaration of `cfc_write_array_to_buffer()` into an inline
function that calls `comedi_write_array_to_buffer()`.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Reviewed-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/comedi/comedi_buf.c
drivers/staging/comedi/comedidev.h
drivers/staging/comedi/drivers/comedi_fc.c
drivers/staging/comedi/drivers/comedi_fc.h

index df4a9c4bca35187f83fb34dfa88e2ec862e5a425..5aa86842fcce1607ed8a1dd35981f1e8fcc60c5f 100644 (file)
@@ -509,3 +509,30 @@ void comedi_buf_memcpy_from(struct comedi_subdevice *s, unsigned int offset,
        }
 }
 EXPORT_SYMBOL_GPL(comedi_buf_memcpy_from);
+
+/* Writes an array of data points to comedi's buffer */
+unsigned int comedi_write_array_to_buffer(struct comedi_subdevice *s,
+                                         const void *data,
+                                         unsigned int num_bytes)
+{
+       struct comedi_async *async = s->async;
+       unsigned int retval;
+
+       if (num_bytes == 0)
+               return 0;
+
+       retval = comedi_buf_write_alloc(s, num_bytes);
+       if (retval != num_bytes) {
+               dev_warn(s->device->class_dev, "buffer overrun\n");
+               async->events |= COMEDI_CB_OVERFLOW;
+               return 0;
+       }
+
+       comedi_buf_memcpy_to(s, 0, data, num_bytes);
+       comedi_buf_write_free(s, num_bytes);
+       comedi_inc_scan_progress(s, num_bytes);
+       async->events |= COMEDI_CB_BLOCK;
+
+       return num_bytes;
+}
+EXPORT_SYMBOL_GPL(comedi_write_array_to_buffer);
index 796a0a9ab68ef1df359be2f0d4af26141485addc..bcc85560c2616f181c8030c9fa57695bb60d2e8c 100644 (file)
@@ -426,6 +426,9 @@ void comedi_buf_memcpy_to(struct comedi_subdevice *s, unsigned int offset,
                          const void *source, unsigned int num_bytes);
 void comedi_buf_memcpy_from(struct comedi_subdevice *s, unsigned int offset,
                            void *destination, unsigned int num_bytes);
+unsigned int comedi_write_array_to_buffer(struct comedi_subdevice *s,
+                                         const void *data,
+                                         unsigned int num_bytes);
 
 /* drivers.c - general comedi driver functions */
 
index 6f872207ec3ac1276300758eee966ac59f45db9e..d4244ebac4c996554dc35be7aab510ddc33b7ccc 100644 (file)
 
 #include "comedi_fc.h"
 
-/* Writes an array of data points to comedi's buffer */
-unsigned int cfc_write_array_to_buffer(struct comedi_subdevice *s,
-                                      const void *data, unsigned int num_bytes)
-{
-       struct comedi_async *async = s->async;
-       unsigned int retval;
-
-       if (num_bytes == 0)
-               return 0;
-
-       retval = comedi_buf_write_alloc(s, num_bytes);
-       if (retval != num_bytes) {
-               dev_warn(s->device->class_dev, "buffer overrun\n");
-               async->events |= COMEDI_CB_OVERFLOW;
-               return 0;
-       }
-
-       comedi_buf_memcpy_to(s, 0, data, num_bytes);
-       comedi_buf_write_free(s, num_bytes);
-       comedi_inc_scan_progress(s, num_bytes);
-       async->events |= COMEDI_CB_BLOCK;
-
-       return num_bytes;
-}
-EXPORT_SYMBOL_GPL(cfc_write_array_to_buffer);
-
 unsigned int cfc_read_array_from_buffer(struct comedi_subdevice *s,
                                        void *data, unsigned int num_bytes)
 {
index fa3de9e873251781afb36b269dd4ccaf7f1898e8..51b3157bd348ff58860e6f70167e6c902ce3aee3 100644 (file)
@@ -34,10 +34,12 @@ static inline void cfc_inc_scan_progress(struct comedi_subdevice *s,
        comedi_inc_scan_progress(s, num_bytes);
 }
 
-/* Writes an array of data points to comedi's buffer */
-unsigned int cfc_write_array_to_buffer(struct comedi_subdevice *s,
-                                      const void *data,
-                                      unsigned int num_bytes);
+static inline unsigned int cfc_write_array_to_buffer(struct comedi_subdevice *s,
+                                                    const void *data,
+                                                    unsigned int num_bytes)
+{
+       return comedi_write_array_to_buffer(s, data, num_bytes);
+}
 
 static inline unsigned int cfc_write_to_buffer(struct comedi_subdevice *s,
                                               unsigned short data)