From 48a8a0cb764c25939788a476e7f1b1695c337835 Mon Sep 17 00:00:00 2001 From: Laurent Pinchart Date: Mon, 19 May 2014 10:49:58 -0300 Subject: [media] omap3isp: Default to progressive field order when setting the format If the requested field order is not supported default to progressive as we can't guess how the user will configure the pipeline later on. Signed-off-by: Laurent Pinchart Tested-by: Enrico Butera Acked-by: Sakari Ailus Signed-off-by: Mauro Carvalho Chehab --- drivers/media/platform/omap3isp/ispvideo.c | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'drivers/media/platform/omap3isp/ispvideo.c') diff --git a/drivers/media/platform/omap3isp/ispvideo.c b/drivers/media/platform/omap3isp/ispvideo.c index 2876f34b84c0..2fe1c463232d 100644 --- a/drivers/media/platform/omap3isp/ispvideo.c +++ b/drivers/media/platform/omap3isp/ispvideo.c @@ -631,6 +631,15 @@ isp_video_set_format(struct file *file, void *fh, struct v4l2_format *format) if (format->type != video->type) return -EINVAL; + /* Default to the progressive field order if the requested value is not + * supported (or set to ANY). The only supported orders are progressive + * (available on all video nodes) and alternate (available on capture + * nodes only). + */ + if (format->fmt.pix.field != V4L2_FIELD_ALTERNATE || + video->type == V4L2_BUF_TYPE_VIDEO_OUTPUT) + format->fmt.pix.field = V4L2_FIELD_NONE; + /* Fill the bytesperline and sizeimage fields by converting to media bus * format and back to pixel format. */ -- cgit v1.2.1