I think this discussion should help you: http://e2e.ti.com/support/embedded/linux/f/354/t/89419.aspx
other failures: http://stackoverflow.com/questions/14625919/allocating-a-large-dma-buffer and some guideline here: https://www.kernel.org/doc/Documentation/DMA-API.txt https://lkml.org/lkml/2011/3/25/19 As I don't have any specific crashdump or error information, nothing I can comment further about your problem. It is quite difficult to make general comment. On Fri, Jan 3, 2014 at 7:20 AM, Steven Bell <[email protected]> wrote: > Hi, > > I'm working on a device driver for a video device which continuously reads > and writes image frames using DMA. The frames are fairly large, in the > range of 2-8MB, and I would like the buffers for them to be contiguous > because of my hardware. My understanding is that using the contiguous > memory allocator is the current "right way" to get the buffers, and that > CMA operates entirely behind the scenes when calls are made to > dma_alloc_coherent(). > > However, it seems that for this system, a streaming DMA setup would be > more appropriate. The buffer gets filled with data once, handed to the > device, and then isn't touched again until it gets reused with new data. > The resources I've read have hinted that streaming DMA has some performance > benefits over coherent DMA, so this seems like the way to go. But I > haven't seen any discussion of how to use CMA with streaming DMA (or > whether such a thing is even necessary). > > Does the CMA also work behind get_free_pages, or other kernel memory > allocation methods? Does it matter? The kernel newbies page on memory > allocation (http://kernelnewbies.org/KernelMemoryAllocation) says that > get_free_pages up to about 8MB are ok. Is that a generalization based on > typical memory fragmentation, or a guarantee? > > Thanks, > Steven > > _______________________________________________ > Kernelnewbies mailing list > [email protected] > http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies > > -- Regards, Peter Teoh
_______________________________________________ Kernelnewbies mailing list [email protected] http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
