提交 c41492c8 编写于 作者: J Jean-Francois Moine 提交者: Mauro Carvalho Chehab

V4L/DVB (8231): gspca: Do not declare the webcams declared by other drivers.

etoms:    Do not declare the webcams declared by the driver et61x251.
sonixb, sonixj:
          Do not declare the webcams declared by the driver sn9c102.
zc3xx:    Do not declare the webcams declared by the driver zc0301.
Signed-off-by: NJean-Francois Moine <moinejf@free.fr>
Signed-off-by: NMauro Carvalho Chehab <mchehab@infradead.org>
上级 f87086e3
......@@ -912,7 +912,9 @@ static struct sd_desc sd_desc = {
/* -- module initialisation -- */
#define DVNM(name) .driver_info = (kernel_ulong_t) name
static __devinitdata struct usb_device_id device_table[] = {
#ifndef CONFIG_USB_ET61X251
{USB_DEVICE(0x102c, 0x6151), DVNM("Qcam Sangha CIF")},
#endif
{USB_DEVICE(0x102c, 0x6251), DVNM("Qcam xxxxxx VGA")},
{}
};
......
......@@ -858,6 +858,7 @@ static struct sd_desc sd_desc = {
/* -- module initialisation -- */
#define DVNM(name) .driver_info = (kernel_ulong_t) name
static __devinitdata struct usb_device_id device_table[] = {
#ifndef CONFIG_USB_SN9C102
{USB_DEVICE(0x0c45, 0x6001), DVNM("Genius VideoCAM NB")},
{USB_DEVICE(0x0c45, 0x6005), DVNM("Sweex Tas5110")},
{USB_DEVICE(0x0c45, 0x6007), DVNM("Sonix sn9c101 + Tas5110D")},
......@@ -874,6 +875,7 @@ static __devinitdata struct usb_device_id device_table[] = {
{USB_DEVICE(0x0c45, 0x602e), DVNM("Genius VideoCam Messenger")},
{USB_DEVICE(0x0c45, 0x60af), DVNM("Trust WB3100P")},
{USB_DEVICE(0x0c45, 0x60b0), DVNM("Genius VideoCam Look")},
#endif
{}
};
MODULE_DEVICE_TABLE(usb, device_table);
......
......@@ -1606,11 +1606,13 @@ static const struct sd_desc sd_desc = {
/* -- module initialisation -- */
#define DVNM(name) .driver_info = (kernel_ulong_t) name
static const __devinitdata struct usb_device_id device_table[] = {
#ifndef CONFIG_USB_SN9C102
{USB_DEVICE(0x0458, 0x7025), DVNM("Genius Eye 311Q")},
{USB_DEVICE(0x045e, 0x00f5), DVNM("MicroSoft VX3000")},
{USB_DEVICE(0x045e, 0x00f7), DVNM("MicroSoft VX1000")},
{USB_DEVICE(0x0471, 0x0327), DVNM("Philips SPC 600 NC")},
{USB_DEVICE(0x0471, 0x0328), DVNM("Philips SPC 700 NC")},
#endif
{USB_DEVICE(0x0471, 0x0330), DVNM("Philips SPC 710NC")},
{USB_DEVICE(0x0c45, 0x6040), DVNM("Speed NVC 350K")},
{USB_DEVICE(0x0c45, 0x607c), DVNM("Sonix sn9c102p Hv7131R")},
......@@ -1620,10 +1622,12 @@ static const __devinitdata struct usb_device_id device_table[] = {
{USB_DEVICE(0x0c45, 0x60fc), DVNM("LG-LIC300")},
{USB_DEVICE(0x0c45, 0x612a), DVNM("Avant Camera")},
{USB_DEVICE(0x0c45, 0x612c), DVNM("Typhoon Rasy Cam 1.3MPix")},
#ifndef CONFIG_USB_SN9C102
{USB_DEVICE(0x0c45, 0x6130), DVNM("Sonix Pccam")},
{USB_DEVICE(0x0c45, 0x6138), DVNM("Sn9c120 Mo4000")},
{USB_DEVICE(0x0c45, 0x613b), DVNM("Surfer SN-206")},
{USB_DEVICE(0x0c45, 0x613c), DVNM("Sonix Pccam168")},
#endif
{}
};
MODULE_DEVICE_TABLE(usb, device_table);
......
......@@ -1332,20 +1332,20 @@ static __u8 i2c_write(struct usb_device *dev,
if (size > 3 || size < 1)
return -EINVAL;
reg_r(dev, 0xa1, 0xb33f, &retbyte, 1);
reg_w(dev, 0xa0, size , 0xb334);
reg_w(dev, 0xa0, reg , 0xb33a);
reg_w(dev, 0xa0, size, 0xb334);
reg_w(dev, 0xa0, reg, 0xb33a);
switch (size) {
case 1:
reg_w(dev, 0xa0, val[0] , 0xb336);
reg_w(dev, 0xa0, val[0], 0xb336);
break;
case 2:
reg_w(dev, 0xa0, val[0] , 0xb336);
reg_w(dev, 0xa0, val[1] , 0xb337);
reg_w(dev, 0xa0, val[0], 0xb336);
reg_w(dev, 0xa0, val[1], 0xb337);
break;
case 3:
reg_w(dev, 0xa0, val[0] , 0xb336);
reg_w(dev, 0xa0, val[1] , 0xb337);
reg_w(dev, 0xa0, val[2] , 0xb338);
reg_w(dev, 0xa0, val[0], 0xb336);
reg_w(dev, 0xa0, val[1], 0xb337);
reg_w(dev, 0xa0, val[2], 0xb338);
break;
default:
reg_w(dev, 0xa0, 0x01, 0xb334);
......
......@@ -7132,10 +7132,10 @@ static int sd_config(struct gspca_dev *gspca_dev,
gspca_dev->nbalt--;
if (vga) {
cam->cam_mode = vga_mode;
cam->nmodes = sizeof vga_mode / sizeof vga_mode[0];
cam->nmodes = ARRAY_SIZE(vga_mode);
} else {
cam->cam_mode = sif_mode;
cam->nmodes = sizeof sif_mode / sizeof sif_mode[0];
cam->nmodes = ARRAY_SIZE(sif_mode);
}
sd->qindex = 1;
sd->brightness = sd_ctrls[SD_BRIGHTNESS].qctrl.default_value;
......@@ -7498,21 +7498,26 @@ static const struct sd_desc sd_desc = {
#define DVNM(name) .driver_info = (kernel_ulong_t) name
static const __devinitdata struct usb_device_id device_table[] = {
{USB_DEVICE(0x041e, 0x041e), DVNM("Creative WebCam Live!")},
#ifndef CONFIG_USB_ZC0301
{USB_DEVICE(0x041e, 0x4017), DVNM("Creative Webcam Mobile PD1090")},
{USB_DEVICE(0x041e, 0x401c), DVNM("Creative NX")},
{USB_DEVICE(0x041e, 0x401e), DVNM("Creative Nx Pro")},
{USB_DEVICE(0x041e, 0x401f), DVNM("Creative Webcam Notebook PD1171")},
/*0x041e, 0x4022*/
#endif
{USB_DEVICE(0x041e, 0x4029), DVNM("Creative WebCam Vista Pro")},
#ifndef CONFIG_USB_ZC0301
{USB_DEVICE(0x041e, 0x4034), DVNM("Creative Instant P0620")},
{USB_DEVICE(0x041e, 0x4035), DVNM("Creative Instant P0620D")},
{USB_DEVICE(0x041e, 0x4036), DVNM("Creative Live !")},
{USB_DEVICE(0x041e, 0x403a), DVNM("Creative Nx Pro 2")},
#endif
{USB_DEVICE(0x041e, 0x4051), DVNM("Creative Notebook Pro (VF0250)")},
{USB_DEVICE(0x041e, 0x4053), DVNM("Creative Live!Cam Video IM")},
#ifndef CONFIG_USB_ZC0301
{USB_DEVICE(0x0458, 0x7007), DVNM("Genius VideoCam V2")},
{USB_DEVICE(0x0458, 0x700c), DVNM("Genius VideoCam V3")},
{USB_DEVICE(0x0458, 0x700f), DVNM("Genius VideoCam Web V2")},
#endif
{USB_DEVICE(0x0461, 0x0a00), DVNM("MicroInnovation WebCam320")},
{USB_DEVICE(0x046d, 0x08a0), DVNM("Logitech QC IM")},
{USB_DEVICE(0x046d, 0x08a1), DVNM("Logitech QC IM 0x08A1 +sound")},
......@@ -7521,10 +7526,12 @@ static const __devinitdata struct usb_device_id device_table[] = {
{USB_DEVICE(0x046d, 0x08a6), DVNM("Logitech QCim")},
{USB_DEVICE(0x046d, 0x08a7), DVNM("Logitech QuickCam Image")},
{USB_DEVICE(0x046d, 0x08a9), DVNM("Logitech Notebook Deluxe")},
{USB_DEVICE(0x046d, 0x08aa), DVNM("Labtec Webcam Notebook")},
{USB_DEVICE(0x046d, 0x08aa), DVNM("Labtec Webcam Notebook")},
{USB_DEVICE(0x046d, 0x08ac), DVNM("Logitech QuickCam Cool")},
{USB_DEVICE(0x046d, 0x08ad), DVNM("Logitech QCCommunicate STX")},
#ifndef CONFIG_USB_ZC0301
{USB_DEVICE(0x046d, 0x08ae), DVNM("Logitech QuickCam for Notebooks")},
#endif
{USB_DEVICE(0x046d, 0x08af), DVNM("Logitech QuickCam Cool")},
{USB_DEVICE(0x046d, 0x08b9), DVNM("Logitech QC IM ???")},
{USB_DEVICE(0x046d, 0x08d7), DVNM("Logitech QCam STX")},
......@@ -7537,18 +7544,22 @@ static const __devinitdata struct usb_device_id device_table[] = {
{USB_DEVICE(0x0471, 0x032d), DVNM("Philips spc210nc")},
{USB_DEVICE(0x0471, 0x032e), DVNM("Philips spc315nc")},
{USB_DEVICE(0x055f, 0xc005), DVNM("Mustek Wcam300A")},
#ifndef CONFIG_USB_ZC0301
{USB_DEVICE(0x055f, 0xd003), DVNM("Mustek WCam300A")},
{USB_DEVICE(0x055f, 0xd004), DVNM("Mustek WCam300 AN")},
#endif
{USB_DEVICE(0x0698, 0x2003), DVNM("CTX M730V built in")},
/*0x0ac8, 0x0301*/
{USB_DEVICE(0x0ac8, 0x0302), DVNM("Z-star Vimicro zc0302")},
#ifndef CONFIG_USB_ZC0301
{USB_DEVICE(0x0ac8, 0x301b), DVNM("Z-Star zc301b")},
{USB_DEVICE(0x0ac8, 0x303b), DVNM("Vimicro 0x303b")},
#endif
{USB_DEVICE(0x0ac8, 0x305b), DVNM("Z-star Vimicro zc0305b")},
#ifndef CONFIG_USB_ZC0301
{USB_DEVICE(0x0ac8, 0x307b), DVNM("Z-Star 307b")},
{USB_DEVICE(0x10fd, 0x0128), DVNM("Typhoon Webshot II 300k 0x0128")},
/*0x10fd, 0x804e*/
{USB_DEVICE(0x10fd, 0x8050), DVNM("Typhoon Webshot II USB 300k")},
#endif
{} /* end of entry */
};
#undef DVNAME
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册