Em 13-12-2010 16:19, Anatolij Gustschin escreveu: > VIDIOC_QUERYSTD and VIDIOC_G_STD ioctls are currently not > supported in the FSL VIU driver. The decoder subdevice > driver saa7115 extended by previous patch supports QUERYSTD > for saa7113, so we add the appropriate ioctls to the VIU > driver to be able to determine the video input's standard. This patch looks ok, but as it is somewhat dependent on the saa7113 patch, please re-send it together with the other patch for me to pull both together. > > Signed-off-by: Anatolij Gustschin <agust@xxxxxxx> > > --- > drivers/media/video/fsl-viu.c | 21 +++++++++++++++++++++ > 1 files changed, 21 insertions(+), 0 deletions(-) > > diff --git a/drivers/media/video/fsl-viu.c b/drivers/media/video/fsl-viu.c > index b8faff2..04be6eb 100644 > --- a/drivers/media/video/fsl-viu.c > +++ b/drivers/media/video/fsl-viu.c > @@ -194,6 +194,8 @@ struct viu_dev { > > /* decoder */ > struct v4l2_subdev *decoder; > + > + v4l2_std_id std; > }; > > struct viu_fh { > @@ -933,14 +935,31 @@ static int vidioc_streamoff(struct file *file, void *priv, enum v4l2_buf_type i) > #define decoder_call(viu, o, f, args...) \ > v4l2_subdev_call(viu->decoder, o, f, ##args) > > +static int vidioc_querystd(struct file *file, void *priv, v4l2_std_id *std_id) > +{ > + struct viu_fh *fh = priv; > + > + decoder_call(fh->dev, video, querystd, std_id); > + return 0; > +} > + > static int vidioc_s_std(struct file *file, void *priv, v4l2_std_id *id) > { > struct viu_fh *fh = priv; > > + fh->dev->std = *id; > decoder_call(fh->dev, core, s_std, *id); > return 0; > } > > +static int vidioc_g_std(struct file *file, void *priv, v4l2_std_id *std_id) > +{ > + struct viu_fh *fh = priv; > + > + *std_id = fh->dev->std; > + return 0; > +} > + > /* only one input in this driver */ > static int vidioc_enum_input(struct file *file, void *priv, > struct v4l2_input *inp) > @@ -1397,7 +1416,9 @@ static const struct v4l2_ioctl_ops viu_ioctl_ops = { > .vidioc_querybuf = vidioc_querybuf, > .vidioc_qbuf = vidioc_qbuf, > .vidioc_dqbuf = vidioc_dqbuf, > + .vidioc_g_std = vidioc_g_std, > .vidioc_s_std = vidioc_s_std, > + .vidioc_querystd = vidioc_querystd, > .vidioc_enum_input = vidioc_enum_input, > .vidioc_g_input = vidioc_g_input, > .vidioc_s_input = vidioc_s_input, > -- 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