[RFC] ARM: dma_map|unmap_sg plus iommu
'Joerg Roedel'
joro at 8bytes.org
Fri Jul 29 05:35:55 EDT 2011
On Fri, Jul 29, 2011 at 09:50:32AM +0200, Marek Szyprowski wrote:
> On Thursday, July 28, 2011 11:10 PM Ramirez Luna, Omar wrote:
> > 2. tidspbridge driver sometimes needs to map a physical address into a
> > fixed virtual address (i.e. the start of a firmware section is expected to
> > be at dsp va 0x20000000), there is no straight forward way to do this with
> > the dma api given that it only expects to receive a cpu_addr, a sg or a
> > page, by adding iov_address I could pass phys and iov addresses in a sg
> > and overcome this limitation, but, these addresses belong to:
>
> We also encountered the problem of fixed firmware address. We addressed is by
> setting io address space start to this address and letting device driver to
> rely on the fact that the first call to dma_alloc() will match this address.
This sounds rather hacky. How about partitioning the address space for
the device and give the dma-api only a part of it. The other parts can
be directly mapped using the iommu-api then.
Regards,
Joerg
1
More information about the linux-arm-kernel
mailing list