linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* RFC: Unified DMA allocation algorithms
@ 2013-04-24 21:35 Laura Abbott
  2013-05-01 10:26 ` [Linaro-mm-sig] " Daniel Vetter
  2013-05-01 15:24 ` Will Deacon
  0 siblings, 2 replies; 3+ messages in thread
From: Laura Abbott @ 2013-04-24 21:35 UTC (permalink / raw)
  To: linux-arm-kernel

Hi all,

I've been looking at a better way to do custom dma allocation algorithms 
in a similar style to Ion heaps. Most drivers/clients have come up with 
a series of semi-standard ways to get memory (CMA, memblock_reserve, 
discontiguous pages etc.) . As these allocation schemes get more and 
more complex, there needs to be a since place where all clients (Ion 
based driver vs. DRM driver vs. ???)  can independently take advantage 
of any optimizations and call a single API for the backing allocations.

The dma_map_ops take care of almost everything needed for abstraction
but the question is where should new allocation algorithms be located?
Most of the work has been added to either arm/mm/dma-mapping.c or
dma-contiguous.c . My current thought:

1) split out the dma_map_ops currently in dma-mapping.c into separate 
files (dma-mapping-common.c, dma-mapping-iommu.c)
2) Extend dma-contiguous.c to support memblock_reserve memory
3) Place additional algorithms in either arch/arm/mm or 
drivers/base/dma-alloc/ as appropriate to the code. This is the part 
where I'm most unsure about the direction.

I don't have anything written yet but I plan to draft some patches 
assuming the proposed approach sounds reasonable and no one else has 
started on something similar already.

Thoughts? Opinions?

Thanks,
Laura

-- 
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
hosted by The Linux Foundation

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2013-05-01 15:24 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-04-24 21:35 RFC: Unified DMA allocation algorithms Laura Abbott
2013-05-01 10:26 ` [Linaro-mm-sig] " Daniel Vetter
2013-05-01 15:24 ` Will Deacon

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).