Re: [RFC PATCH 7/8] v4l2: use new V4L2_DV_BT_BLANKING/FRAME defines
Hi Hans, Thanks for the patch. On Mon, Jul 29, 2013 at 6:11 PM, Hans Verkuil hverk...@xs4all.nl wrote: From: Hans Verkuil hans.verk...@cisco.com 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.verk...@cisco.com Cc: Lad, Prabhakar prabhakar.cse...@gmail.com Acked-by: Lad, Prabhakar prabhakar.cse...@gmail.com Regards, --Prabhakar Lad -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [RFC PATCH 7/8] v4l2: use new V4L2_DV_BT_BLANKING/FRAME defines
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.verk...@cisco.com 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.verk...@cisco.com Cc: Lad, Prabhakar prabhakar.cse...@gmail.com --- 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 majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[RFC PATCH 7/8] v4l2: use new V4L2_DV_BT_BLANKING/FRAME defines
From: Hans Verkuil hans.verk...@cisco.com 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.verk...@cisco.com Cc: Lad, Prabhakar prabhakar.cse...@gmail.com --- 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, -- 1.8.3.2 -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html