The patch number 8231 was added via Jean-Francois Moine <[EMAIL PROTECTED]>
to http://linuxtv.org/hg/v4l-dvb master development tree.
Kernel patches in this development tree may be modified to be backward
compatible with older kernels. Compatibility modifications will be
removed before inclusion into the mainstream Kernel
If anyone has any objections, please let us know by sending a message to:
[EMAIL PROTECTED]
------
From: Jean-Francois Moine <[EMAIL PROTECTED]>
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: Jean-Francois Moine <[EMAIL PROTECTED]>
---
linux/drivers/media/video/gspca/etoms.c | 2 ++
linux/drivers/media/video/gspca/sonixb.c | 2 ++
linux/drivers/media/video/gspca/sonixj.c | 4 ++++
linux/drivers/media/video/gspca/vc032x.c | 16 ++++++++--------
linux/drivers/media/video/gspca/zc3xx.c | 23 +++++++++++++++++------
5 files changed, 33 insertions(+), 14 deletions(-)
diff -r 5065159a99d4 -r 0981a63faf02 linux/drivers/media/video/gspca/etoms.c
--- a/linux/drivers/media/video/gspca/etoms.c Sun Jul 06 09:27:19 2008 +0200
+++ b/linux/drivers/media/video/gspca/etoms.c Mon Jul 07 10:31:16 2008 +0200
@@ -918,7 +918,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")},
{}
};
diff -r 5065159a99d4 -r 0981a63faf02 linux/drivers/media/video/gspca/sonixb.c
--- a/linux/drivers/media/video/gspca/sonixb.c Sun Jul 06 09:27:19 2008 +0200
+++ b/linux/drivers/media/video/gspca/sonixb.c Mon Jul 07 10:31:16 2008 +0200
@@ -866,6 +866,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")},
@@ -882,6 +883,7 @@ static __devinitdata struct usb_device_i
{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);
diff -r 5065159a99d4 -r 0981a63faf02 linux/drivers/media/video/gspca/sonixj.c
--- a/linux/drivers/media/video/gspca/sonixj.c Sun Jul 06 09:27:19 2008 +0200
+++ b/linux/drivers/media/video/gspca/sonixj.c Mon Jul 07 10:31:16 2008 +0200
@@ -1627,11 +1627,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")},
@@ -1641,10 +1643,12 @@ static const __devinitdata struct usb_de
{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);
diff -r 5065159a99d4 -r 0981a63faf02 linux/drivers/media/video/gspca/vc032x.c
--- a/linux/drivers/media/video/gspca/vc032x.c Sun Jul 06 09:27:19 2008 +0200
+++ b/linux/drivers/media/video/gspca/vc032x.c Mon Jul 07 10:31:16 2008 +0200
@@ -1512,20 +1512,20 @@ static __u8 i2c_write(struct usb_device
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);
diff -r 5065159a99d4 -r 0981a63faf02 linux/drivers/media/video/gspca/zc3xx.c
--- a/linux/drivers/media/video/gspca/zc3xx.c Sun Jul 06 09:27:19 2008 +0200
+++ b/linux/drivers/media/video/gspca/zc3xx.c Mon Jul 07 10:31:16 2008 +0200
@@ -7136,10 +7136,10 @@ static int sd_config(struct gspca_dev *g
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;
@@ -7510,21 +7510,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")},
@@ -7533,10 +7538,12 @@ static const __devinitdata struct usb_de
{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")},
@@ -7549,18 +7556,22 @@ static const __devinitdata struct usb_de
{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
---
Patch is available at:
http://linuxtv.org/hg/v4l-dvb/rev/0981a63faf0261da41fd1eaf10d6d35391b28694
_______________________________________________
linuxtv-commits mailing list
[email protected]
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linuxtv-commits