[PATCH 397/961] staging: Solo6x10: accept WxH >= screen dimentions.

Greg Kroah-Hartman gregkh at suse.de
Wed Mar 16 21:00:40 UTC 2011


From: Krzysztof Hałasa <khalasa at piap.pl>

This makes it possible to request full resolution (704x576 or 704x480)
independently of the color system used (PAL or NTSC).

Signed-off-by: Krzysztof Hałasa <khalasa at piap.pl>
Signed-off-by: Greg Kroah-Hartman <gregkh at suse.de>
---
 drivers/staging/solo6x10/solo6010-v4l2-enc.c |   12 ++++++++----
 1 files changed, 8 insertions(+), 4 deletions(-)

diff --git a/drivers/staging/solo6x10/solo6010-v4l2-enc.c b/drivers/staging/solo6x10/solo6010-v4l2-enc.c
index 7bbb940..2b3d30b 100644
--- a/drivers/staging/solo6x10/solo6010-v4l2-enc.c
+++ b/drivers/staging/solo6x10/solo6010-v4l2-enc.c
@@ -1034,13 +1034,17 @@ static int solo_enc_try_fmt_cap(struct file *file, void *priv,
 		if (pix->width != solo_enc->width ||
 		    pix->height != solo_enc->height)
 			return -EBUSY;
-	} else if (!(pix->width == solo_dev->video_hsize &&
-	      pix->height == solo_dev->video_vsize << 1) &&
-	    !(pix->width == solo_dev->video_hsize >> 1 &&
-	      pix->height == solo_dev->video_vsize)) {
+	}
+
+	if (pix->width < solo_dev->video_hsize ||
+	    pix->height < solo_dev->video_vsize << 1) {
 		/* Default to CIF 1/2 size */
 		pix->width = solo_dev->video_hsize >> 1;
 		pix->height = solo_dev->video_vsize;
+	} else {
+		/* Full frame */
+		pix->width = solo_dev->video_hsize;
+		pix->height = solo_dev->video_vsize << 1;
 	}
 
 	if (pix->field == V4L2_FIELD_ANY)
-- 
1.7.4.1




More information about the devel mailing list