[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#271857: kernel-source-2.6.8: Please blacklist "IO-Warrior" devices in hid-core.c



Package: kernel-source-2.6.8
Version: 2.6.8-5
Severity: minor
Tags: patch

Hi,

the USB devices called "IO-Warriors" from the German manufacturer
"Code Mercenaries" register themselves as HID devices but they offer
more functions than regular HID devices.

To use these extended functions the manufacturer offers a kernel
module (source as well as binaries), which requires modifications
in hid-core.c that make the standard usbhid kernel module ignores
these devices as HID devices.

The attached patch against the current kernel-source-2.6.8 package's
hid-core.c provides these modifications by adding the IO-Warrior
devices to the blacklist in hid-core.c

I am strongly convinced that this patch is licenced under the GPL since
the manufacturer freely distributes a modified version of Linux 2.6.4's
hid-core.c which differs from the original version only by the
modifications in the patch and thus still contains the original license
banner:

/*
 * This program is free software; you can redistribute it and/or modify it
 * under the terms of the GNU General Public License as published by the Free
 * Software Foundation; either version 2 of the License, or (at your option)
 * any later version.
 */

You may check it yourself in the Linux SDK for the IO-Warroir devices
which is freely available at:
        http://www.codemercs.de/Downloads/Linux26.zip

Please consider the patch for inclusion in the next Debian kernel release.
It is trivial fix that does not hurt people not using IO-Warriors, and
it saves users, who need the special IOWarrior module, the necessity to
patch a standard kernel module.

I have also reported the bug upstream and hope it will make it into one
of the next upstream versions.

TIA
Peter


-- System Information:
Debian Release: 3.1
  APT prefers testing
  APT policy: (990, 'testing'), (500, 'unstable'), (1, 'experimental')
Architecture: i386 (i686)
Kernel: Linux 2.6.7-1-k7
Locale: LANG=de_DE@euro, LC_CTYPE=de_DE@euro

Versions of packages kernel-source-2.6.8 depends on:
ii  binutils                   2.14.90.0.7-8 The GNU assembler, linker and bina
ii  bzip2                      1.0.2-1       A high-quality block-sorting file 
ii  coreutils [fileutils]      5.2.1-2       The GNU core utilities
ii  fileutils                  5.2.1-2       The GNU file management utilities 

-- no debconf information
--- hid-core.c	2004-08-14 07:37:14.000000000 +0200
+++ hid-core.c	2004-09-15 17:34:43.000000000 +0200
@@ -1439,6 +1439,12 @@
 #define USB_DEVICE_ID_1_PHIDGETSERVO_20	0x8101
 #define USB_DEVICE_ID_4_PHIDGETSERVO_20	0x8104
 
+#define USB_VENDOR_ID_CODEMERCS		0x07c0
+#define USB_DEVICE_ID_CODEMERCS_IOW40	0x1500
+#define USB_DEVICE_ID_CODEMERCS_IOW24	0x1501
+#define USB_DEVICE_ID_CODEMERCS_IOW48	0x1502
+#define USB_DEVICE_ID_CODEMERCS_IOW28	0x1503
+
 static struct hid_blacklist {
 	__u16 idVendor;
 	__u16 idProduct;
@@ -1521,6 +1527,11 @@
 	{ USB_VENDOR_ID_SAITEK, USB_DEVICE_ID_SAITEK_RUMBLEPAD, HID_QUIRK_BADPAD },
 	{ USB_VENDOR_ID_TOPMAX, USB_DEVICE_ID_TOPMAX_COBRAPAD, HID_QUIRK_BADPAD },
 
+	{ USB_VENDOR_ID_CODEMERCS, USB_DEVICE_ID_CODEMERCS_IOW40, HID_QUIRK_IGNORE },
+	{ USB_VENDOR_ID_CODEMERCS, USB_DEVICE_ID_CODEMERCS_IOW24, HID_QUIRK_IGNORE },
+	{ USB_VENDOR_ID_CODEMERCS, USB_DEVICE_ID_CODEMERCS_IOW48, HID_QUIRK_IGNORE },
+	{ USB_VENDOR_ID_CODEMERCS, USB_DEVICE_ID_CODEMERCS_IOW28, HID_QUIRK_IGNORE },
+
 	{ 0, 0 }
 };
 

Reply to: