aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media
diff options
context:
space:
mode:
authorJean-François Moine <moinejf@free.fr>2010-12-28 05:24:18 -0500
committerMauro Carvalho Chehab <mchehab@redhat.com>2010-12-29 05:17:20 -0500
commit7e5f9059a807ce9b7a12b2402f5aeae9557c8049 (patch)
tree704149565c9c3f106ada4e7fa150e145d5115d83 /drivers/media
parent7fbee99aa2c73bdf47add9de58f646fa7713e7e5 (diff)
[media] gspca - vc032x: Cleanup source
Signed-off-by: Jean-François Moine <moinejf@free.fr> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media')
-rw-r--r--drivers/media/video/gspca/vc032x.c74
1 files changed, 40 insertions, 34 deletions
diff --git a/drivers/media/video/gspca/vc032x.c b/drivers/media/video/gspca/vc032x.c
index 38a6efe1a5f9..9b2ae1b6cc75 100644
--- a/drivers/media/video/gspca/vc032x.c
+++ b/drivers/media/video/gspca/vc032x.c
@@ -47,24 +47,29 @@ struct sd {
47 u8 image_offset; 47 u8 image_offset;
48 48
49 u8 bridge; 49 u8 bridge;
50#define BRIDGE_VC0321 0
51#define BRIDGE_VC0323 1
52 u8 sensor; 50 u8 sensor;
53#define SENSOR_HV7131R 0
54#define SENSOR_MI0360 1
55#define SENSOR_MI1310_SOC 2
56#define SENSOR_MI1320 3
57#define SENSOR_MI1320_SOC 4
58#define SENSOR_OV7660 5
59#define SENSOR_OV7670 6
60#define SENSOR_PO1200 7
61#define SENSOR_PO3130NC 8
62#define SENSOR_POxxxx 9
63 u8 flags; 51 u8 flags;
64#define FL_SAMSUNG 0x01 /* SamsungQ1 (2 sensors) */ 52#define FL_SAMSUNG 0x01 /* SamsungQ1 (2 sensors) */
65#define FL_HFLIP 0x02 /* mirrored by default */ 53#define FL_HFLIP 0x02 /* mirrored by default */
66#define FL_VFLIP 0x04 /* vertical flipped by default */ 54#define FL_VFLIP 0x04 /* vertical flipped by default */
67}; 55};
56enum bridges {
57 BRIDGE_VC0321,
58 BRIDGE_VC0323,
59};
60enum sensors {
61 SENSOR_HV7131R,
62 SENSOR_MI0360,
63 SENSOR_MI1310_SOC,
64 SENSOR_MI1320,
65 SENSOR_MI1320_SOC,
66 SENSOR_OV7660,
67 SENSOR_OV7670,
68 SENSOR_PO1200,
69 SENSOR_PO3130NC,
70 SENSOR_POxxxx,
71 NSENSORS
72};
68 73
69/* V4L2 controls supported by the driver */ 74/* V4L2 controls supported by the driver */
70static int sd_setbrightness(struct gspca_dev *gspca_dev, __s32 val); 75static int sd_setbrightness(struct gspca_dev *gspca_dev, __s32 val);
@@ -260,56 +265,56 @@ static const struct ctrl sd_ctrls[] = {
260}; 265};
261 266
262/* table of the disabled controls */ 267/* table of the disabled controls */
263static u32 ctrl_dis[] = { 268static u32 ctrl_dis[NSENSORS] = {
264/* SENSOR_HV7131R 0 */ 269 [SENSOR_HV7131R] =
265 (1 << BRIGHTNESS_IDX) | (1 << CONTRAST_IDX) | (1 << COLORS_IDX) 270 (1 << BRIGHTNESS_IDX) | (1 << CONTRAST_IDX) | (1 << COLORS_IDX)
266 | (1 << HFLIP_IDX) | (1 << VFLIP_IDX) | (1 << LIGHTFREQ_IDX) 271 | (1 << HFLIP_IDX) | (1 << VFLIP_IDX) | (1 << LIGHTFREQ_IDX)
267 | (1 << SHARPNESS_IDX) 272 | (1 << SHARPNESS_IDX)
268 | (1 << GAIN_IDX) | (1 << EXPOSURE_IDX) 273 | (1 << GAIN_IDX) | (1 << EXPOSURE_IDX)
269 | (1 << AUTOGAIN_IDX) | (1 << BACKLIGHT_IDX), 274 | (1 << AUTOGAIN_IDX) | (1 << BACKLIGHT_IDX),
270/* SENSOR_MI0360 1 */ 275 [SENSOR_MI0360] =
271 (1 << BRIGHTNESS_IDX) | (1 << CONTRAST_IDX) | (1 << COLORS_IDX) 276 (1 << BRIGHTNESS_IDX) | (1 << CONTRAST_IDX) | (1 << COLORS_IDX)
272 | (1 << HFLIP_IDX) | (1 << VFLIP_IDX) | (1 << LIGHTFREQ_IDX) 277 | (1 << HFLIP_IDX) | (1 << VFLIP_IDX) | (1 << LIGHTFREQ_IDX)
273 | (1 << SHARPNESS_IDX) 278 | (1 << SHARPNESS_IDX)
274 | (1 << GAIN_IDX) | (1 << EXPOSURE_IDX) 279 | (1 << GAIN_IDX) | (1 << EXPOSURE_IDX)
275 | (1 << AUTOGAIN_IDX) | (1 << BACKLIGHT_IDX), 280 | (1 << AUTOGAIN_IDX) | (1 << BACKLIGHT_IDX),
276/* SENSOR_MI1310_SOC 2 */ 281 [SENSOR_MI1310_SOC] =
277 (1 << BRIGHTNESS_IDX) | (1 << CONTRAST_IDX) | (1 << COLORS_IDX) 282 (1 << BRIGHTNESS_IDX) | (1 << CONTRAST_IDX) | (1 << COLORS_IDX)
278 | (1 << LIGHTFREQ_IDX) | (1 << SHARPNESS_IDX) 283 | (1 << LIGHTFREQ_IDX) | (1 << SHARPNESS_IDX)
279 | (1 << GAIN_IDX) | (1 << EXPOSURE_IDX) 284 | (1 << GAIN_IDX) | (1 << EXPOSURE_IDX)
280 | (1 << AUTOGAIN_IDX) | (1 << BACKLIGHT_IDX), 285 | (1 << AUTOGAIN_IDX) | (1 << BACKLIGHT_IDX),
281/* SENSOR_MI1320 3 */ 286 [SENSOR_MI1320] =
282 (1 << BRIGHTNESS_IDX) | (1 << CONTRAST_IDX) | (1 << COLORS_IDX) 287 (1 << BRIGHTNESS_IDX) | (1 << CONTRAST_IDX) | (1 << COLORS_IDX)
283 | (1 << LIGHTFREQ_IDX) | (1 << SHARPNESS_IDX) 288 | (1 << LIGHTFREQ_IDX) | (1 << SHARPNESS_IDX)
284 | (1 << GAIN_IDX) | (1 << EXPOSURE_IDX) 289 | (1 << GAIN_IDX) | (1 << EXPOSURE_IDX)
285 | (1 << AUTOGAIN_IDX) | (1 << BACKLIGHT_IDX), 290 | (1 << AUTOGAIN_IDX) | (1 << BACKLIGHT_IDX),
286/* SENSOR_MI1320_SOC 4 */ 291 [SENSOR_MI1320_SOC] =
287 (1 << BRIGHTNESS_IDX) | (1 << CONTRAST_IDX) | (1 << COLORS_IDX) 292 (1 << BRIGHTNESS_IDX) | (1 << CONTRAST_IDX) | (1 << COLORS_IDX)
288 | (1 << LIGHTFREQ_IDX) | (1 << SHARPNESS_IDX) 293 | (1 << LIGHTFREQ_IDX) | (1 << SHARPNESS_IDX)
289 | (1 << GAIN_IDX) | (1 << EXPOSURE_IDX) 294 | (1 << GAIN_IDX) | (1 << EXPOSURE_IDX)
290 | (1 << AUTOGAIN_IDX) | (1 << BACKLIGHT_IDX), 295 | (1 << AUTOGAIN_IDX) | (1 << BACKLIGHT_IDX),
291/* SENSOR_OV7660 5 */ 296 [SENSOR_OV7660] =
292 (1 << BRIGHTNESS_IDX) | (1 << CONTRAST_IDX) | (1 << COLORS_IDX) 297 (1 << BRIGHTNESS_IDX) | (1 << CONTRAST_IDX) | (1 << COLORS_IDX)
293 | (1 << LIGHTFREQ_IDX) | (1 << SHARPNESS_IDX) 298 | (1 << LIGHTFREQ_IDX) | (1 << SHARPNESS_IDX)
294 | (1 << GAIN_IDX) | (1 << EXPOSURE_IDX) 299 | (1 << GAIN_IDX) | (1 << EXPOSURE_IDX)
295 | (1 << AUTOGAIN_IDX) | (1 << BACKLIGHT_IDX), 300 | (1 << AUTOGAIN_IDX) | (1 << BACKLIGHT_IDX),
296/* SENSOR_OV7670 6 */ 301 [SENSOR_OV7670] =
297 (1 << BRIGHTNESS_IDX) | (1 << CONTRAST_IDX) | (1 << COLORS_IDX) 302 (1 << BRIGHTNESS_IDX) | (1 << CONTRAST_IDX) | (1 << COLORS_IDX)
298 | (1 << SHARPNESS_IDX) 303 | (1 << SHARPNESS_IDX)
299 | (1 << GAIN_IDX) | (1 << EXPOSURE_IDX) 304 | (1 << GAIN_IDX) | (1 << EXPOSURE_IDX)
300 | (1 << AUTOGAIN_IDX) | (1 << BACKLIGHT_IDX), 305 | (1 << AUTOGAIN_IDX) | (1 << BACKLIGHT_IDX),
301/* SENSOR_PO1200 7 */ 306 [SENSOR_PO1200] =
302 (1 << BRIGHTNESS_IDX) | (1 << CONTRAST_IDX) | (1 << COLORS_IDX) 307 (1 << BRIGHTNESS_IDX) | (1 << CONTRAST_IDX) | (1 << COLORS_IDX)
303 | (1 << LIGHTFREQ_IDX) 308 | (1 << LIGHTFREQ_IDX)
304 | (1 << GAIN_IDX) | (1 << EXPOSURE_IDX) 309 | (1 << GAIN_IDX) | (1 << EXPOSURE_IDX)
305 | (1 << AUTOGAIN_IDX) | (1 << BACKLIGHT_IDX), 310 | (1 << AUTOGAIN_IDX) | (1 << BACKLIGHT_IDX),
306/* SENSOR_PO3130NC 8 */ 311 [SENSOR_PO3130NC] =
307 (1 << BRIGHTNESS_IDX) | (1 << CONTRAST_IDX) | (1 << COLORS_IDX) 312 (1 << BRIGHTNESS_IDX) | (1 << CONTRAST_IDX) | (1 << COLORS_IDX)
308 | (1 << HFLIP_IDX) | (1 << VFLIP_IDX) | (1 << LIGHTFREQ_IDX) 313 | (1 << HFLIP_IDX) | (1 << VFLIP_IDX) | (1 << LIGHTFREQ_IDX)
309 | (1 << SHARPNESS_IDX) 314 | (1 << SHARPNESS_IDX)
310 | (1 << GAIN_IDX) | (1 << EXPOSURE_IDX) 315 | (1 << GAIN_IDX) | (1 << EXPOSURE_IDX)
311 | (1 << AUTOGAIN_IDX) | (1 << BACKLIGHT_IDX), 316 | (1 << AUTOGAIN_IDX) | (1 << BACKLIGHT_IDX),
312/* SENSOR_POxxxx 9 */ 317 [SENSOR_POxxxx] =
313 (1 << HFLIP_IDX) | (1 << VFLIP_IDX) | (1 << LIGHTFREQ_IDX), 318 (1 << HFLIP_IDX) | (1 << VFLIP_IDX) | (1 << LIGHTFREQ_IDX),
314}; 319};
315 320
@@ -3420,17 +3425,18 @@ static int sd_init(struct gspca_dev *gspca_dev)
3420 struct sd *sd = (struct sd *) gspca_dev; 3425 struct sd *sd = (struct sd *) gspca_dev;
3421 struct cam *cam; 3426 struct cam *cam;
3422 int sensor; 3427 int sensor;
3423 static u8 npkt[] = { /* number of packets per ISOC message */ 3428 /* number of packets per ISOC message */
3424 64, /* HV7131R 0 */ 3429 static u8 npkt[NSENSORS] = {
3425 32, /* MI0360 1 */ 3430 [SENSOR_HV7131R] = 64,
3426 32, /* MI1310_SOC 2 */ 3431 [SENSOR_MI0360] = 32,
3427 64, /* MI1320 3 */ 3432 [SENSOR_MI1310_SOC] = 32,
3428 128, /* MI1320_SOC 4 */ 3433 [SENSOR_MI1320] = 64,
3429 32, /* OV7660 5 */ 3434 [SENSOR_MI1320_SOC] = 128,
3430 64, /* OV7670 6 */ 3435 [SENSOR_OV7660] = 32,
3431 128, /* PO1200 7 */ 3436 [SENSOR_OV7670] = 64,
3432 128, /* PO3130NC 8 */ 3437 [SENSOR_PO1200] = 128,
3433 128, /* POxxxx 9 */ 3438 [SENSOR_PO3130NC] = 128,
3439 [SENSOR_POxxxx] = 128,
3434 }; 3440 };
3435 3441
3436 if (sd->sensor != SENSOR_POxxxx) 3442 if (sd->sensor != SENSOR_POxxxx)