Re: USBHID bug, claiming all devices, ignoring quirks.

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

 



Jiri Slaby wrote:
> On 08/05/2009 10:23 AM, Galtor wrote:
>> Hi all.
> 
> Hi, you should have posted this at least to the input mailing list.
> 
>> I have a Antec Veris USB IR receiver, with USB ID 15c2:0043,
>> identifying itself as "SoundGraph iMON MultiMedia IR/Display". Below
>> is the ls -vvv.
>>
>> In 2.6.30.4 kernel source this device is in hid_ignore_list[] :
>>
>> ... hid-core.c ...
>>  { HID_USB_DEVICE(USB_VENDOR_ID_SOUNDGRAPH,
>> USB_DEVICE_ID_SOUNDGRAPH_IMON_LCD3) },
>> ...
> 
> I see
> #define USB_DEVICE_ID_SOUNDGRAPH_IMON_LCD3      0x0034
> but you have 0x43.
> 
> I suppose it doesn't work with the generic hid driver?

If it is in any way similar to 0x0038 that I have (and looking at LIRC
driver, its likely), only partially. Some remote buttons get delivered
to the first interface as standard hid input events. However, others are
delivered to the second interface as vendor-defined reports.

>> But the usbhid is ignoring the list and claiming for the device:
>>
>> ...dmesg...
>> [ 3366.731928] usbcore: registered new interface driver hiddev
>> [ 3366.745603] input: HID 15c2:0043 as
>> /devices/pci0000:00/0000:00:04.0/usb3/3-3/3-3:1.0/input/input3
>> [ 3366.746195] generic-usb 0003:15C2:0043.000D: input,hidraw0: USB HID
>> v1.01 Mouse [HID 15c2:0043] on usb-0000:00:04.0-3/input0
>> [ 3366.759332] generic-usb 0003:15C2:0043.000E: hiddev96,hidraw1: USB
>> HID v1.00 Device [HID 15c2:0043] on usb-0000:00:04.0-3/input1
>> [ 3366.759416] usbcore: registered new interface driver usbhid
>> ...
>>
>> Using "quirks" module parameter changes the behavior in dmesg:
>>
>> ...dmesg...
>> [ 5180.060952] usbcore: registered new interface driver hiddev
>> [ 5180.061211] usbcore: registered new interface driver usbhid
>> [ 5180.061220] usbhid: v2.6:USB HID core driver
>> ...
>>
>> but the driver is claiming for the device anyway:
>>
>> ...ls /sys/bus/usb/drivers/usbhid/...
>> 3-3:1.0  3-3:1.1  bind  module  new_id  uevent  unbind
>> ...
>>
>> The only "fix" i have is to load the lirc_imon driver before the
>> usbhid driver to get all hardware correctly initialized
>>
>> Any ideas of what's happening?
>>
>> Best regards.
>>
>> -- Galtor
>>
>> -----------------------------------------------
>>
>> Bus 003 Device 002: ID 15c2:0043 SoundGraph Inc.
>> Device Descriptor:
>>   bLength                18
>>   bDescriptorType         1
>>   bcdUSB               1.10
>>   bDeviceClass            0 (Defined at Interface level)
>>   bDeviceSubClass         0
>>   bDeviceProtocol         0
>>   bMaxPacketSize0         8
>>   idVendor           0x15c2 SoundGraph Inc.
>>   idProduct          0x0043
>>   bcdDevice            0.02
>>   iManufacturer           0
>>   iProduct                0
>>   iSerial                 0
>>   bNumConfigurations      1
>>   Configuration Descriptor:
>>     bLength                 9
>>     bDescriptorType         2
>>     wTotalLength           59
>>     bNumInterfaces          2
>>     bConfigurationValue     1
>>     iConfiguration          0
>>     bmAttributes         0x80
>>       (Bus Powered)
>>     MaxPower              100mA
>>     Interface Descriptor:
>>       bLength                 9
>>       bDescriptorType         4
>>       bInterfaceNumber        0
>>       bAlternateSetting       0
>>       bNumEndpoints           1
>>       bInterfaceClass         3 Human Interface Device
>>       bInterfaceSubClass      0 No Subclass
>>       bInterfaceProtocol      2 Mouse
>>       iInterface              0
>>       ** UNRECOGNIZED:  09 21 01 01 00 01 22 79 00
>>       Endpoint Descriptor:
>>         bLength                 7
>>         bDescriptorType         5
>>         bEndpointAddress     0x81  EP 1 IN
>>         bmAttributes            3
>>           Transfer Type            Interrupt
>>           Synch Type               None
>>           Usage Type               Data
>>         wMaxPacketSize     0x0008  1x 8 bytes
>>         bInterval              10
>>     Interface Descriptor:
>>       bLength                 9
>>       bDescriptorType         4
>>       bInterfaceNumber        1
>>       bAlternateSetting       0
>>       bNumEndpoints           1
>>       bInterfaceClass         3 Human Interface Device
>>       bInterfaceSubClass      0 No Subclass
>>       bInterfaceProtocol      0 None
>>       iInterface              0
>>       ** UNRECOGNIZED:  09 21 00 01 00 01 22 32 00
>>       Endpoint Descriptor:
>>         bLength                 7
>>         bDescriptorType         5
>>         bEndpointAddress     0x82  EP 2 IN
>>         bmAttributes            3
>>           Transfer Type            Interrupt
>>           Synch Type               None
>>           Usage Type               Data
>>         wMaxPacketSize     0x0008  1x 8 bytes
>>         bInterval              10
>> Device Status:     0x0002
>>   (Bus Powered)
>>   Remote Wakeup Enabled
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-input" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 


-- 
Anssi Hannula
--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Media Devel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Linux Wireless Networking]     [Linux Omap]

  Powered by Linux