Re: [RFC PATCH 7/8] v4l2: use new V4L2_DV_BT_BLANKING/FRAME defines

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

 



Prabhakar,

Can you please double check this patch? I'd like to have your Acked-by before I
commit it.

Thanks!

	Hans

On 07/29/2013 02:41 PM, Hans Verkuil wrote:
> From: Hans Verkuil <hans.verkuil@xxxxxxxxx>
> 
> Use the new blanking and frame size defines. This also fixed a bug in
> these drivers: they assumed that the height for interlaced formats was
> the field height, however height is the frame height. So the height
> for a field is actually bt->height / 2.
> 
> Signed-off-by: Hans Verkuil <hans.verkuil@xxxxxxxxx>
> Cc: Lad, Prabhakar <prabhakar.csengg@xxxxxxxxx>
> ---
>  drivers/media/platform/davinci/vpif_capture.c | 10 ++--------
>  drivers/media/platform/davinci/vpif_display.c | 10 ++--------
>  2 files changed, 4 insertions(+), 16 deletions(-)
> 
> diff --git a/drivers/media/platform/davinci/vpif_capture.c b/drivers/media/platform/davinci/vpif_capture.c
> index b11d7a7..e1b6a3b 100644
> --- a/drivers/media/platform/davinci/vpif_capture.c
> +++ b/drivers/media/platform/davinci/vpif_capture.c
> @@ -1799,19 +1799,15 @@ static int vpif_s_dv_timings(struct file *file, void *priv,
>  
>  	/* Configure video port timings */
>  
> -	std_info->eav2sav = bt->hbackporch + bt->hfrontporch +
> -		bt->hsync - 8;
> +	std_info->eav2sav = V4L2_DV_BT_BLANKING_WIDTH(bt) - 8;
>  	std_info->sav2eav = bt->width;
>  
>  	std_info->l1 = 1;
>  	std_info->l3 = bt->vsync + bt->vbackporch + 1;
>  
> +	std_info->vsize = V4L2_DV_BT_FRAME_HEIGHT(bt);
>  	if (bt->interlaced) {
>  		if (bt->il_vbackporch || bt->il_vfrontporch || bt->il_vsync) {
> -			std_info->vsize = bt->height * 2 +
> -				bt->vfrontporch + bt->vsync + bt->vbackporch +
> -				bt->il_vfrontporch + bt->il_vsync +
> -				bt->il_vbackporch;
>  			std_info->l5 = std_info->vsize/2 -
>  				(bt->vfrontporch - 1);
>  			std_info->l7 = std_info->vsize/2 + 1;
> @@ -1825,8 +1821,6 @@ static int vpif_s_dv_timings(struct file *file, void *priv,
>  			return -EINVAL;
>  		}
>  	} else {
> -		std_info->vsize = bt->height + bt->vfrontporch +
> -			bt->vsync + bt->vbackporch;
>  		std_info->l5 = std_info->vsize - (bt->vfrontporch - 1);
>  	}
>  	strncpy(std_info->name, "Custom timings BT656/1120", VPIF_MAX_NAME);
> diff --git a/drivers/media/platform/davinci/vpif_display.c b/drivers/media/platform/davinci/vpif_display.c
> index c2ff067..a42e43c 100644
> --- a/drivers/media/platform/davinci/vpif_display.c
> +++ b/drivers/media/platform/davinci/vpif_display.c
> @@ -1436,19 +1436,15 @@ static int vpif_s_dv_timings(struct file *file, void *priv,
>  
>  	/* Configure video port timings */
>  
> -	std_info->eav2sav = bt->hbackporch + bt->hfrontporch +
> -		bt->hsync - 8;
> +	std_info->eav2sav = V4L2_DV_BT_BLANKING_WIDTH(bt) - 8;
>  	std_info->sav2eav = bt->width;
>  
>  	std_info->l1 = 1;
>  	std_info->l3 = bt->vsync + bt->vbackporch + 1;
>  
> +	std_info->vsize = V4L2_DV_BT_FRAME_HEIGHT(bt);
>  	if (bt->interlaced) {
>  		if (bt->il_vbackporch || bt->il_vfrontporch || bt->il_vsync) {
> -			std_info->vsize = bt->height * 2 +
> -				bt->vfrontporch + bt->vsync + bt->vbackporch +
> -				bt->il_vfrontporch + bt->il_vsync +
> -				bt->il_vbackporch;
>  			std_info->l5 = std_info->vsize/2 -
>  				(bt->vfrontporch - 1);
>  			std_info->l7 = std_info->vsize/2 + 1;
> @@ -1462,8 +1458,6 @@ static int vpif_s_dv_timings(struct file *file, void *priv,
>  			return -EINVAL;
>  		}
>  	} else {
> -		std_info->vsize = bt->height + bt->vfrontporch +
> -			bt->vsync + bt->vbackporch;
>  		std_info->l5 = std_info->vsize - (bt->vfrontporch - 1);
>  	}
>  	strncpy(std_info->name, "Custom timings BT656/1120",
> 
--
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