Lines Matching refs:buffers
6 and user space. It handles the allocation and management of buffers for
18 Not all video devices use the same kind of buffers. In fact, there are (at
22 address spaces. (Almost) all user-space buffers are like this, but it
23 makes great sense to allocate kernel-space buffers this way as well when
29 contiguous; buffers allocated with vmalloc(), in other words. These
30 buffers are just as hard to use for DMA operations, but they can be
32 buffers are convenient.
38 Videobuf can work with all three types of buffers, but the driver author
41 [It's worth noting that there's a fourth kind of buffer: "overlay" buffers
45 benefits merit the use of this technique. Overlay buffers can be handled
52 Depending on which type of buffers are being used, the driver should
56 <media/videobuf-vmalloc.h> /* vmalloc() buffers */
61 along with a list_head for the queue of available buffers. There will also
66 the management of buffers:
82 parameter will be a suggested number of buffers to use; the driver should
84 minimum of two buffers are needed for proper streaming, and there is
102 put it onto the driver's list of available buffers and set its state to
106 wait on the first buffer in the queue; placing other buffers in front of it
107 could again gum up the works. So use list_add_tail() to enqueue buffers.
211 When streaming I/O is done to kernel-space buffers, the driver must support
228 videobuf_mmap_free() will ensure that all buffers have been unmapped; if
229 so, they will all be passed to the buf_release() callback. If buffers
232 buffers are still mapped, but every driver in the 2.6.32 kernel cheerfully
263 Thus far, we have talked about buffers, but have not looked at how they are
266 videobuf layer; in this case, buffers will be allocated as anonymous
268 using user-space buffers, no allocation is needed; the videobuf layer will
290 allocate the buffers (with dma_alloc_coherent()) when it sees fit. That
298 allocations will not meet that criterion, but buffers obtained from other
302 Filling the buffers
305 the portion of the code which actually puts frame data into the buffers,
318 the engine and enqueueing buffers are done in separate steps, it's possible
319 for the engine to be running without any buffers available - in the