Hi Jonathan,
Here's the v11 of my patchset that introduces DMABUF support to IIO.
It addresses the few points that were raised in the review of the v10.
It also adds Nuno as a co-developer.
Changelog:
- [3/7]:
- Document .lock_queue / .unlock_queue buffer callbacks
- Add small comment to explain what the spinlock protects
- Use guard(mutex)
- [4/7]:
- Remove useless field "attach" in struct iio_dma_buffer_block
- Document "sg_table" and "fence" fields in struct iio_block_state
- [6/7]:
- "a IIO buffer" -> "an IIO buffer"
- Add variable name in IOCTL calls
- [7/7]: New patch, to document the DMA changes
Cheers,
-Paul
Paul Cercueil (7):
dmaengine: Add API function dmaengine_prep_peripheral_dma_vec()
dmaengine: dma-axi-dmac: Implement device_prep_peripheral_dma_vec
iio: core: Add new DMABUF interface infrastructure
iio: buffer-dma: Enable support for DMABUFs
iio: buffer-dmaengine: Support new DMABUF based userspace API
Documentation: iio: Document high-speed DMABUF based API
Documentation: dmaengine: Document new dma_vec API
Documentation/driver-api/dmaengine/client.rst | 9 +
.../driver-api/dmaengine/provider.rst | 10 +
Documentation/iio/iio_dmabuf_api.rst | 54 +++
Documentation/iio/index.rst | 1 +
drivers/dma/dma-axi-dmac.c | 40 ++
drivers/iio/Kconfig | 1 +
drivers/iio/buffer/industrialio-buffer-dma.c | 178 ++++++-
.../buffer/industrialio-buffer-dmaengine.c | 62 ++-
drivers/iio/industrialio-buffer.c | 457 ++++++++++++++++++
include/linux/dmaengine.h | 33 ++
include/linux/iio/buffer-dma.h | 31 ++
include/linux/iio/buffer_impl.h | 33 ++
include/uapi/linux/iio/buffer.h | 22 +
13 files changed, 911 insertions(+), 20 deletions(-)
create mode 100644 Documentation/iio/iio_dmabuf_api.rst
--
2.43.0