User: Password:
|
|
Subscribe / Log in / New account

Contiguous memory allocation for passing buffers between app & drivers?

Contiguous memory allocation for passing buffers between app & drivers?

Posted Jul 23, 2010 12:56 UTC (Fri) by gnu (subscriber, #65)
Parent article: Contiguous memory allocation for drivers

Are there some facilities for passing contiguous buffers between applications and drivers? For instance, many video SoCs have applications which do for eg, JPEG encode/decode etc and this buffer needs to be passed to another kernel driver which controls some hardware which acts on these buffers, or say, to a USB driver.


(Log in to post comments)

Contiguous memory allocation for passing buffers between app & drivers?

Posted Jul 25, 2010 11:10 UTC (Sun) by mina86 (subscriber, #68442) [Link]

No. We consider this to be a problem for another framework. In particular, CMA may be used with V4L drivers which do not need co worry about interaction with user space as V4L handles that. I am aware though that some devices may need such facilities and for those a separate solution should be developed (possibly working with CMA but not necessarily).

As a matter of fact, some time ago we have provided a solution for mapping physically-contiguous memory blocks to user space (including using such a buffer as SysV shared memory which is handy for X11) and then passing them back to devices (that was PMM and UPBuffer). It has also been completely agnostic to the way memory block is allocated as well as provided a “shadow buffer” if user provided buffer was not contiguous and a cache coherency control. If it'll became apparent that such features are needed part of the old solution can be incorporated in a new framework.


Copyright © 2017, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds