On Mon, Aug 02, 2010 at 06:20:01PM +0900, FUJITA Tomonori wrote:
I'm not sure it can in totality. The DMA-API solves the host CPU <->
device aspect of DMA support only.
However, there is another use case for IOMMUs, which is to allow two
separate peripheral devices to communicate with each other via system
memory. As the streaming DMA-API involves the idea of buffer ownership
(of a singular agent), it is unsuitable for this use case.
The coherent allocation part of the DMA-API also only deals with the
idea of there being a singular DMA agent accessing the allocated buffer
(in conjunction with the host CPU).
--