Re: [2/2] media: fsl_viu: add VIDIOC_QUERYSTD and VIDIOC_G_STD support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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


[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux