Re: DMA Engine: Transfer From Userspace

From: Federico Vaga
Date: Sun Jun 21 2020 - 16:36:47 EST


On Sun, Jun 21, 2020 at 12:54:57PM +0530, Vinod Koul wrote:
On 19-06-20, 16:31, Dave Jiang wrote:


On 6/19/2020 3:47 PM, Federico Vaga wrote:
> Hello,
>
> is there the possibility of using a DMA engine channel from userspace?
>
> Something like:
> - configure DMA using ioctl() (or whatever configuration mechanism)
> - read() or write() to trigger the transfer
>

I may have supposedly promised Vinod to look into possibly providing
something like this in the future. But I have not gotten around to do that
yet. Currently, no such support.

And I do still have serious reservations about this topic :) Opening up
userspace access to DMA does not sound very great from security point of
view.

I was thinking about a dedicated module, and not something that the DMA engine
offers directly. You load the module only if you need it (like the test module)

Federico, what use case do you have in mind?

Userspace drivers

We should keep in mind dmaengine is an in-kernel interface providing
services to various subsystems, so you go thru the respective subsystem
kernel interface (network, display, spi, audio etc..) which would in
turn use dmaengine.

--
~Vinod