Generic DMA Core

John Whitney johnw at
Thu Apr 1 03:44:08 EST 2004

I have written a generic DMA core driver (drivers/dma/) that accepts
registrations from low-level DMA hardware drivers (providers).  I've
also written a provider driver for the MPC10x dual-channel DMA

Effectively, the DMA core accepts requests to transfer data from one
address to another, with the ability to request things like
source-address-holding, destination-address-holding, etc.  It then
matches a request to a provider that can support it, and queues the
request to the provider.  After completion, the DMA core calls a
provided callback for the client.  The core also handles
cache-coherency with explicit flushes and invalidates, not making
assumptions that the addresses are in cache-coherent regions.

Is there any interest in this code, and if so, what would be the best
way for going about getting it included in the kernel?


** Sent via the linuxppc-dev mail list. See

More information about the Linuxppc-dev mailing list