lkml.org 
[lkml]   [2008]   [Nov]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: Can you use the USB HID interface within a driver?
On Sat, 1 Nov 2008, Adam Nielsen wrote:

> I would rather write the driver in kernel space (so that it "just works"
> and provides a hwmon interface without installing extra software),
> however the device already appears to the system as a USB HID device,
> and so gets claimed by the existing usbhid driver.

There is a long blacklist/ignorelist in the usbhid driver, for the VID/PID
combinations that we don't want to have claimed by usbhid driver, because
there is a more specific one.

> Is there any way to interface with the HID driver from within another
> driver? Or will I have to claim the device first (or disconnect usbhid),
> and communicate with it myself?
> I've tried to find some example code from a driver that already does this
> (such as a USB keyboard driver) but I'm having some trouble finding one! The
> closest drivers I can find are all the ones in drivers/hid/usbhid, but they
> all seem to be "embedded" in hid-core.c. Does that mean I need to modify
> hid-core.c to call my driver?

For 2.6.28, the HID code has been completely refactored, and converted
into a proper bus, making it possible to write driver easily in a way that
the driver implements only parts where device deviates from the HID
standard, and lets the rest to be handled by generic code. I guess this is
what you are looking for?

Please look at drivers/hid in 2.6.28-rc1 or newer. There are quite a
couple of drivers already using this new infrastructure.

If you have any further questions, I'll be happy to help you, but I will
be completely offline until 11th November, sorry.

Hope this helps,

--
Jiri Kosina
SUSE Labs



\
 
 \ /
  Last update: 2008-11-01 21:29    [from the cache]
©2003-2011 Jasper Spaans