[Freedreno] [PATCH v3 1/1] drm: msm: Replace dma_map_sg with dma_sync_sg*
Christoph Hellwig
hch at lst.de
Fri Dec 7 01:38:41 UTC 2018
On Fri, Nov 30, 2018 at 10:46:04AM +0100, Daniel Vetter wrote:
> > Being able to dip into CMA and maybe iommu coalescing if we want to
> > get fancy is indeed the only reason for this API. If we just wanted
> > to map pages we could already do that now with just a little bit
> > of boilerplate code (and quite a few drivers do - just adding this
> > new API will remove tons of code).
>
> Sounds like the future is very bright indeed \o/
So, I spent some time with this and instead of a new API I think
it makes sure we have DMA_ATTR_NON_CONSISTENT consistently available
and with well defined semantics, that is virt_to_page on the return
value works, it is contiguos and we can use dma_sync_single_for_cpu
and dma_sync_single_for_device for ownership tranfers.
Can you graphics folks check if this:
http://git.infradead.org/users/hch/misc.git/shortlog/refs/heads/dma-noncoherent-allocator
is something to work with? Especially to get rid of the horrible
dma_get_sgtable hacks?
More information about the Freedreno
mailing list