Merge tag 'char-misc-6.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregk...
[linux-block.git] / include / linux / iio / buffer-dmaengine.h
index cbb8ba957fade348855f1deebf8527eaabf447af..81d9a19aeb9199dd58bb9d35a91f0ec4b00846df 100644 (file)
@@ -7,14 +7,28 @@
 #ifndef __IIO_DMAENGINE_H__
 #define __IIO_DMAENGINE_H__
 
+#include <linux/iio/buffer.h>
+
 struct iio_dev;
 struct device;
 
-struct iio_buffer *iio_dmaengine_buffer_alloc(struct device *dev,
-                                             const char *channel);
 void iio_dmaengine_buffer_free(struct iio_buffer *buffer);
-int devm_iio_dmaengine_buffer_setup(struct device *dev,
-                                   struct iio_dev *indio_dev,
-                                   const char *channel);
+struct iio_buffer *iio_dmaengine_buffer_setup_ext(struct device *dev,
+                                                 struct iio_dev *indio_dev,
+                                                 const char *channel,
+                                                 enum iio_buffer_direction dir);
+
+#define iio_dmaengine_buffer_setup(dev, indio_dev, channel)    \
+       iio_dmaengine_buffer_setup_ext(dev, indio_dev, channel, \
+                                      IIO_BUFFER_DIRECTION_IN)
+
+int devm_iio_dmaengine_buffer_setup_ext(struct device *dev,
+                                       struct iio_dev *indio_dev,
+                                       const char *channel,
+                                       enum iio_buffer_direction dir);
+
+#define devm_iio_dmaengine_buffer_setup(dev, indio_dev, channel)       \
+       devm_iio_dmaengine_buffer_setup_ext(dev, indio_dev, channel,    \
+                                           IIO_BUFFER_DIRECTION_IN)
 
 #endif