diff options
author | German Galkin <galkinga@gmail.com> | 2010-03-07 04:19:02 -0500 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2010-05-17 23:46:29 -0400 |
commit | e10f73194d63321d020433fa1287e619d4107b79 (patch) | |
tree | a5864a948c0c7e3f8d15e06a84491ef0c9504297 /drivers | |
parent | 24f222e77ad62e41b1a882c77feeb8268c80b909 (diff) |
V4L/DVB: gspca - sn9c20x: Fix exposure control for HV7131R sensor
Make the range of exposure values (0-0x1770) distribute evenly through
HV7131R's exposure control bytes.
Signed-off-by: German Galkin <galkinga@gmail.com>
Signed-off-by: Jean-François Moine <moinejf@free.fr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/media/video/gspca/sn9c20x.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/media/video/gspca/sn9c20x.c b/drivers/media/video/gspca/sn9c20x.c index 3dee3e5844b6..04bf80ddfbb8 100644 --- a/drivers/media/video/gspca/sn9c20x.c +++ b/drivers/media/video/gspca/sn9c20x.c | |||
@@ -1655,9 +1655,9 @@ static int set_exposure(struct gspca_dev *gspca_dev) | |||
1655 | case SENSOR_HV7131R: | 1655 | case SENSOR_HV7131R: |
1656 | exp[0] |= (4 << 4); | 1656 | exp[0] |= (4 << 4); |
1657 | exp[2] = 0x25; | 1657 | exp[2] = 0x25; |
1658 | exp[3] = ((sd->exposure * 0xffffff) / 0xffff) >> 16; | 1658 | exp[3] = (sd->exposure >> 5) & 0xff; |
1659 | exp[4] = ((sd->exposure * 0xffffff) / 0xffff) >> 8; | 1659 | exp[4] = (sd->exposure << 3) & 0xff; |
1660 | exp[5] = ((sd->exposure * 0xffffff) / 0xffff) & 0xff; | 1660 | exp[5] = 0; |
1661 | break; | 1661 | break; |
1662 | default: | 1662 | default: |
1663 | return 0; | 1663 | return 0; |