Hi Philipp, On Tuesday 10 November 2009 17:13:18 Philipp Wiesner wrote: > I'm having some trouble using gstreamer with soc_camera and am a > modified tw9910 driver. I had difficulties compiling the latest sources > for my target so I'm using old kernel and gstreamer versions. But my > question may still be valid, because the problem doesn't seem to be fixed > and this may be interesting for driver programming in the future. > > The part I'm suspecting is > > if (v4l2_ioctl (fd, VIDIOC_S_FMT, &format) < 0) { > if (errno != EINVAL) > goto set_fmt_failed; > > [v4l2src_calls.c,1223] > According to V4L2 api documentation drivers should set errno, but all > drivers I've seen in the soc_camera framework (including soc_camera.c) > only 'return -errno'. Should device drivers (like tw9910) set errno or > should soc_camera use return values and set errno? Is it correct that none > of them happens at the moment? errno is a userspace variable. Kernel drivers return a negative error code which is stored into errno by the ioctl() function in glibc. -- Regards, Laurent Pinchart -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html