Re: [RFC PATCH 0/2] dma: DMA slave device bringup tool

From: Frank Li

Date: Tue Feb 24 2026 - 17:46:06 EST


On Sat, Feb 21, 2026 at 02:22:46PM +0100, Alexander Gordeev wrote:
> Hi All,
>
> This is a custom tool that can be used to bring up DMA slave devices.
> It consists of a user-level utility and a companion device driver that
> communicate via IOCTL.
>
> The tool is likely need some polishing, but I would like first get some
> feedback to ensure there is interest.
>
> I also tested it only on x86 and have little idea on how channel names
> on other architectures look like. That could especially impact the way
> dma_request_channel() treats user-provided target DMA channel names, as
> exposed via /sys/class/dma.

I am not sure if it can work for general dma engine because it slave setting
is tight coupling with FIFO settings and timing, some periphal require
start dma firstly, then enable DMA. some perphial require enable DMA first
then queue dma transfer.

burst len is also related with FIFO 's watermark settings.

Frank

>
> Thanks!
>
> Alexander Gordeev (2):
> dmaengine/dma-slave: DMA slave device xfer passthrough driver
> tools/dma-slave: DMA slave device transfer utility
>
> drivers/dma/Kconfig | 7 +
> drivers/dma/Makefile | 1 +
> drivers/dma/dma-slave.c | 246 +++++++++++++++++++++++++
> include/uapi/linux/dma-slave.h | 30 +++
> tools/Makefile | 11 +-
> tools/dma/Makefile | 20 ++
> tools/dma/dma-slave.c | 321 +++++++++++++++++++++++++++++++++
> 7 files changed, 631 insertions(+), 5 deletions(-)
> create mode 100644 drivers/dma/dma-slave.c
> create mode 100644 include/uapi/linux/dma-slave.h
> create mode 100644 tools/dma/Makefile
> create mode 100644 tools/dma/dma-slave.c
>
> --
> 2.51.0
>