Forcing PIO mode instead of DMA via DT property

Arnd Bergmann arnd at arndb.de
Tue Jul 24 23:19:44 EST 2012


On Sunday 22 July 2012, Marek Vasut wrote:
> I'm trying to implement a driver that can do both DMA and PIO, and it would be 
> nice if the user was able to select the mode (on a per-bus basis) using the DT. 
> The PIO mode can reduce the overhead in some cases and therefore be better 
> choice than the DMA (for example when most transfers move only very few data, or 
> when board-specific hardware properties kick in).
> 
> I was thinking about using some "manf,use-pio" DT property, but I haven't found 
> any such example yet, so I wonder if this is a good idea.
> 

What kind of device is this? We are currently working on the dmaengine
binding, so an easy way to do this would be (one that binding is complete)
to either provide or not provide the channel description depending on
what you want to do with the device. This is clearly a hack but might
fit your use case without adding any ugly code to the kernel.

Another option would be to make it a runtime configuration option,
e.g. through sysfs, but that again depends a lot on what device you
are talking about.

	Arnd


More information about the devicetree-discuss mailing list