summaryrefslogtreecommitdiff
path: root/drivers/media/video/gspca
diff options
context:
space:
mode:
authorHans de Goede <hdegoede@redhat.com>2010-02-04 12:10:55 +0300
committerMauro Carvalho Chehab <mchehab@redhat.com>2010-02-26 21:11:08 +0300
commit10bb7530108cc11fedd0d615467a54f341079778 (patch)
tree2af504904391545758b42f71a6e5b3658a141c84 /drivers/media/video/gspca
parent82e839c9c5f79c4e55dc1b6ecb2cf1c055f753c5 (diff)
downloadlinux-10bb7530108cc11fedd0d615467a54f341079778.tar.xz
V4L/DVB: gscpa_sonixb: limit ov7630 max framerate at 640x480
In 640x480, if the reg11 has less than 4, the image is unstable (the bridge goes into a higher compression mode which we have not reverse engineered yet). Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/video/gspca')
-rw-r--r--drivers/media/video/gspca/sonixb.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/drivers/media/video/gspca/sonixb.c b/drivers/media/video/gspca/sonixb.c
index 66fffa345e7b..fda14200a050 100644
--- a/drivers/media/video/gspca/sonixb.c
+++ b/drivers/media/video/gspca/sonixb.c
@@ -809,10 +809,11 @@ static void setexposure(struct gspca_dev *gspca_dev)
else if (reg11 > 16)
reg11 = 16;
- /* In 640x480, if the reg11 has less than 3, the image is
- unstable (not enough bandwidth). */
- if (gspca_dev->width == 640 && reg11 < 3)
- reg11 = 3;
+ /* In 640x480, if the reg11 has less than 4, the image is
+ unstable (the bridge goes into a higher compression mode
+ which we have not reverse engineered yet). */
+ if (gspca_dev->width == 640 && reg11 < 4)
+ reg11 = 4;
/* frame exposure time in ms = 1000 * reg11 / 30 ->
reg10 = (sd->exposure / 2) * reg10_max / (1000 * reg11 / 30) */