Messages in this thread | | | Date | Tue, 21 Sep 2010 17:17:46 -0500 | From | Scott Wood <> | Subject | Re: [PATCH] fsldma: add support to 36-bit physical address |
| |
On Tue, 21 Sep 2010 17:08:54 -0500 Timur Tabi <timur.tabi@gmail.com> wrote:
> On Tue, Sep 21, 2010 at 5:05 PM, Dan Malek <ppc6dev@digitaldans.com> wrote: > > > The DMA descriptors are accessed using DMA by the > > controller itself. > > Yes and no. Technically, it is DMA, but it's not something that > SWIOTLB could ever know about. We just pass the physical address to > the DMA controller, and it does a memory read to obtain the data. > That's not the kind of DMA that SWIOTLB would deal with, I think.
SWIOTLB should see that the address is directly DMAable and do nothing, but you don't want to skip the DMA API altogether. You still need to flush caches if DMA is noncoherent, etc.
> My question is, should dmaengine be using the same 'dev' that fsldma > uses to allocate the DMA descriptors? I wonder if the 'dev' should be > allocated internally by dmaengine, or provided by the client drivers.
It needs to be the actual device that is performing the DMA -- the platform may need to do things such as IOMMU manipulation where knowing the device matters.
-Scott
| |