| From: |
| Paul Cercueil <paul-AT-crapouillou.net> |
| To: |
| Jonathan Cameron <jic23-AT-kernel.org>, Lars-Peter Clausen <lars-AT-metafoo.de>, Vinod Koul <vkoul-AT-kernel.org>, Sumit Semwal <sumit.semwal-AT-linaro.org>, Christian König <christian.koenig-AT-amd.com> |
| Subject: |
| [PATCH v12 0/7] iio: new DMABUF based API v12 |
| Date: |
| Thu, 20 Jun 2024 14:27:19 +0200 |
| Message-ID: |
| <20240620122726.41232-1-paul@crapouillou.net> |
| Cc: |
| Jonathan Corbet <corbet-AT-lwn.net>, Nuno Sa <nuno.sa-AT-analog.com>, linux-iio-AT-vger.kernel.org, linux-doc-AT-vger.kernel.org, linux-kernel-AT-vger.kernel.org, dmaengine-AT-vger.kernel.org, linux-media-AT-vger.kernel.org, dri-devel-AT-lists.freedesktop.org, linaro-mm-sig-AT-lists.linaro.org, Paul Cercueil <paul-AT-crapouillou.net> |
| Archive-link: |
| Article |
Hi Jonathan,
Here's the v12 of my patchset that introduces DMABUF support to IIO.
Apart from a small documentation fix, it reverts to using
mutex_lock/mutex_unlock in one particular place, which used cleanup
GOTOs (which don't play well with scope-managed cleanups).
Changelog:
- [3/7]:
- Revert to mutex_lock/mutex_unlock in iio_buffer_attach_dmabuf(),
as it uses cleanup GOTOs
- [6/7]:
- "obtained using..." -> "which can be obtained using..."
This is based on next-20240619.
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 | 459 ++++++++++++++++++
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, 913 insertions(+), 20 deletions(-)
create mode 100644 Documentation/iio/iio_dmabuf_api.rst
--
2.43.0