]> git.baikalelectronics.ru Git - kernel.git/commit
HID: fix hiddev's use of usb_find_interface
authorGuillaume Chazarain <guichaz@gmail.com>
Sun, 12 Sep 2010 19:32:35 +0000 (21:32 +0200)
committerJiri Kosina <jkosina@suse.cz>
Tue, 14 Sep 2010 08:58:42 +0000 (10:58 +0200)
commit9da7aefc391f09f177dc17d5c47325208685d4df
tree5ea43ef68b67db49e08f368be5c7504de3ecc70e
parent3deac2019e2dce8a835a6363803bc133d8b75bc8
HID: fix hiddev's use of usb_find_interface

My macbook infrared remote control was broken by commit
773bff848eb3c19924ab8645949f525ce27be5fc ("HID: hiddev: use
usb_find_interface, get rid of BKL").

This device appears in dmesg as:
apple 0003:05AC:8242.0001: hiddev0,hidraw0: USB HID v1.11 Device
[Apple Computer, Inc. IR Receiver] on usb-0000:00:1d.2-1/input0

It stopped working as lircd was getting ENODEV when opening /dev/usb/hiddev0.

AFAICS hiddev_driver is a dummy driver so usb_find_interface(&hiddev_driver)
does not find anything.

The device is associated with the usbhid driver, so let's do
usb_find_interface(&hid_driver) instead.

$ ls -l /sys/devices/pci0000:00/0000:00:1d.2/usb7/7-1/7-1:1.0/usb/hiddev0/device/driver
lrwxrwxrwx 1 root root 0 2010-09-12 16:28 /sys/devices/pci0000:00/0000:00:1d.2/usb7/7-1/7-1:1.0/usb/hiddev0/device/driver -> ../../../../../../bus/usb/drivers/usbhid

Signed-off-by: Guillaume Chazarain <guichaz@gmail.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
drivers/hid/usbhid/hid-core.c
drivers/hid/usbhid/hiddev.c
drivers/hid/usbhid/usbhid.h