aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/media/video/ivtv/ivtv-yuv.c17
1 files changed, 15 insertions, 2 deletions
diff --git a/drivers/media/video/ivtv/ivtv-yuv.c b/drivers/media/video/ivtv/ivtv-yuv.c
index bcea09542e5a..70ddf4060d37 100644
--- a/drivers/media/video/ivtv/ivtv-yuv.c
+++ b/drivers/media/video/ivtv/ivtv-yuv.c
@@ -898,8 +898,21 @@ static void ivtv_yuv_init (struct ivtv *itv)
898 itv->yuv_info.decode_height = 480; 898 itv->yuv_info.decode_height = 480;
899 899
900 /* If no visible size set, assume full size */ 900 /* If no visible size set, assume full size */
901 if (!itv->yuv_info.osd_vis_w) itv->yuv_info.osd_vis_w = 720 - itv->yuv_info.osd_x_offset; 901 if (!itv->yuv_info.osd_vis_w)
902 if (!itv->yuv_info.osd_vis_h) itv->yuv_info.osd_vis_h = itv->yuv_info.decode_height - itv->yuv_info.osd_y_offset; 902 itv->yuv_info.osd_vis_w = 720 - itv->yuv_info.osd_x_offset;
903
904 if (!itv->yuv_info.osd_vis_h) {
905 itv->yuv_info.osd_vis_h = itv->yuv_info.decode_height - itv->yuv_info.osd_y_offset;
906 } else {
907 /* If output video standard has changed, requested height may
908 not be legal */
909 if (itv->yuv_info.osd_vis_h + itv->yuv_info.osd_y_offset > itv->yuv_info.decode_height) {
910 IVTV_DEBUG_WARN("Clipping yuv output - fb size (%d) exceeds video standard limit (%d)\n",
911 itv->yuv_info.osd_vis_h + itv->yuv_info.osd_y_offset,
912 itv->yuv_info.decode_height);
913 itv->yuv_info.osd_vis_h = itv->yuv_info.decode_height - itv->yuv_info.osd_y_offset;
914 }
915 }
903 916
904 /* We need a buffer for blanking when Y plane is offset - non-fatal if we can't get one */ 917 /* We need a buffer for blanking when Y plane is offset - non-fatal if we can't get one */
905 itv->yuv_info.blanking_ptr = kzalloc(720*16,GFP_KERNEL); 918 itv->yuv_info.blanking_ptr = kzalloc(720*16,GFP_KERNEL);