Re: [PATCH V4 2/3] sta2x11_vip: convert to videobuf2 and control framework

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

 



Hi Frederico!

Just one comment, see below:

On Sun January 6 2013 18:29:02 Federico Vaga wrote:
> This patch re-write the driver and use the videobuf2
> interface instead of the old videobuf. Moreover, it uses also
> the control framework which allows the driver to inherit
> controls from its subdevice (ADV7180)
> 
> Signed-off-by: Federico Vaga <federico.vaga@xxxxxxxxx>
> Acked-by: Giancarlo Asnaghi <giancarlo.asnaghi@xxxxxx>
> ---
>  drivers/media/pci/sta2x11/Kconfig       |    2 +-
>  drivers/media/pci/sta2x11/sta2x11_vip.c | 1244 ++++++++++---------------------
>  2 file modificati, 414 inserzioni(+), 832 rimozioni(-)
> 
> diff --git a/drivers/media/pci/sta2x11/Kconfig b/drivers/media/pci/sta2x11/Kconfig
> index 6749f67..a94ccad 100644
> --- a/drivers/media/pci/sta2x11/Kconfig
> +++ b/drivers/media/pci/sta2x11/Kconfig
> @@ -2,7 +2,7 @@ config STA2X11_VIP
>  	tristate "STA2X11 VIP Video For Linux"
>  	depends on STA2X11
>  	select VIDEO_ADV7180 if MEDIA_SUBDRV_AUTOSELECT
> -	select VIDEOBUF_DMA_CONTIG
> +	select VIDEOBUF2_DMA_CONTIG
>  	depends on PCI && VIDEO_V4L2 && VIRT_TO_BUS
>  	help
>  	  Say Y for support for STA2X11 VIP (Video Input Port) capture
> diff --git a/drivers/media/pci/sta2x11/sta2x11_vip.c b/drivers/media/pci/sta2x11/sta2x11_vip.c
> index ed1337a..e379e03 100644
> --- a/drivers/media/pci/sta2x11/sta2x11_vip.c
> +++ b/drivers/media/pci/sta2x11/sta2x11_vip.c

<snip>

> -/**
> - * vidioc_try_fmt_vid_cap - set video capture format
> - * @file: descriptor of device ( not used)
> - * @priv: points to current videodevice
> - * @f: new format
> - *
> - * new video format is set which includes width and
> - * field type. width is fixed to 720, no scaling.
> - * Only UYVY is supported by this hardware.
> - * the minimum height is 200, the maximum is 576 (PAL)
> - *
> - * return value: 0, no error
> - *
> - * -EINVAL, pixel or field format not supported
> - *
> - */
>  static int vidioc_try_fmt_vid_cap(struct file *file, void *priv,
>  				  struct v4l2_format *f)
>  {
> -	struct video_device *dev = priv;
> -	struct sta2x11_vip *vip = video_get_drvdata(dev);
> +	struct sta2x11_vip *vip = video_drvdata(file);
>  	int interlace_lim;
>  
> -	if (V4L2_PIX_FMT_UYVY != f->fmt.pix.pixelformat)
> -		return -EINVAL;
> -

You should keep this check for now. See this discussion:

http://www.mail-archive.com/linux-media@xxxxxxxxxxxxxxx/msg56550.html

I'm going to change v4l2-compliance to make this a warning instead of an
error for now.

>  	if (V4L2_STD_525_60 & vip->std)
>  		interlace_lim = 240;
>  	else
>  		interlace_lim = 288;
>  
>  	switch (f->fmt.pix.field) {
> +	default:
>  	case V4L2_FIELD_ANY:
>  		if (interlace_lim < f->fmt.pix.height)
>  			f->fmt.pix.field = V4L2_FIELD_INTERLACED;

After updating v4l2-compliance (I've just made the change to v4l2-compliance)
can you also post the output of v4l2-compliance for this driver?

Thanks,

	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


[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