[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <alpine.LRH.1.10.0811012122250.19257@twin.jikos.cz>
Date: Sat, 1 Nov 2008 21:26:23 +0100 (CET)
From: Jiri Kosina <jkosina@...e.cz>
To: Adam Nielsen <a.nielsen@...kadi.net>
cc: LKML Mailinglist <linux-kernel@...r.kernel.org>
Subject: Re: 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
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists