瀏覽代碼

V4L/DVB (8158): gspca: minor changes

main: V4L2_PIX_FMT_SPCA501 is compressed (thanks to Hans de Goede)
main: return 0 when no change on vidioc_s_fmt_cap (thanks to Hans de Goede)
pac207: cleanup

Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Jean-Francois Moine 17 年之前
父節點
當前提交
50a871fed9
共有 2 個文件被更改,包括 11 次插入6 次删除
  1. 5 2
      drivers/media/video/gspca/gspca.c
  2. 6 4
      drivers/media/video/gspca/pac207.c

+ 5 - 2
drivers/media/video/gspca/gspca.c

@@ -316,6 +316,7 @@ static int gspca_is_compressed(__u32 format)
 	switch (format) {
 	case V4L2_PIX_FMT_MJPEG:
 	case V4L2_PIX_FMT_JPEG:
+	case V4L2_PIX_FMT_SPCA561:
 		return 1;
 	}
 	return 0;
@@ -369,12 +370,12 @@ static __u32 get_v4l2_depth(__u32 pixfmt)
 	case V4L2_PIX_FMT_YYUV:		/* 'YYUV' */
 		return 16;
 	case V4L2_PIX_FMT_YUV420:	/* 'YU12' planar 4.2.0 */
+	case V4L2_PIX_FMT_SPCA501:	/* 'S501' YUYV per line */
 		return 12;
 	case V4L2_PIX_FMT_MJPEG:
 	case V4L2_PIX_FMT_JPEG:
 	case V4L2_PIX_FMT_SBGGR8:	/* 'BA81' Bayer */
 	case V4L2_PIX_FMT_SN9C10X:	/* 'S910' SN9C10x compression */
-	case V4L2_PIX_FMT_SPCA501:	/* 'S501' YUYV per line */
 	case V4L2_PIX_FMT_SPCA561:	/* 'S561' compressed BGGR bayer */
 		return 8;
 	}
@@ -913,8 +914,10 @@ static int vidioc_s_fmt_cap(struct file *file, void *priv,
 		goto out;
 	}
 
-	if (ret == gspca_dev->curr_mode)
+	if (ret == gspca_dev->curr_mode) {
+		ret = 0;
 		goto out;			/* same mode */
+	}
 
 	if (gspca_dev->streaming) {
 		ret = -EBUSY;

+ 6 - 4
drivers/media/video/gspca/pac207.c

@@ -492,7 +492,7 @@ static void pac207_do_auto_gain(struct gspca_dev *gspca_dev)
 }
 
 static unsigned char *pac207_find_sof(struct gspca_dev *gspca_dev,
-	unsigned char *m, int len)
+					unsigned char *m, int len)
 {
 	struct sd *sd = (struct sd *) gspca_dev;
 	int i;
@@ -518,7 +518,9 @@ static unsigned char *pac207_find_sof(struct gspca_dev *gspca_dev,
 }
 
 static int pac207_decompress_row(struct gspca_dev *gspca_dev,
-	struct gspca_frame *f, unsigned char *cdata, int len)
+				struct gspca_frame *f,
+				__u8 *cdata,
+				int len)
 {
 	struct sd *sd = (struct sd *) gspca_dev;
 	struct pac207_decoder_state *decoder_state = &sd->decoder_state;
@@ -667,10 +669,10 @@ static int pac207_decode_frame_data(struct gspca_dev *gspca_dev,
 		case LINE_HEADER2:
 			decoder_state->line_marker |= data[0];
 			switch (decoder_state->line_marker) {
-			case 0x0FF0:
+			case 0x0ff0:
 				decoder_state->line_state = LINE_UNCOMPRESSED;
 				break;
-			case 0x1EE1:
+			case 0x1ee1:
 				decoder_state->line_state = LINE_COMPRESSED;
 				break;
 			default: