Skip to content

Commit

Permalink
[media] gscpa_pac207: Switch to coarse_grained_expo auto gain algorithm
Browse files Browse the repository at this point in the history
The pac207's exposure control is a clock-divider, so it goes with quite
big steps. So lets use an autogain algorithm optimised for that.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
  • Loading branch information
Hans de Goede authored and Mauro Carvalho Chehab committed May 14, 2012
1 parent cd92c1a commit 0413d3b
Showing 1 changed file with 2 additions and 5 deletions.
7 changes: 2 additions & 5 deletions drivers/media/video/gspca/pac207.c
Original file line number Diff line number Diff line change
Expand Up @@ -46,13 +46,11 @@ MODULE_LICENSE("GPL");
#define PAC207_EXPOSURE_MIN 3
#define PAC207_EXPOSURE_MAX 90 /* 1 sec expo time / 1 fps */
#define PAC207_EXPOSURE_DEFAULT 5 /* power on default: 3 */
#define PAC207_EXPOSURE_KNEE 9 /* fps: 90 / exposure -> 9: 10 fps */
#define PAC207_EXPOSURE_REG 0x02

#define PAC207_GAIN_MIN 0
#define PAC207_GAIN_MAX 31
#define PAC207_GAIN_DEFAULT 7 /* power on default: 9 */
#define PAC207_GAIN_KNEE 15
#define PAC207_GAIN_REG 0x0e

#define PAC207_AUTOGAIN_DEADZONE 30
Expand Down Expand Up @@ -343,9 +341,8 @@ static void pac207_do_auto_gain(struct gspca_dev *gspca_dev)

if (sd->autogain_ignore_frames > 0)
sd->autogain_ignore_frames--;
else if (gspca_expo_autogain(gspca_dev, avg_lum,
90, PAC207_AUTOGAIN_DEADZONE,
PAC207_GAIN_KNEE, PAC207_EXPOSURE_KNEE))
else if (gspca_coarse_grained_expo_autogain(gspca_dev, avg_lum,
90, PAC207_AUTOGAIN_DEADZONE))
sd->autogain_ignore_frames = PAC_AUTOGAIN_IGNORE_FRAMES;
}

Expand Down

0 comments on commit 0413d3b

Please sign in to comment.