aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb
diff options
context:
space:
mode:
authorRobert Marquardt <marquardt@codemercs.com>2007-03-02 10:01:52 -0500
committerJiri Kosina <jkosina@suse.cz>2007-03-02 10:08:16 -0500
commit5ddc3229488f4cad719f47aecfa1459ebbbde5b3 (patch)
treed5aec566617ac815ee4d53d61d03bc808173a240 /drivers/usb
parent606135a3081e045b677cde164a296c51f66c4633 (diff)
HID blacklisting of all Code Mercenaries IOWarrior devices
Put all Code Mercenaries (VID 0x07c0) IOWarriors (PIDs 0x1500 to 0x15ff) on the HID blacklist. The range of PIDs has been reserved for IOWarriors. Only 5 PIDs are really used yet. Signed-off-by: Robert Marquardt <marquardt@codemercs.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Diffstat (limited to 'drivers/usb')
-rw-r--r--drivers/usb/input/hid-core.c21
1 files changed, 10 insertions, 11 deletions
diff --git a/drivers/usb/input/hid-core.c b/drivers/usb/input/hid-core.c
index ef09952f2039..8e86c3c6dc04 100644
--- a/drivers/usb/input/hid-core.c
+++ b/drivers/usb/input/hid-core.c
@@ -689,10 +689,8 @@ void usbhid_init_reports(struct hid_device *hid)
689#define USB_DEVICE_ID_SMARTJOY_DUAL_PLUS 0x8802 689#define USB_DEVICE_ID_SMARTJOY_DUAL_PLUS 0x8802
690 690
691#define USB_VENDOR_ID_CODEMERCS 0x07c0 691#define USB_VENDOR_ID_CODEMERCS 0x07c0
692#define USB_DEVICE_ID_CODEMERCS_IOW40 0x1500 692#define USB_DEVICE_ID_CODEMERCS_IOW_FIRST 0x1500
693#define USB_DEVICE_ID_CODEMERCS_IOW24 0x1501 693#define USB_DEVICE_ID_CODEMERCS_IOW_LAST 0x15ff
694#define USB_DEVICE_ID_CODEMERCS_IOW48 0x1502
695#define USB_DEVICE_ID_CODEMERCS_IOW28 0x1503
696 694
697#define USB_VENDOR_ID_DELORME 0x1163 695#define USB_VENDOR_ID_DELORME 0x1163
698#define USB_DEVICE_ID_DELORME_EARTHMATE 0x0100 696#define USB_DEVICE_ID_DELORME_EARTHMATE 0x0100
@@ -788,10 +786,6 @@ static const struct hid_blacklist {
788 { USB_VENDOR_ID_AIRCABLE, USB_DEVICE_ID_AIRCABLE1, HID_QUIRK_IGNORE }, 786 { USB_VENDOR_ID_AIRCABLE, USB_DEVICE_ID_AIRCABLE1, HID_QUIRK_IGNORE },
789 { USB_VENDOR_ID_ALCOR, USB_DEVICE_ID_ALCOR_USBRS232, HID_QUIRK_IGNORE }, 787 { USB_VENDOR_ID_ALCOR, USB_DEVICE_ID_ALCOR_USBRS232, HID_QUIRK_IGNORE },
790 { USB_VENDOR_ID_BERKSHIRE, USB_DEVICE_ID_BERKSHIRE_PCWD, HID_QUIRK_IGNORE }, 788 { USB_VENDOR_ID_BERKSHIRE, USB_DEVICE_ID_BERKSHIRE_PCWD, HID_QUIRK_IGNORE },
791 { USB_VENDOR_ID_CODEMERCS, USB_DEVICE_ID_CODEMERCS_IOW40, HID_QUIRK_IGNORE },
792 { USB_VENDOR_ID_CODEMERCS, USB_DEVICE_ID_CODEMERCS_IOW24, HID_QUIRK_IGNORE },
793 { USB_VENDOR_ID_CODEMERCS, USB_DEVICE_ID_CODEMERCS_IOW48, HID_QUIRK_IGNORE },
794 { USB_VENDOR_ID_CODEMERCS, USB_DEVICE_ID_CODEMERCS_IOW28, HID_QUIRK_IGNORE },
795 { USB_VENDOR_ID_CYPRESS, USB_DEVICE_ID_CYPRESS_HIDCOM, HID_QUIRK_IGNORE }, 789 { USB_VENDOR_ID_CYPRESS, USB_DEVICE_ID_CYPRESS_HIDCOM, HID_QUIRK_IGNORE },
796 { USB_VENDOR_ID_CYPRESS, USB_DEVICE_ID_CYPRESS_ULTRAMOUSE, HID_QUIRK_IGNORE }, 790 { USB_VENDOR_ID_CYPRESS, USB_DEVICE_ID_CYPRESS_ULTRAMOUSE, HID_QUIRK_IGNORE },
797 { USB_VENDOR_ID_DELORME, USB_DEVICE_ID_DELORME_EARTHMATE, HID_QUIRK_IGNORE }, 791 { USB_VENDOR_ID_DELORME, USB_DEVICE_ID_DELORME_EARTHMATE, HID_QUIRK_IGNORE },
@@ -1052,9 +1046,14 @@ static struct hid_device *usb_hid_configure(struct usb_interface *intf)
1052 int n, len, insize = 0; 1046 int n, len, insize = 0;
1053 struct usbhid_device *usbhid; 1047 struct usbhid_device *usbhid;
1054 1048
1055 /* Ignore all Wacom devices */ 1049 /* Ignore all Wacom devices */
1056 if (le16_to_cpu(dev->descriptor.idVendor) == USB_VENDOR_ID_WACOM) 1050 if (le16_to_cpu(dev->descriptor.idVendor) == USB_VENDOR_ID_WACOM)
1057 return NULL; 1051 return NULL;
1052 /* ignore all Code Mercenaries IOWarrior devices */
1053 if (le16_to_cpu(dev->descriptor.idVendor) == USB_VENDOR_ID_CODEMERCS)
1054 if (le16_to_cpu(dev->descriptor.idProduct) >= USB_DEVICE_ID_CODEMERCS_IOW_FIRST &&
1055 le16_to_cpu(dev->descriptor.idProduct) <= USB_DEVICE_ID_CODEMERCS_IOW_LAST)
1056 return NULL;
1058 1057
1059 for (n = 0; hid_blacklist[n].idVendor; n++) 1058 for (n = 0; hid_blacklist[n].idVendor; n++)
1060 if ((hid_blacklist[n].idVendor == le16_to_cpu(dev->descriptor.idVendor)) && 1059 if ((hid_blacklist[n].idVendor == le16_to_cpu(dev->descriptor.idVendor)) &&