Hans Verkuil says: "The only place querystd can be called is in the QUERYSTD ioctl, all other ioctls should use the last set standard." So call the g_std() subdevice method instead of querystd() in the driver's set_fmt() method. Reported-by: Hans Verkuil <hverkuil@xxxxxxxxx> Signed-off-by: Sergei Shtylyov <sergei.shtylyov@xxxxxxxxxxxxxxxxxx> --- drivers/media/platform/soc_camera/rcar_vin.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) Index: media_tree/drivers/media/platform/soc_camera/rcar_vin.c =================================================================== --- media_tree.orig/drivers/media/platform/soc_camera/rcar_vin.c +++ media_tree/drivers/media/platform/soc_camera/rcar_vin.c @@ -1589,8 +1589,8 @@ static int rcar_vin_set_fmt(struct soc_c field = pix->field; break; case V4L2_FIELD_INTERLACED: - /* Query for standard if not explicitly mentioned _TB/_BT */ - ret = v4l2_subdev_call(sd, video, querystd, &std); + /* Get the last standard if not explicitly mentioned _TB/_BT */ + ret = v4l2_subdev_call(sd, video, g_std, &std); if (ret == -ENOIOCTLCMD) { field = V4L2_FIELD_NONE; } else if (ret < 0) { -- 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