On 10/03/2015 04:44 PM, Antonio Ospite wrote: > Hi, > > I tried running v4l2-compliance with the PS3 Eye and I got these two > failures: > > ... > Test input 0: > ... > Format ioctls: > fail: v4l2-test-formats.cpp(122): found frame intervals for invalid size 321x240 > test VIDIOC_ENUM_FMT/FRAMESIZES/FRAMEINTERVALS: FAIL > test VIDIOC_G/S_PARM: OK > test VIDIOC_G_FBUF: OK (Not Supported) > fail: v4l2-test-formats.cpp(425): unknown pixelformat 56595559 for buftype 1 > test VIDIOC_G_FMT: FAIL > test VIDIOC_TRY_FMT: OK (Not Supported) > test VIDIOC_S_FMT: OK (Not Supported) > test VIDIOC_G_SLICED_VBI_CAP: OK (Not Supported) > test Cropping: OK (Not Supported) > test Composing: OK (Not Supported) > test Scaling: OK > > About the first failure: by looking at the kernel code in gspca.c it > looks like the supported frame sizes are declared as > V4L2_FRMSIZE_TYPE_DISCRETE in vidioc_enum_framesizes(), but then the > driver accepts invalid ones when listing frameintervals trying to find > the "closest" size for width and height using wxh_to_mode(). > > Can this discrepancy be what makes v4l2-compliance fail? Yes, that's the reason it fails. > > If you think it's OK to change the gspca behavior to be stricter about > what frame sizes are considered valid, I may take a shot at it. I would say this is OK to change. UVC is also strict about this, so apps should do this correct, otherwise they would fail with uvc webcams. > By looking at the v4l2-compliance code I think the second failure will > go away once the first one is fixed: node->buftype_pixfmts does not get > populated because of the first failure. Correct. Regards, Hans -- 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