Hi people,
I am working with SAA7146 video grabber driver (with kernel 2.6.12), which claim to be V4L2 and came across several strange things.
First off, there is a bug in the driver - when I call VIDIOC_REQBUFS with count 0 it returns EINVAL error, while "Applications can call VIDIOC_REQBUFS again to change the number of buffers, however this cannot succeed when any buffers are still mapped. A count value of zero frees all buffers, after aborting or finishing any DMA in progress, an implicit VIDIOC_STREAMOFF." (Video for Linux Two API Specification Draft 0.11,
Second, while introducing the dangerous mmap() API (the V4L2 driver allocates buffers in kernel space upon application's request), there's no provision in V4L2 for drivers clean-up if the calling application dies unexpectedly. Actually the above mishap is the only way for calling applications to free buffers, except for closing the device.
Where can I submit this report? Also, what is the status of the "Video for Linux Two API Specification" - is it obligatory for V4L2 submitted drivers maintainers?
TIA, D