From: Alan Ott <alan@signal11.us>
To: Jiri Kosina <jkosina@suse.cz>
Cc: linux-input@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH 0/1] HID: Report Descriptor in Sysfs
Date: Fri, 21 Jan 2011 11:57:25 -0500 [thread overview]
Message-ID: <4D39BAF5.9010506@signal11.us> (raw)
In-Reply-To: <alpine.LNX.2.00.1101211714050.5725@pobox.suse.cz>
On 01/21/2011 11:14 AM, Jiri Kosina wrote:
> On Fri, 21 Jan 2011, Alan Ott wrote:
>
>
>> Well, what I really want is the Usage Page and Usage of the device. For some
>> background, I maintain a library called hidapi[1] for accessing HID devices in
>> a cross platform way. There are currently four backends, Linux-hidraw,
>> Linux-libusb, Mac OS, and Windows.
>>
>> I've recently received requests for supporting composite HID devices. Since a
>> composite device will show up as multiple devices with the same VID/PID, one
>> needs a way to differentiate between its different interfaces. On Windows and
>> Mac, the platform HID libraries support getting the Usage Page and Usage of
>> each interface. On Linux/libusb I can request the HID report descriptor and
>> parse it myself, but I have to claim the interface to do it, and to do that, I
>> have to detach the kernel driver. Needless to say, detaching the kernel driver
>> is not good, especially when the library is supposed to be just scanning for
>> devices.
>>
>> For these reasons, it would be really convenient to get the report descriptor
>> from sysfs.
>>
> In this case, you can still get the report descriptor from hidraw (which
> is parallel to any other HID-bus based kernel driver). Woudl that suit
> your needs?
>
>
Not exactly, because not all HID devices have a hidraw interface
(because some are blacklisted). These devices are still accessible
through libusb. Plus, getting it from hidraw involves having permissions
to open the device[1]. Maybe that's less of a limitation, but since I
can get everything else from sysfs (vid/pid, strings, device version),
it seemed to make sense to me to have the hid report descriptor in the
same place.
Again, if I'm completely wrong about how I should be going about this,
just let me know.
Alan.
[1] Last year, I suggested adding some interfaces to hidraw to get
things like the serial number, and it was suggested to me on
linux-usb[2] that I use sysfs (through libudev) instead. I extrapolated
that the proper paradigm was to use sysfs to get information about the
device, and to use the device node itself to actually communicate with
the device. I could be wrong again.
[2] I didn't realize at the time that I really should have asked on
linux-input instead of linux-usb.
next prev parent reply other threads:[~2011-01-21 16:57 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-01-21 6:19 [PATCH 0/1] HID: Report Descriptor in Sysfs Alan Ott
2011-01-21 6:19 ` [PATCH 1/1] hid: Add HID Report Descriptor to sysfs Alan Ott
2011-01-22 13:55 ` Greg KH
2011-01-23 22:35 ` [PATCH v2 0/1] HID: Report Descriptor in Sysfs Alan Ott
2011-01-23 22:35 ` [PATCH v2 1/1] hid: Add HID Report Descriptor to sysfs Alan Ott
2011-01-23 22:59 ` Greg KH
2011-01-24 0:36 ` [PATCH v3 0/1] HID: Report Descriptor in Sysfs Alan Ott
2011-01-24 0:36 ` [PATCH v3 1/1] hid: Add HID Report Descriptor to sysfs Alan Ott
2011-01-24 3:50 ` [PATCH v4 0/1] HID: Report Descriptor in Sysfs Alan Ott
2011-01-24 3:50 ` Alan Ott
2011-02-16 4:11 ` Alan Ott
2011-02-17 12:26 ` Jiri Kosina
2011-01-24 3:50 ` [PATCH v4 1/1] hid: Add HID Report Descriptor to sysfs Alan Ott
2011-01-24 3:50 ` Alan Ott
2011-02-17 12:55 ` Antonio Ospite
2011-01-21 9:59 ` [PATCH 0/1] HID: Report Descriptor in Sysfs Jiri Kosina
2011-01-21 14:52 ` Alan Ott
2011-01-21 15:09 ` Jiri Kosina
2011-01-21 15:29 ` Alan Ott
2011-01-21 16:14 ` Jiri Kosina
2011-01-21 16:57 ` Alan Ott [this message]
2011-01-21 20:03 ` Nikolai Kondrashov
2011-01-24 15:17 ` Jiri Kosina
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4D39BAF5.9010506@signal11.us \
--to=alan@signal11.us \
--cc=jkosina@suse.cz \
--cc=linux-input@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.