V4L/DVB (8197): gspca: pac207 frames no more decoded in the subdriver.
videodev2: New pixfmt
pac207: Remove the specific decoding.
main: get_buff_size operation added for the subdriver.
Signed-off-by: Hans de Goede <j.w.r.degoede@hhs.nl>
Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
diff --git a/drivers/media/video/gspca/gspca.c b/drivers/media/video/gspca/gspca.c
index f6d2163..708270a 100644
--- a/drivers/media/video/gspca/gspca.c
+++ b/drivers/media/video/gspca/gspca.c
@@ -321,6 +321,7 @@
case V4L2_PIX_FMT_MJPEG:
case V4L2_PIX_FMT_JPEG:
case V4L2_PIX_FMT_SPCA561:
+ case V4L2_PIX_FMT_PAC207:
return 1;
}
return 0;
@@ -380,7 +381,8 @@
case V4L2_PIX_FMT_JPEG:
case V4L2_PIX_FMT_SBGGR8: /* 'BA81' Bayer */
case V4L2_PIX_FMT_SN9C10X: /* 'S910' SN9C10x compression */
- case V4L2_PIX_FMT_SPCA561: /* 'S561' compressed BGGR bayer */
+ case V4L2_PIX_FMT_SPCA561: /* 'S561' compressed GBRG bayer */
+ case V4L2_PIX_FMT_PAC207: /* 'P207' compressed BGGR bayer */
return 8;
}
PDEBUG(D_ERR|D_CONF, "Unknown pixel format %c%c%c%c",
@@ -395,6 +397,9 @@
{
unsigned int size;
+ if (gspca_dev->sd_desc->get_buff_size)
+ return gspca_dev->sd_desc->get_buff_size(gspca_dev, mode);
+
size = gspca_dev->cam.cam_mode[mode].width *
gspca_dev->cam.cam_mode[mode].height *
get_v4l2_depth(gspca_dev->cam.cam_mode[mode].pixfmt) / 8;