Hi Paulo,
On Thursday 01 October 2009 10:47:08 Paulo Assis wrote:
> Laurent,
>
> > I wanted to answer atleast gspca, but that seems to have been fixed :)
> > So maybe I'm wrong and now a days most drivers do support the unrequest.
>
> I have set some warnings in case this fails and like Hans said it
> works fine with the last gspca, but it fails for uvc with EINVAL in
> 2.6.31 kernel.
> I'm using the same v4l2_requestbuffers struct that I use for the first
> ioctl(VIDIOC_REQBUFS) ( type = V4L2_BUF_TYPE_VIDEO_CAPTURE and memory
> = V4L2_MEMORY_MMAP) but with count field set to 0.
>
> This is done after ioctl(VIDIOC_STREAMOFF) and munmap()
I can't see how that could happen. The only reason why VIDIOC_REQBUFS could
fail with -EINVAL is (uvc_v4l2.c, line 857)
if (rb->type != video->streaming->type ||
rb->memory != V4L2_MEMORY_MMAP)
video->streaming->type is set only once when parsing the USB descriptors. It
doesn't change at runtime.
Can you double-check that the v4l2_requestbuffers structure is properly
initialized ?
--
Regards,
Laurent Pinchart
_______________________________________________
Linux-uvc-devel mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/linux-uvc-devel