Hello Gerd,

> enum v4l2_memory { 
>         V4L2_MEMORY_MMAP             = 1, 
>         V4L2_MEMORY_USERPTR          = 2, 
>         V4L2_MEMORY_OVERLAY          = 3, 
> }; 


>  - V4L2_MEMORY_MMAP is the "classic" mmaping (offset+length returned
>    by the QUERYBUF and passed to mmap())
>  - V4L2_MEMORY_USERPTR allows applications to pass in pointers to
>    random userspace memory (userptr+length).

If you do this, please keep in mind that some scatter-gather DMA engines 
(especially the philips saa7146, don't know about the saa7134) can only 
deal with page aligned boundaries.

So there should be an "offset" parameter that gets set by the driver for 
each buffer to indicate how much bytes at the beginning have to be 
skipped in order to reach a page boundary.

Alternatively, the user application may provide an already page aligned 
memory, but I don't think that this is a good idea (and if it's possible 
for a user application to request this).

>   Gerd

CU
Michael.






_______________________________________________
Video4linux-list mailing list
[EMAIL PROTECTED]
https://listman.redhat.com/mailman/listinfo/video4linux-list

Reply via email to