Hi Jiri, Henrik, On 04/23/2012 12:27 AM, Jiri Kosina wrote: > On Sun, 22 Apr 2012, Henrik Rydberg wrote: > >> This patchset contains a resolution to the problem with >> driver-specific modification of the report descriptor. The core of the >> problem lies with the dual semantics of hid_parse_report(), which is >> therefore split into two functions. As a consequence, the hid core can >> handle the rebind case internally, with no changes to the >> drivers. Out-of-tree drivers will work fine as long as they operate in >> the same way as the in-kernel drivers. >> >> The first two patches are bug fixes found in the process. I am hoping >> for some test feedback on those. The third patch is the main one. > > Hi Henrik, > > thanks a lot for looking into this. I will look into the patches in more > detail tomorrow. I am now just adding Nikolai to CC, as he was the first > one to bring this up and actually has a driver that exposed the fact that > just freeing/reinstatiating rdesc is not enough. I've managed to throw together a script which rebinds a device to a specific out-of-tree HID driver automatically. Please find it attached. I'll be bundling it with the modules, probably. I'm planning to use it with udev rules looking like this one: SUBSYSTEM=="hid", ACTION=="add", ENV{HID_ID}=="0003:0000172F:*", \ RUN+="/usr/local/bin/digimend-rebind" So, the out-of-tree HID module problem is finally solved, at least for my current uses. Thanks a lot! Sincerely, Nick