All of lore.kernel.org
 help / color / mirror / Atom feed
* [RFC PATCH 0/5] iio: buffer: add output buffer and cyclic mode
@ 2021-02-12 10:20 Alexandru Ardelean
  2021-02-12 10:20 ` [RFC PATCH 1/5] iio: Add output buffer support Alexandru Ardelean
                   ` (5 more replies)
  0 siblings, 6 replies; 11+ messages in thread
From: Alexandru Ardelean @ 2021-02-12 10:20 UTC (permalink / raw)
  To: linux-kernel, linux-iio
  Cc: lars, Michael.Hennerich, jic23, nuno.sa, dragos.bogdan,
	Alexandru Ardelean

Largely, an adaptation of Lars' work, applied on the IIO multi-buffer
support + high-speed/mmap support [1].
Found here:
  https://github.com/larsclausen/linux/commits/iio-high-speed-5.10
But this isn't tested.

[1] Requires that these sets be applied (in this order):
* https://lore.kernel.org/linux-iio/20210211122452.78106-1-alexandru.ardelean@analog.com/T/#t
* https://lore.kernel.org/linux-iio/20210212101143.18993-1-alexandru.ardelean@analog.com/T/#t

Some of the variation from the original work are:
1. It's applied on top of the multibuffer support; so the direction of the
   data is set per iio_buffer, and not iio_dev
2. Cyclic mode is a separate patch
3. devm_iio_dmaengine_buffer_alloc() requires the definition of
   'enum iio_buffer_direction'; which means that 'linux/iio/buffer.h'
   needs to be included in  buffer-dma.h; Lars tried to use a bool, but
   using the enum seems a bit more consistent and allows us to maybe
   go down the route of both I/O buffers (some day); not sure if
   that's sane or not (you never know)
4. Various re-formatting; and added some docstrings where I remembered
   to so so

Lars-Peter Clausen (5):
  iio: Add output buffer support
  iio: kfifo-buffer: Add output buffer support
  iio: buffer-dma: Allow to provide custom buffer ops
  iio: buffer-dma: Add output buffer support
  iio: buffer-dma: add support for cyclic DMA transfers

 drivers/iio/adc/adi-axi-adc.c                 |   5 +-
 drivers/iio/buffer/industrialio-buffer-dma.c  | 120 ++++++++++++++++--
 .../buffer/industrialio-buffer-dmaengine.c    |  57 +++++++--
 drivers/iio/buffer/kfifo_buf.c                |  50 ++++++++
 drivers/iio/industrialio-buffer.c             | 110 +++++++++++++++-
 include/linux/iio/buffer-dma.h                |  11 +-
 include/linux/iio/buffer-dmaengine.h          |   7 +-
 include/linux/iio/buffer.h                    |   7 +
 include/linux/iio/buffer_impl.h               |  11 ++
 include/uapi/linux/iio/buffer.h               |   1 +
 10 files changed, 348 insertions(+), 31 deletions(-)

-- 
2.17.1


^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2021-02-14 16:33 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-02-12 10:20 [RFC PATCH 0/5] iio: buffer: add output buffer and cyclic mode Alexandru Ardelean
2021-02-12 10:20 ` [RFC PATCH 1/5] iio: Add output buffer support Alexandru Ardelean
2021-02-14 16:21   ` Jonathan Cameron
2021-02-12 10:20 ` [RFC PATCH 2/5] iio: kfifo-buffer: " Alexandru Ardelean
2021-02-14 16:23   ` Jonathan Cameron
2021-02-12 10:20 ` [RFC PATCH 3/5] iio: buffer-dma: Allow to provide custom buffer ops Alexandru Ardelean
2021-02-12 10:20 ` [RFC PATCH 4/5] iio: buffer-dma: Add output buffer support Alexandru Ardelean
2021-02-14 16:29   ` Jonathan Cameron
2021-02-12 10:20 ` [RFC PATCH 5/5] iio: buffer-dma: add support for cyclic DMA transfers Alexandru Ardelean
2021-02-14 16:31   ` Jonathan Cameron
2021-02-14 16:32 ` [RFC PATCH 0/5] iio: buffer: add output buffer and cyclic mode Jonathan Cameron

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.