diff options
Diffstat (limited to 'drivers/media/video/gspca/vc032x.c')
-rw-r--r-- | drivers/media/video/gspca/vc032x.c | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/drivers/media/video/gspca/vc032x.c b/drivers/media/video/gspca/vc032x.c index e4e933c400bc..30872cd047cc 100644 --- a/drivers/media/video/gspca/vc032x.c +++ b/drivers/media/video/gspca/vc032x.c | |||
@@ -42,7 +42,7 @@ struct sd { | |||
42 | char bridge; | 42 | char bridge; |
43 | #define BRIDGE_VC0321 0 | 43 | #define BRIDGE_VC0321 0 |
44 | #define BRIDGE_VC0323 1 | 44 | #define BRIDGE_VC0323 1 |
45 | char sensor; | 45 | u8 sensor; |
46 | #define SENSOR_HV7131R 0 | 46 | #define SENSOR_HV7131R 0 |
47 | #define SENSOR_MI0360 1 | 47 | #define SENSOR_MI0360 1 |
48 | #define SENSOR_MI1310_SOC 2 | 48 | #define SENSOR_MI1310_SOC 2 |
@@ -2453,6 +2453,17 @@ static int sd_config(struct gspca_dev *gspca_dev, | |||
2453 | struct usb_device *dev = gspca_dev->dev; | 2453 | struct usb_device *dev = gspca_dev->dev; |
2454 | struct cam *cam; | 2454 | struct cam *cam; |
2455 | int sensor; | 2455 | int sensor; |
2456 | static u8 npkt[] = { /* number of packets per ISOC message */ | ||
2457 | 64, /* HV7131R 0 */ | ||
2458 | 32, /* MI0360 1 */ | ||
2459 | 32, /* MI1310_SOC 2 */ | ||
2460 | 64, /* MI1320 3 */ | ||
2461 | 128, /* MI1320_SOC 4 */ | ||
2462 | 32, /* OV7660 5 */ | ||
2463 | 64, /* OV7670 6 */ | ||
2464 | 128, /* PO1200 7 */ | ||
2465 | 128, /* PO3130NC 8 */ | ||
2466 | }; | ||
2456 | 2467 | ||
2457 | cam = &gspca_dev->cam; | 2468 | cam = &gspca_dev->cam; |
2458 | sd->bridge = id->driver_info; | 2469 | sd->bridge = id->driver_info; |
@@ -2515,6 +2526,7 @@ static int sd_config(struct gspca_dev *gspca_dev, | |||
2515 | break; | 2526 | break; |
2516 | } | 2527 | } |
2517 | } | 2528 | } |
2529 | cam->npkt = npkt[sd->sensor]; | ||
2518 | 2530 | ||
2519 | sd->hflip = HFLIP_DEF; | 2531 | sd->hflip = HFLIP_DEF; |
2520 | sd->vflip = VFLIP_DEF; | 2532 | sd->vflip = VFLIP_DEF; |