On Sat, 20 Jan 2007, Ivan Ukhov wrote:No, it won't do. Imagine that I'm not able to modify the kernel with its drivers. It should work with usual kernel and HID driver. So I want my driver to ask the HID driver to free the interfaces or don't claim them at all. Mb there's an example of such a driver?.. obviously there are a lot of HID devices and mb a vendor one of them doesn't want to use HID driver for one of its interfaces to provide some additional features or something, so he should make the kernel use his driver instead of HID...
I'm writing a driver for an USB device that has one configuration with several interfacies and one of them is a HID interface. So when I check this interface whether it's claimed (usb_interface_claimed), I find out that it is, and it's claimed by the HID driver. So here is the question: how can I ask the HID driver to unclaim this very interface for me so that I can use it? The HID driver is needed for some other devices, so I can't just rmmod it.
Hi Ivan,
if I understand correctly what you need, wouldn't setting the HID_QUIRK_IGNORE for a given tuple of idVendor and idProduct be enough? (see hid_blacklist[] in drivers/usb/input/hid-core.c).