This patch series cleans up various drivers with respect to their VIDIOC_QUERYSTD behavior. The main reason for doing this is to ensure that the correct std value is returned when there is no signal detected. It should return V4L2_STD_UNKNOWN. Due to a poorly worded specification several drivers returned STD_ALL. As mentioned in an old RFC the current behavior is inconsistent: - saa7115, ks0127, saa7191 return 0 with std set to V4L2_STD_ALL - adv7180, vpx3220 return 0 with std set to V4L2_STD_UNKNOWN - saa7110 returns 0 with std set to the current std - bt819 and bttv do not handle this case at all, and just pick 50 Hz or 60 Hz - tvp514x returns -EINVAL. Besides fixing this I also update the documentation and fix the misuse of s_std(V4L2_STD_ALL) in several drivers. V4L2_STD_ALL is sometimes used to enable autodetect mode, which is non-standard and in general should not be done: if a receiver switches from a 60 Hz to a 50 Hz format automatically, then this can in theory lead to buffer overruns in a DMA engine since a 50 Hz frame is larger than the 60 Hz frame. This behavior is removed in those drivers where it is clearly bogus. After this patch series the following drivers still have problems: - adv7180: supports the non-standard autodetect mode - sta2x11: ditto (uses adv7180) The adv7180 driver should implement querystd in the same manner as the adv7183 driver, and then the sta2x11 can be fixed as well. - timblogiw: this calls querystd whenever a video node is opened. That's obviously a bad idea, but it's a fair amount of work to fix this and nobody I know can test this driver. 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