Hi all,
        Following to the Warsaw mini-summit action point, I would like to open 
the thread to gather buffer pool & memory manager requirements.
The list of requirement for buffer pool may contain:
-       Support physically contiguous and virtual memory
-       Support IPC, import/export handles (between 
processes/drivers/userland/etc)
-       Security(access rights in order to secure no one unauthorized is 
allowed to access buffers)
-       Cache flush management (by using setdomain and optimize when flushing 
is needed)
-       Pin/unpin in order to get the actual address to be able to do 
defragmentation
-       Support pinning in user land in order to allow defragmentation while 
buffer is mmapped but not pined.
-       Both a user API and a Kernel API is needed for this module. (Kernel 
drivers needs to be able to resolve buffer handles as well from the memory 
manager module, and pin/unpin)
-       be able to support any platform specific allocator (Separate memory 
allocation from management as allocator is platform dependant)
-       Support multiple region domain (Allow to allocate from several memory 
domain ex: DDR1, DDR2, Embedded SRAM to make for ex bandwidth load balancing 
...)
Another idea, but not so linked to memory management (more usage of buffers), 
would be to have a common data container (structure to access data) shared by 
several media (Imaging, video/still codecs, graphics, Display...) to ease usage 
of the data. This container could  embed data type (video frames, Access Unit) 
, frames format, pixel format, width, height, pixel aspect ratio, region of 
interest, CTS (composition time stamp),  ColorSpace, transparency (opaque, 
alpha, color key...), pointer on buffer(s) handle)... 
Regards,
        Willy.
=============
Willy Poisson
ST-Ericsson
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to