diff options
author | Jiri Kosina <jkosina@suse.cz> | 2007-06-18 17:41:14 +0200 |
---|---|---|
committer | Jiri Kosina <jkosina@suse.cz> | 2007-07-09 14:13:33 +0200 |
commit | b8e98f1c47b743e56f8ebe21006199cefd577ce5 (patch) | |
tree | 3fd6ecb2ab9a6518738309c54aca15b247d4e5bc | |
parent | 92d9e6e607eb7f8f1d2a43935f45cf300cf6fdf8 (diff) | |
download | linux-b8e98f1c47b743e56f8ebe21006199cefd577ce5.tar.gz linux-b8e98f1c47b743e56f8ebe21006199cefd577ce5.tar.bz2 linux-b8e98f1c47b743e56f8ebe21006199cefd577ce5.zip |
HID: Add NOGET quirk for all NCR devices
Devices manufactured by NCR have userspace hiddev-based drivers,
which do all the necessary device querying by themselves. The devices
must not be queried directly by the generic HID driver, as reported by
NCR engineers.
Cc: Petr Ostadal <postadal@suse.cz>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
-rw-r--r-- | drivers/hid/usbhid/hid-quirks.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/hid/usbhid/hid-quirks.c b/drivers/hid/usbhid/hid-quirks.c index ad8a4ac8e43c..a78f5187b6ef 100644 --- a/drivers/hid/usbhid/hid-quirks.c +++ b/drivers/hid/usbhid/hid-quirks.c @@ -215,6 +215,10 @@ #define USB_VENDOR_ID_MICROSOFT 0x045e #define USB_DEVICE_ID_SIDEWINDER_GV 0x003b +#define USB_VENDOR_ID_NCR 0x0404 +#define USB_DEVICE_ID_NCR_FIRST 0x0300 +#define USB_DEVICE_ID_NCR_LAST 0x03ff + #define USB_VENDOR_ID_NEC 0x073e #define USB_DEVICE_ID_NEC_USB_GAME_PAD 0x0301 @@ -688,6 +692,12 @@ u32 usbhid_lookup_quirk(const u16 idVendor, const u16 idProduct) idProduct <= USB_DEVICE_ID_CODEMERCS_IOW_LAST) return HID_QUIRK_IGNORE; + /* NCR devices must not be queried for reports */ + if (idVendor == USB_VENDOR_ID_NCR && + idProduct >= USB_DEVICE_ID_NCR_FIRST && + idProduct <= USB_DEVICE_ID_NCR_LAST) + return HID_QUIRK_NOGET; + down_read(&dquirks_rwsem); bl_entry = usbhid_exists_dquirk(idVendor, idProduct); if (!bl_entry) |