Thread (1 message) 1 message, 1 author, 2009-11-28

Re: [Bugme-new] [Bug 13411] New: Barscanner (USB HID Keyboard) stopped functioning in kernels >= 2.6.28

From: Guido Dorssers <hidden>
Date: 2009-11-28 21:51:28

Possibly related (same subject, not in this thread)

Op dinsdag 2 juni 2009 11:55:51 schreef Jiri Kosina:
This is almost certainly because of this commit:

	commit d1d3a5f6eaee337d793ab9ac28e696f0262c3c8a
	Author: Remi Cattiau [off-list ref]
	Date:   Tue Sep 9 01:39:33 2008 +0200

	    HID: ignore iBuddy devices

	    iBuddy devices claim to be HID devices, but they are not.
	    Add them to the blacklist.

	    Signed-off-by: Remi Cattiau [off-list ref]
	    Signed-off-by: Jiri Kosina [off-list ref]

The problem apparently [1] is, that the vendor has been super-creative and
assigned the same combination of idVendor/idProduct to completely
different devices. Oh well.

Remi, could you please check your device against the lsusb data provided
in bugzilla to check whether there is any possibility to distinguish these
devices, so that we could put some ugly check in place probably?

Thanks.

[1] http://lkml.org/lkml/2009/2/10/434
Hi all,
 
A belated thanks for having pointed me into the right direction to get my 
barcodescanner operational. However, as a thought since the bug is still 
present, why not solve it with something as simple as making the blacklisting 
user-configurable instead of blacklisting valid HID devices on purpose?

As an example of what I mean:


diff -urNb drivers/hid/hid-core.c drivers/hid/hid-core.c
--- drivers/hid/hid-core.c      2009-10-17 22:22:12.589447000 +0200
+++ drivers/hid/hid-core.c      2009-10-17 23:01:38.130911398 +0200
@@ -1627,7 +1627,9 @@
        { HID_USB_DEVICE(USB_VENDOR_ID_SOUNDGRAPH, 
USB_DEVICE_ID_SOUNDGRAPH_IMON_LCD3) },
        { HID_USB_DEVICE(USB_VENDOR_ID_SOUNDGRAPH, 
USB_DEVICE_ID_SOUNDGRAPH_IMON_LCD4) },
        { HID_USB_DEVICE(USB_VENDOR_ID_SOUNDGRAPH, 
USB_DEVICE_ID_SOUNDGRAPH_IMON_LCD5) },
+#if defined(CONFIG_HID_BLACKLIST_TENX_IBUDDY)
        { HID_USB_DEVICE(USB_VENDOR_ID_TENX, USB_DEVICE_ID_TENX_IBUDDY1) },
        { HID_USB_DEVICE(USB_VENDOR_ID_TENX, USB_DEVICE_ID_TENX_IBUDDY2) },
+#endif
        { HID_USB_DEVICE(USB_VENDOR_ID_VERNIER, USB_DEVICE_ID_VERNIER_LABPRO) 
},
        { HID_USB_DEVICE(USB_VENDOR_ID_VERNIER, USB_DEVICE_ID_VERNIER_GOTEMP) 
},
diff -urNb drivers/hid/Kconfig drivers/hid/Kconfig
--- drivers/hid/Kconfig 2009-09-10 00:13:59.000000000 +0200
+++ drivers/hid/Kconfig 2009-10-17 23:04:23.538908607 +0200
@@ -31,6 +31,24 @@

          If unsure, say Y.

+config HID_BLACKLIST_TENX_IBUDDY
+       bool "Blacklist i-Buddy devices"
+       depends on HID
+       default n
+       ---help---
+       Barcode scanners using idVendor 1130 and idProduct 0001 were 
blacklisted
+       at the HID core level per September 9, 01:39:33, 2008. This because
+       i-Buddy devices claim to be HID devices, while not being so.
+       Unfortunately, the vendor has been super-creative and assigned the 
same
+       combination of idVendor/idProduct to completely different devices. 
Therefore,
+       blacklisting the i-Buddy as a HID device also blacklists several 
brands of
+       barcode scanners. Since blacklisting the i-Buddy by default will mean
+       blacklisting valid HID devices as well, it is now a configurable 
option.
+
+       If unsure, say N.
+       Unless of course you own an i-Buddy, say Y.
+
+
 config HID_DEBUG
        bool "HID debugging support"
        default y


Just my two cents for getting a working solution. :)

Tnx,
Regards,

Guido

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help